Merge remote-tracking branch 'rhh/upcoming' into secondary_effects_overhaul_rebase
@ -23,15 +23,12 @@ body:
|
||||
label: Version
|
||||
description: What version of pokeemerald-expansion are you using as a base?
|
||||
options:
|
||||
- 1.6.2 (Default)
|
||||
- 1.7.0 (Default)
|
||||
- upcoming (Edge)
|
||||
- 1.6.2
|
||||
- 1.6.1
|
||||
- 1.6.0
|
||||
- 1.5.3
|
||||
- 1.5.2
|
||||
- 1.5.1
|
||||
- 1.5.0
|
||||
- pre-1.5.0
|
||||
- pre-1.6.0
|
||||
validations:
|
||||
required: true
|
||||
- type: input
|
||||
|
||||
@ -23,15 +23,12 @@ body:
|
||||
label: Version
|
||||
description: What version of pokeemerald-expansion are you using as a base?
|
||||
options:
|
||||
- 1.6.2 (Default)
|
||||
- 1.7.0 (Default)
|
||||
- upcoming (Edge)
|
||||
- 1.6.2
|
||||
- 1.6.1
|
||||
- 1.6.0
|
||||
- 1.5.3
|
||||
- 1.5.2
|
||||
- 1.5.1
|
||||
- 1.5.0
|
||||
- pre-1.5.0
|
||||
- pre-1.6.0
|
||||
validations:
|
||||
required: true
|
||||
- type: input
|
||||
|
||||
9
.github/ISSUE_TEMPLATE/04_other_errors.yaml
vendored
@ -23,15 +23,12 @@ body:
|
||||
label: Version
|
||||
description: What version of pokeemerald-expansion are you using as a base?
|
||||
options:
|
||||
- 1.6.2 (Default)
|
||||
- 1.7.0 (Default)
|
||||
- upcoming (Edge)
|
||||
- 1.6.2
|
||||
- 1.6.1
|
||||
- 1.6.0
|
||||
- 1.5.3
|
||||
- 1.5.2
|
||||
- 1.5.1
|
||||
- 1.5.0
|
||||
- pre-1.5.0
|
||||
- pre-1.6.0
|
||||
validations:
|
||||
required: true
|
||||
- type: input
|
||||
|
||||
5
.github/pull_request_template.md
vendored
@ -11,6 +11,9 @@
|
||||
<!-- Format: "Fixes #2345, fixes #4523, fixes #2222." -->
|
||||
<!-- If it doesn't apply, feel free to remove this section. -->
|
||||
|
||||
## Feature(s) this PR does NOT handle:
|
||||
<!-- If your PR contains any unfinished features that are not considered merge-blocking, please list them here for clarity so no one can forget. -->
|
||||
|
||||
## **Discord contact info**
|
||||
<!--- formatted as name#numbers, e.g. Lunos#4026 -->
|
||||
<!--- Contributors must join https://discord.gg/6CzjAG6GZk -->
|
||||
<!--- Contributors must join https://discord.gg/6CzjAG6GZk -->
|
||||
|
||||
1
.gitignore
vendored
@ -21,7 +21,6 @@ sound/**/*.bin
|
||||
sound/songs/midi/*.s
|
||||
tools/agbcc
|
||||
*.map
|
||||
*.ld
|
||||
*.bat
|
||||
*.dump
|
||||
*.sa*
|
||||
|
||||
123
CHANGELOG.md
@ -1,122 +1,5 @@
|
||||
# Pokeemerald-Expansion Changelog
|
||||
# Pokeemerald-Expansion Changelogs
|
||||
|
||||
# Version 1.6.2
|
||||
## [Version 1.7.0](docs/changelogs/1.7.0.md) - Feature Release
|
||||
|
||||
## 🌋 *IMPORTANT CHANGES* 🌋
|
||||
### Battle changes
|
||||
* Battler Types are now obtained via `GetBattlerType` instead of `gBattleMons[battlerId].type1/2/3` to better consider Roost. Be sure to update your custom battle effects to account for this change.
|
||||
|
||||
## 🧬 General 🧬
|
||||
### Fixed
|
||||
* Fixed Cheat Start not initiating time-based events by @AsparagusEduardo in https://github.com/rh-hideout/pokeemerald-expansion/pull/3446
|
||||
|
||||
## 🐉 Pokémon 🐉
|
||||
### Changed
|
||||
* Updated Cresselia's base stats to Gen 9 by @LOuroboros in https://github.com/rh-hideout/pokeemerald-expansion/pull/3419
|
||||
* Updated Zacian/Zamazenta base stats to Gen 9 by @AsparagusEduardo in https://github.com/rh-hideout/pokeemerald-expansion/pull/3421
|
||||
### Fixed
|
||||
* Fixed Kleavor, Hisuian Sneasel and Sneasler missing their SV abilities by @LOuroboros in https://github.com/rh-hideout/pokeemerald-expansion/pull/3391
|
||||
* Fixed Bergmite/Avalugg old and updated egg groups being switched by @AsparagusEduardo in https://github.com/rh-hideout/pokeemerald-expansion/pull/3380
|
||||
|
||||
## 🤹 Moves 🤹
|
||||
### Changed
|
||||
* Quick Draw now uses weighted RNG by @Bassoonian in https://github.com/rh-hideout/pokeemerald-expansion/pull/3399
|
||||
* Added `IS_BATTLER_TYPELESS` macro that checks if the specified battler has no valid type by @LOuroboros in https://github.com/rh-hideout/pokeemerald-expansion/pull/3303
|
||||
### Fixed
|
||||
* Fixed Protect failing if the user flinched on the previous turn by @DizzyEggg in https://github.com/rh-hideout/pokeemerald-expansion/pull/3345
|
||||
* Fixed entry hazards not working properly being cleared on switch-in by @DizzyEggg in https://github.com/rh-hideout/pokeemerald-expansion/pull/3316
|
||||
* This includes Toxic Spikes not working if Pecha Berry actived on the previous turn.
|
||||
* Fixed Roost overwriting other type changing at the end of the turn (Soak, Forest's Curse, Color Change, etc.) by @BLourenco in https://github.com/rh-hideout/pokeemerald-expansion/pull/3258
|
||||
* Now it suppresses the user's Flying-type rather than remove and re-add it.
|
||||
* Fixes Salt Cure visual bug if mon fainted by direct attack by @AlexOn1ine in https://github.com/rh-hideout/pokeemerald-expansion/pull/3388
|
||||
* Fixed Purifying Salt not preventing the use of Rest by @Bassoonian in https://github.com/rh-hideout/pokeemerald-expansion/pull/3399
|
||||
* Fixed Make it Rain lowering Sp. Attack twice if hitting 2 targets in double battles by @AlexOn1ine in https://github.com/rh-hideout/pokeemerald-expansion/pull/3441
|
||||
* Fixed Reflect Type not properly handle 3rd types by @LOuroboros in https://github.com/rh-hideout/pokeemerald-expansion/pull/3303
|
||||
* Fixed form change triggered by switching not occuring when using moves like U-Turn or Baton Pass by @AlexOn1ine in https://github.com/rh-hideout/pokeemerald-expansion/pull/3463
|
||||
* Fixed Last Resort not counting Sleep Talk as used for its effect by @DizzyEggg in https://github.com/rh-hideout/pokeemerald-expansion/pull/3378
|
||||
|
||||
## 🎭 Abilities 🎭
|
||||
### Changed
|
||||
* Removed unused `STATUS3_CANT_SCORE_A_CRIT` by @AlexOn1ine in https://github.com/rh-hideout/pokeemerald-expansion/pull/3377
|
||||
* Moved Beads of Ruin and Sword of Ruin damage to the appropiate damage modifier functions by @kittenchilly in https://github.com/rh-hideout/pokeemerald-expansion/pull/3415
|
||||
### Fixed
|
||||
* Fixed Intimidate increasing the attack of both opponents if one of them has Contrary in double battles by @DizzyEggg in https://github.com/rh-hideout/pokeemerald-expansion/pull/3365
|
||||
* Fixed Battle/Shell Armor not preventing critical hits by @AlexOn1ine in https://github.com/rh-hideout/pokeemerald-expansion/pull/3377
|
||||
* Fixed Rivalry's effect being reversed by @AsparagusEduardo in https://github.com/rh-hideout/pokeemerald-expansion/pull/3381
|
||||
* Fixed Rivalry lowering attack if either attacker or target were genderless by @AsparagusEduardo in https://github.com/rh-hideout/pokeemerald-expansion/pull/3381
|
||||
* Fixed missing Poison Heal Ability Popup by @Bassoonian in https://github.com/rh-hideout/pokeemerald-expansion/pull/3385
|
||||
* Fixed Parental Bond not working at all by @AsparagusEduardo in https://github.com/rh-hideout/pokeemerald-expansion/pull/3417
|
||||
* Fixed Beads of Ruin and Sword of Ruin damage modifiers by @kittenchilly in https://github.com/rh-hideout/pokeemerald-expansion/pull/3415
|
||||
* Fixed Sheer Force not negating effects that benefit the user (eg. Flame Charge, Power-Up Punch) by @DizzyEggg in https://github.com/rh-hideout/pokeemerald-expansion/pull/3378
|
||||
* Fixed Strength Sap not healing the user when used on a Substitute by @DizzyEggg in https://github.com/rh-hideout/pokeemerald-expansion/pull/3486
|
||||
* Fixed Substitute showing the "took damage for" message if Strength Sap was used on it by @DizzyEggg in https://github.com/rh-hideout/pokeemerald-expansion/pull/3486
|
||||
* Fixed Weak Armor interrupting Multi Hit moves by @DizzyEggg in https://github.com/rh-hideout/pokeemerald-expansion/pull/3497
|
||||
|
||||
## 🧶 Items 🧶
|
||||
### Fixed
|
||||
* Fixed Shiny Charm doing too many rerolls by default by @kittenchilly in https://github.com/rh-hideout/pokeemerald-expansion/pull/3327
|
||||
* Fixed Berserk Gene activating for the wrong Pokémon double battles by @DizzyEggg in https://github.com/rh-hideout/pokeemerald-expansion/pull/3363
|
||||
* Fixed Red Card not being consumed after opponent Sticky Web activation by @DizzyEggg in https://github.com/rh-hideout/pokeemerald-expansion/pull/3364
|
||||
* Fixed implementation of Gen6 that didn't allow for the Exp Share flag to be set via script without setting the item to the Gen 6+ version by @AsparagusEduardo in https://github.com/rh-hideout/pokeemerald-expansion/pull/3384
|
||||
* Fixed Kee Berry raising defense by 1 stage instead of 2 by @AlexOn1ine in https://github.com/rh-hideout/pokeemerald-expansion/pull/3409
|
||||
* Fixed Kee Berry incorrect stat raise message by @AlexOn1ine in https://github.com/rh-hideout/pokeemerald-expansion/pull/3409
|
||||
* Fixed Razor Fang not being able to be used directly even if `I_USE_EVO_HELD_ITEMS_FROM_BAG` was set to `TRUE` by @fdeblasio in https://github.com/rh-hideout/pokeemerald-expansion/pull/3456
|
||||
|
||||
## 🧹 Cleanup 🧹
|
||||
* `AbilityBattleEffects` uses `B_MSG_TERRAIN` constants for field terrain intro text by @LOuroboros in https://github.com/rh-hideout/pokeemerald-expansion/pull/3410
|
||||
* Removed all trailing whitespace by @kittenchilly in https://github.com/rh-hideout/pokeemerald-expansion/pull/3472
|
||||
|
||||
## 🧪 Test Runner 🧪
|
||||
### Added
|
||||
* Flinch tests by @DizzyEggg in https://github.com/rh-hideout/pokeemerald-expansion/pull/3345
|
||||
* Berserk Gene double battle tests by @DizzyEggg in https://github.com/rh-hideout/pokeemerald-expansion/pull/3363
|
||||
* More specific Toxic Spikes tests by @DizzyEggg in https://github.com/rh-hideout/pokeemerald-expansion/pull/3316
|
||||
* Red Card/Sticky Web test @DizzyEggg in https://github.com/rh-hideout/pokeemerald-expansion/pull/3364
|
||||
* Intimidate/Contrary double battle test by @DizzyEggg in https://github.com/rh-hideout/pokeemerald-expansion/pull/3365
|
||||
* Critical Hit tests by @AlexOn1ine in https://github.com/rh-hideout/pokeemerald-expansion/pull/3377
|
||||
* Roost tests by @BLourenco in https://github.com/rh-hideout/pokeemerald-expansion/pull/3258
|
||||
* Rivalry tests by @AsparagusEduardo in https://github.com/rh-hideout/pokeemerald-expansion/pull/3381
|
||||
* Various tests by @Bassoonian in https://github.com/rh-hideout/pokeemerald-expansion/pull/3385
|
||||
* Defeatist, Dragon's Maw, Earth Eater, Gale Wings, Poison Heal, Rocky Payload, Sap Sipper, Steelworker and Transistor.
|
||||
* Various tests by @Bassoonian in https://github.com/rh-hideout/pokeemerald-expansion/pull/3399
|
||||
* Beast Boost, Ice Scales, Neuroforce, Purifying Salt, Quick Draw and Sharpness.
|
||||
* Berry tests @AlexOn1ine in https://github.com/rh-hideout/pokeemerald-expansion/pull/3409
|
||||
* Full: Apicot, Custap, Ganlon, Jaboca, Kee, Lansat, Liechi, Maranga, Micle, Petaya, Rowap and Salac Berries.
|
||||
* TODO: Starf Berry.
|
||||
* Weather and type-specific tests by @kittenchilly in https://github.com/rh-hideout/pokeemerald-expansion/pull/3260
|
||||
* Full: Freezing, Hail, Moonlight, Morning Sun, Sandstorm, Snow, Solar Beam/Blade, Steel poisoning, Synthesis, Thunder and Weather Ball.
|
||||
* Partial: Prankster, Safety Goggles, Aurora Veil, Hurricane, Leech Seed and OHKO moves.
|
||||
* TODO: Harvest.
|
||||
* Single Parental Bond test by @AsparagusEduardo in https://github.com/rh-hideout/pokeemerald-expansion/pull/3417
|
||||
* Several tests by @DizzyEggg in https://github.com/rh-hideout/pokeemerald-expansion/pull/3378
|
||||
* Full: Weak Armor, Last Resort, Stealth Rock.
|
||||
* Completed Weak Armor tests by @AsparagusEduardo in https://github.com/rh-hideout/pokeemerald-expansion/pull/3493
|
||||
* Partial: Defiant, Sheer Force, White Herb, Strength Sap.
|
||||
### Changed
|
||||
* Red Card tests now check if the item was consumed by @DizzyEggg in https://github.com/rh-hideout/pokeemerald-expansion/pull/3364
|
||||
* Tests now cannot use `i` in their cycles to avoid messing with `PARAMETRIZE` by @mrgriffin in https://github.com/rh-hideout/pokeemerald-expansion/pull/3408
|
||||
* Moved battle tests off the heap by @mrgriffin in https://github.com/rh-hideout/pokeemerald-expansion/pull/3414
|
||||
* Moved Powder/Grass test to `move_flags` folder by @kittenchilly in https://github.com/rh-hideout/pokeemerald-expansion/pull/3260
|
||||
* Continuous `NOT x; NOT y;` are now not allowed in tests due to them not acting as one would expect by @mrgriffin in https://github.com/rh-hideout/pokeemerald-expansion/pull/3459
|
||||
* Test writers should use `NONE_OF { x; y; }` instead.
|
||||
### Fixed
|
||||
* Fixed CreateNPCTrainerPartyForTrainer test failing on modern by @DizzyEggg in https://github.com/rh-hideout/pokeemerald-expansion/pull/3367
|
||||
* Fixed `RNG_CRITICAL_HIT` by @mrgriffin and @AlexOn1ine in https://github.com/rh-hideout/pokeemerald-expansion/pull/3377
|
||||
* Fixed `ASSUMPTIONS` block not working by @DizzyEggg in https://github.com/rh-hideout/pokeemerald-expansion/pull/3368
|
||||
* Fixup by @mrgriffin in https://github.com/rh-hideout/pokeemerald-expansion/pull/3408
|
||||
* Fixed Beads of Ruin and Sword of Ruin damage tests by @kittenchilly in https://github.com/rh-hideout/pokeemerald-expansion/pull/3415
|
||||
* Fixes test RNG by @mrgriffin and @AlexOn1ine in https://github.com/rh-hideout/pokeemerald-expansion/pull/3433
|
||||
* Fixed battle test estimateCost bug by @mrgriffin in https://github.com/rh-hideout/pokeemerald-expansion/pull/3448
|
||||
* Test cleanup and improvements by @AsparagusEduardo in https://github.com/rh-hideout/pokeemerald-expansion/pull/3449
|
||||
* Removed duplicated Prankster TO_DO test.
|
||||
* Corrected Multi-hit test names (4 and 5 hits stated 35% instead of 15%).
|
||||
* Grouped Maranga Berry's Physical vs Special tests using PARAMETRIZE.
|
||||
* Improved Jaboca, Kee and Rowap tests by @AlexOn1ine
|
||||
* Fixed `ModifyPersonalityForNature` by @mrgriffin in https://github.com/rh-hideout/pokeemerald-expansion/pull/3452
|
||||
* Fixed test_runner.c modern warning by @mrgriffin in https://github.com/rh-hideout/pokeemerald-expansion/pull/3451
|
||||
|
||||
## New Contributors
|
||||
* @BLourenco made their first contribution in https://github.com/rh-hideout/pokeemerald-expansion/pull/3258
|
||||
|
||||
## Full Changelog
|
||||
https://github.com/rh-hideout/pokeemerald-expansion/compare/expansion/1.6.1...expansion/1.6.2
|
||||
## [Version 1.6.2](docs/changelogs/1.6.2.md) - Bugfix release
|
||||
|
||||
14
Makefile
@ -146,8 +146,6 @@ ifneq ($(MODERN),1)
|
||||
CPPFLAGS += -I tools/agbcc/include -I tools/agbcc -nostdinc -undef
|
||||
endif
|
||||
|
||||
LDFLAGS = -Map ../../$(MAP)
|
||||
|
||||
SHA1 := $(shell { command -v sha1sum || command -v shasum; } 2>/dev/null) -c
|
||||
GFX := tools/gbagfx/gbagfx$(EXE)
|
||||
AIF := tools/aif2pcm/aif2pcm$(EXE)
|
||||
@ -280,8 +278,7 @@ clean-check-tools:
|
||||
@$(foreach tooldir,$(CHECKTOOLDIRS),$(MAKE) clean -C $(tooldir);)
|
||||
|
||||
mostlyclean: tidynonmodern tidymodern tidycheck
|
||||
rm -f $(SAMPLE_SUBDIR)/*.bin
|
||||
rm -f $(CRY_SUBDIR)/*.bin
|
||||
find sound -iname '*.bin' -exec rm {} +
|
||||
rm -f $(MID_SUBDIR)/*.s
|
||||
find . \( -iname '*.1bpp' -o -iname '*.4bpp' -o -iname '*.8bpp' -o -iname '*.gbapal' -o -iname '*.lz' -o -iname '*.rl' -o -iname '*.latfont' -o -iname '*.hwjpnfont' -o -iname '*.fwjpnfont' \) -exec rm {} +
|
||||
rm -f $(DATA_ASM_SUBDIR)/layouts/layouts.inc $(DATA_ASM_SUBDIR)/layouts/layouts_table.inc
|
||||
@ -466,19 +463,20 @@ endef
|
||||
$(foreach src, $(TEST_SRCS), $(eval $(call TEST_DEP,$(patsubst $(TEST_SUBDIR)/%.c,$(TEST_BUILDDIR)/%.o,$(src)),$(src),$(patsubst $(TEST_SUBDIR)/%.c,%,$(src)))))
|
||||
|
||||
ifeq ($(MODERN),0)
|
||||
LD_SCRIPT := ld_script.txt
|
||||
LD_SCRIPT := ld_script.ld
|
||||
LD_SCRIPT_DEPS := $(OBJ_DIR)/sym_bss.ld $(OBJ_DIR)/sym_common.ld $(OBJ_DIR)/sym_ewram.ld
|
||||
else
|
||||
LD_SCRIPT := ld_script_modern.txt
|
||||
LD_SCRIPT := ld_script_modern.ld
|
||||
LD_SCRIPT_DEPS :=
|
||||
endif
|
||||
|
||||
$(OBJ_DIR)/ld_script.ld: $(LD_SCRIPT) $(LD_SCRIPT_DEPS)
|
||||
cd $(OBJ_DIR) && sed "s#tools/#../../tools/#g" ../../$(LD_SCRIPT) > ld_script.ld
|
||||
|
||||
LDFLAGS = -Map ../../$(MAP)
|
||||
$(ELF): $(OBJ_DIR)/ld_script.ld $(OBJS) libagbsyscall
|
||||
@echo "cd $(OBJ_DIR) && $(LD) $(LDFLAGS) -T ld_script.ld -o ../../$@ <objects> <lib>"
|
||||
@cd $(OBJ_DIR) && $(LD) $(LDFLAGS) -T ld_script.ld -o ../../$@ $(OBJS_REL) $(LIB)
|
||||
@cd $(OBJ_DIR) && $(LD) $(LDFLAGS) -T ld_script.ld --print-memory-usage -o ../../$@ $(OBJS_REL) $(LIB) | cat
|
||||
$(FIX) $@ -t"$(TITLE)" -c$(GAME_CODE) -m$(MAKER_CODE) -r$(REVISION) --silent
|
||||
|
||||
$(ROM): $(ELF)
|
||||
@ -489,7 +487,7 @@ agbcc: all
|
||||
|
||||
modern: all
|
||||
|
||||
LD_SCRIPT_TEST := ld_script_test.txt
|
||||
LD_SCRIPT_TEST := ld_script_test.ld
|
||||
|
||||
$(OBJ_DIR)/ld_script_test.ld: $(LD_SCRIPT_TEST) $(LD_SCRIPT_DEPS)
|
||||
cd $(OBJ_DIR) && sed "s#tools/#../../tools/#g" ../../$(LD_SCRIPT_TEST) > ld_script_test.ld
|
||||
|
||||
95
README.md
@ -1,29 +1,38 @@
|
||||
# pokeemerald Expansion
|
||||
# pokeemerald-expansion
|
||||
|
||||
## What is the pokeemerald Expansion?
|
||||
## What is pokeemerald-expansion?
|
||||
|
||||
The pokeemerald Expansion is a feature branch meant to be integrated into existing Pokémon Emerald hacks based off pret's [pokeemerald](https://github.com/pret/pokeemerald) decompilation project. This is ***NOT*** a standalone romhack, and as such, most features will be unavailable and/or unbalanced if played as is.
|
||||
pokeemerald-expansion is a decomp hack base project based off pret's [pokeemerald](https://github.com/pret/pokeemerald) decompilation project. It's recommended that any new projects that plan on using it, to clone this repository instead of pret's vanilla repository, as we regurlarly incorporate pret's documentation changes. This is ***NOT*** a standalone romhack, and as such, most features will be unavailable and/or unbalanced if played as is.
|
||||
|
||||
If you use pokeemerald-expansion in your hack, please add RHH (Rom Hacking Hideout) to your credits list. Optionally, you can list the version used, so it can help players know what features to expect.
|
||||
You can phrase it as the following:
|
||||
```
|
||||
Based off RHH's pokeemerald-expansion v1.7.0 https://github.com/rh-hideout/pokeemerald-expansion/
|
||||
```
|
||||
|
||||
## What features are included?
|
||||
- Configuration files that allows you to choose generation-specific behaviors. Full contents here:
|
||||
- ***IMPORTANT*❗❗ Read through these to learn what features you can toggle**:
|
||||
- [Battle configurations](/include/config/battle.h)
|
||||
- [Pokémon configurations](/include/config/pokemon.h)
|
||||
- [Item configurations](/include/config/item.h)
|
||||
- [Overworld configurations](/include/config/overworld.h)
|
||||
- [Debug configurations](/include/config/debug.h)
|
||||
- Upgraded battle engine.
|
||||
- ***Upgraded battle engine.***
|
||||
- Gen5+ damage calculation.
|
||||
- 2v2 Wild battles support.
|
||||
- 1v2/2v1 battles support.
|
||||
- Fairy Type (configurable).
|
||||
- Physical/Special/Status Category Split (configurable).
|
||||
- Physical/Special/Status Category (configurable).
|
||||
- New moves and abilities up to Scarlet and Violet.
|
||||
- Custom Contest data up to SwSh, newer moves are WIP. ([source](https://pokemonurpg.com/info/contests/rse-move-list/))
|
||||
- [Form change tables](/src/data/pokemon/form_change_tables.h) that allow customizing most form changes.
|
||||
- Mega Evolution, Primal Reversion and Ultra Burst.
|
||||
- Mega Evolution
|
||||
- Primal Reversion
|
||||
- Ultra Burst
|
||||
- Z-Moves
|
||||
- Gen 8+ damaging moves are given power extrapolated from Gen 7.
|
||||
- Gen 8+ status moves have no additional effects, like Healing Wish.
|
||||
- Dynamax
|
||||
- Gigantamax forms
|
||||
- Initial battle parameters
|
||||
- Queueing stat boosts (aka, Totem Boosts)
|
||||
- Setting Terrains.
|
||||
@ -31,6 +40,7 @@ The pokeemerald Expansion is a feature branch meant to be integrated into existi
|
||||
- Quick Poké Ball selection in Wild Battles
|
||||
- Press `R` to use last selected Poké Ball.
|
||||
- Hold `R` to change selection with the D-Pad.
|
||||
- Run option shortcut
|
||||
- Faster battle intro
|
||||
- Message and animation/cry happens at the same time.
|
||||
- Faster HP drain.
|
||||
@ -52,7 +62,7 @@ The pokeemerald Expansion is a feature branch meant to be integrated into existi
|
||||
- Level 100 Pokémon can earn EVs.
|
||||
- Inverse battle support.
|
||||
- TONS of other features listed [here](/include/config/battle.h).
|
||||
- Full Trainer customization
|
||||
- ***Full Trainer customization***
|
||||
- Nickname, EVs, IVs, moves, ability, ball, friendship, nature, gender, shininess.
|
||||
- Custom tag battle support (teaming up an NPC in a double battle).
|
||||
- Sliding trainer messages.
|
||||
@ -61,11 +71,12 @@ The pokeemerald Expansion is a feature branch meant to be integrated into existi
|
||||
- New flag options to let you customize the intelligence of your trainers.
|
||||
- Faster calculations.
|
||||
- Specify Poké Balls by Trainer class.
|
||||
- Pokémon Species from Generations 1-8.
|
||||
- Option to disable unwanted generations.
|
||||
- ***Pokémon Species from Generations 1-9.***
|
||||
- Simplified process to add new Pokémon.
|
||||
- Option to disable unwanted families.
|
||||
- Updated sprites to DS style.
|
||||
- Updated stats, types, abilities and egg groups (configurable).
|
||||
- Updated Hoenn's Regional Dex to match ORAS'.
|
||||
- Updated Hoenn's Regional Dex to match ORAS' (configurable).
|
||||
- Updated National Dex incorporating the new species.
|
||||
- Sprite and animation visualizer.
|
||||
- Accesible by pressing `Select` on a Pokémon's Summary screen.
|
||||
@ -80,46 +91,56 @@ The pokeemerald Expansion is a feature branch meant to be integrated into existi
|
||||
- Available via Ability Patch.
|
||||
- Compatible with Ghoul's DexNav branch.
|
||||
- All gender differences.
|
||||
- Different icons for female Hippopotas and Hippowdon
|
||||
- 3 Perfect IVs on Legendaries, Mythicals and Ultra Beasts
|
||||
- Breeding
|
||||
- Custom female icons for female Hippopotas Hippowdon, Pikachu and Wobbufett
|
||||
- 3 Perfect IVs on Legendaries, Mythicals and Ultra Beasts.
|
||||
- ***Customizable form change tables. Full list of methods [here](/include/constants/form_change_types.h).***
|
||||
- Item holding (eg. Giratina/Arceus)
|
||||
- Item using (eg. Oricorio)
|
||||
- Time of day option for Shaymin
|
||||
- Fainting
|
||||
- Battle begin and end (eg. Xerneas)
|
||||
- Move change option for Zacian/Zamazenta
|
||||
- Battle end in terrains (eg. Burmy)
|
||||
- Switched in battle (eg. Palafin)
|
||||
- HP Threshold (eg. Darmanitan)
|
||||
- Weather (eg. Castform)
|
||||
- End of turn (eg. Morpeko)
|
||||
- Time of day (Shaymin)
|
||||
- ***Breeding Improvements***
|
||||
- Incense Baby Pokémon now happen automatically (configurable).
|
||||
- Level 1 eggs.
|
||||
- Poké Ball inheriting.
|
||||
- Egg Move Transfer, including Mirror Herb.
|
||||
- Nature inheriting 100% of the time with Everstone
|
||||
- Gen6+ Ability inheriting.
|
||||
- Items from newer Generations. Full list [here](/include/constants/items.h).
|
||||
- Level 1 eggs (configurable).
|
||||
- Poké Ball inheriting (configurable).
|
||||
- Egg Move Transfer, including Mirror Herb (configurable).
|
||||
- Nature inheriting 100% of the time with Everstone (configurable)
|
||||
- Gen6+ Ability inheriting (configurable).
|
||||
- ***Items from newer Generations. Full list [here](/include/constants/items.h).***
|
||||
- ***Gen 6+ Exp. Share*** (configurable)
|
||||
- Berserk Gene
|
||||
- Most battle items from Gen 4+
|
||||
- Existing item data but missing effects:
|
||||
- Mints
|
||||
- Dynamax Candy
|
||||
- Mulches
|
||||
- Rotom Catalog
|
||||
- DNA Splicers
|
||||
- Zygarde Cube
|
||||
- N Solarizer/Lunarizer
|
||||
- Reins of Unity
|
||||
- Dynamax Band
|
||||
- Gimmighoul Coin
|
||||
- Booster Energy
|
||||
- Tera Shards
|
||||
- Tera Orb
|
||||
- Feature branches incorporated:
|
||||
- [RHH intro credits](https://github.com/Xhyzi/pokeemerald/tree/rhh-intro-credits) by Xhyzi.
|
||||
- ***Feature branches incorporated (with permission):***
|
||||
- [RHH intro credits](https://github.com/Xhyzi/pokeemerald/tree/rhh-intro-credits) by @Xhyzi.
|
||||
- A small signature from all of us to show the collective effort in the project :)
|
||||
- [Overworld debug](https://github.com/TheXaman/pokeemerald/tree/tx_debug_system) by TheXaman
|
||||
- [Overworld debug](https://github.com/TheXaman/pokeemerald/tree/tx_debug_system) by @TheXaman
|
||||
- May be disabled.
|
||||
- Accesible by pressing `R + Start` in the overworld by default.
|
||||
- **Additional features**:
|
||||
- *Clear Boxes*: cleans every Pokémon from the Boxes.
|
||||
- *Hatch an Egg*: lets you choose an Egg in your party and immediatly hatch it.
|
||||
- [HGSS Pokédex](https://github.com/TheXaman/pokeemerald/tree/tx_pokedexPlus_hgss) by TheXaman
|
||||
- [HGSS Pokédex](https://github.com/TheXaman/pokeemerald/tree/tx_pokedexPlus_hgss) by @TheXaman
|
||||
- May be disabled.
|
||||
- **Additional features**:
|
||||
- *Support for new evolution methods*.
|
||||
- *Dark Mode*.
|
||||
- Other features
|
||||
- [Nature Colors](https://github.com/DizzyEggg/pokeemerald/tree/nature_color) in summary screen by @DizzyEggg
|
||||
- ***Other features***
|
||||
- Pressing B while holding a Pokémon drops them like in modern games (configurable).
|
||||
- Running indoors (configurable).
|
||||
- Configurable overworld poison damage.
|
||||
@ -136,16 +157,16 @@ There are some mechanics, moves and abilities that are missing and being develop
|
||||
|
||||
### [Documentation on features can be found here](https://github.com/rh-hideout/pokeemerald-expansion/wiki)
|
||||
|
||||
## If I already have a project based on regular pokeemerald, can I use the pokeemerald Expansion
|
||||
## If I already have a project based on regular pokeemerald, can I use pokeemerald-expansion?
|
||||
Yes! Keep in mind that we keep up with pret's documentation of pokeemerald, which means that if your project a bit old, you might get merge conflicts that you need to solve manually.
|
||||
- If you haven't set up a remote, run the command `git remote add RHH https://github.com/rh-hideout/pokeemerald-expansion`.
|
||||
- Once you have your remote set up, run the command `git pull RHH master`.
|
||||
|
||||
With this, you'll get the latest version of the Expansion, plus a couple of bugfixes that haven't been released into the next patch version :)
|
||||
With this, you'll get the latest version of pokeemerald-expansion, plus a couple of bugfixes that haven't been released into the next patch version :)
|
||||
|
||||
## **How do I update my version of the pokeemerald Expansion?**
|
||||
## **How do I update my version of pokeemerald-expansion?**
|
||||
- If you haven't set up a remote, run the command `git remote add RHH https://github.com/rh-hideout/pokeemerald-expansion`.
|
||||
- Once you have your remote set up, run the command `git pull RHH expansion/1.6.2`.
|
||||
- Once you have your remote set up, run the command `git pull RHH expansion/1.7.0`.
|
||||
|
||||
### Please consider crediting the entire [list of contributors](https://github.com/rh-hideout/pokeemerald-expansion/wiki/Credits) in your project, as they have all worked hard to develop this project :)
|
||||
|
||||
@ -162,7 +183,7 @@ The project was originally started by DizzyEgg alongside other contributors.
|
||||
|
||||
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.
|
||||
|
||||
## What is ROM Hacking Hideout?
|
||||
## What is the 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!
|
||||
|
||||
|
||||
@ -1,783 +0,0 @@
|
||||
.macro if_random_less_than param0:req, param1:req
|
||||
.byte 0x0
|
||||
.byte \param0
|
||||
.4byte \param1
|
||||
.endm
|
||||
|
||||
.macro if_random_greater_than param0:req, param1:req
|
||||
.byte 0x1
|
||||
.byte \param0
|
||||
.4byte \param1
|
||||
.endm
|
||||
|
||||
.macro if_random_equal param0:req, param1:req
|
||||
.byte 0x2
|
||||
.byte \param0
|
||||
.4byte \param1
|
||||
.endm
|
||||
|
||||
.macro if_random_not_equal param0:req, param1:req
|
||||
.byte 0x3
|
||||
.byte \param0
|
||||
.4byte \param1
|
||||
.endm
|
||||
|
||||
.macro score param0:req
|
||||
.byte 0x4
|
||||
.byte \param0
|
||||
.endm
|
||||
|
||||
.macro if_hp_less_than battler:req, param1:req, param2:req
|
||||
.byte 0x5
|
||||
.byte \battler
|
||||
.byte \param1
|
||||
.4byte \param2
|
||||
.endm
|
||||
|
||||
.macro if_hp_more_than battler:req, param1:req, param2:req
|
||||
.byte 0x6
|
||||
.byte \battler
|
||||
.byte \param1
|
||||
.4byte \param2
|
||||
.endm
|
||||
|
||||
.macro if_hp_equal battler:req, param1:req, param2:req
|
||||
.byte 0x7
|
||||
.byte \battler
|
||||
.byte \param1
|
||||
.4byte \param2
|
||||
.endm
|
||||
|
||||
.macro if_hp_not_equal battler:req, param1:req, param2:req
|
||||
.byte 0x8
|
||||
.byte \battler
|
||||
.byte \param1
|
||||
.4byte \param2
|
||||
.endm
|
||||
|
||||
.macro if_status battler:req, status1:req, param2:req
|
||||
.byte 0x9
|
||||
.byte \battler
|
||||
.4byte \status1
|
||||
.4byte \param2
|
||||
.endm
|
||||
|
||||
.macro if_not_status battler:req, status1:req, param2:req
|
||||
.byte 0xa
|
||||
.byte \battler
|
||||
.4byte \status1
|
||||
.4byte \param2
|
||||
.endm
|
||||
|
||||
.macro if_status2 battler:req, status2:req, param2:req
|
||||
.byte 0xb
|
||||
.byte \battler
|
||||
.4byte \status2
|
||||
.4byte \param2
|
||||
.endm
|
||||
|
||||
.macro if_not_status2 battler:req, status2:req, param2:req
|
||||
.byte 0xc
|
||||
.byte \battler
|
||||
.4byte \status2
|
||||
.4byte \param2
|
||||
.endm
|
||||
|
||||
.macro if_status3 battler:req, status3:req, param2:req
|
||||
.byte 0xd
|
||||
.byte \battler
|
||||
.4byte \status3
|
||||
.4byte \param2
|
||||
.endm
|
||||
|
||||
.macro if_not_status3 battler:req, status3:req, param2:req
|
||||
.byte 0xe
|
||||
.byte \battler
|
||||
.4byte \status3
|
||||
.4byte \param2
|
||||
.endm
|
||||
|
||||
.macro if_side_affecting battler:req, sidestatus:req, param2:req
|
||||
.byte 0xf
|
||||
.byte \battler
|
||||
.4byte \sidestatus
|
||||
.4byte \param2
|
||||
.endm
|
||||
|
||||
.macro if_not_side_affecting battler:req, sidestatus:req, param2:req
|
||||
.byte 0x10
|
||||
.byte \battler
|
||||
.4byte \sidestatus
|
||||
.4byte \param2
|
||||
.endm
|
||||
|
||||
.macro if_less_than param0:req, param1:req
|
||||
.byte 0x11
|
||||
.byte \param0
|
||||
.4byte \param1
|
||||
.endm
|
||||
|
||||
.macro if_more_than param0:req, param1:req
|
||||
.byte 0x12
|
||||
.byte \param0
|
||||
.4byte \param1
|
||||
.endm
|
||||
|
||||
.macro if_equal param0:req, param1:req
|
||||
.byte 0x13
|
||||
.byte \param0
|
||||
.4byte \param1
|
||||
.endm
|
||||
|
||||
.macro if_not_equal param0:req, param1:req
|
||||
.byte 0x14
|
||||
.byte \param0
|
||||
.4byte \param1
|
||||
.endm
|
||||
|
||||
.macro if_less_than_ptr param0:req, param1:req
|
||||
.byte 0x15
|
||||
.4byte \param0
|
||||
.4byte \param1
|
||||
.endm
|
||||
|
||||
.macro if_more_than_ptr param0:req, param1:req
|
||||
.byte 0x16
|
||||
.4byte \param0
|
||||
.4byte \param1
|
||||
.endm
|
||||
|
||||
.macro if_equal_ptr param0:req, param1:req
|
||||
.byte 0x17
|
||||
.4byte \param0
|
||||
.4byte \param1
|
||||
.endm
|
||||
|
||||
.macro if_not_equal_ptr param0:req, param1:req
|
||||
.byte 0x18
|
||||
.4byte \param0
|
||||
.4byte \param1
|
||||
.endm
|
||||
|
||||
.macro if_move param0:req, param1:req
|
||||
.byte 0x19
|
||||
.2byte \param0
|
||||
.4byte \param1
|
||||
.endm
|
||||
|
||||
.macro if_not_move param0:req, param1:req
|
||||
.byte 0x1a
|
||||
.2byte \param0
|
||||
.4byte \param1
|
||||
.endm
|
||||
|
||||
.macro if_in_bytes param0:req, param1:req
|
||||
.byte 0x1b
|
||||
.4byte \param0
|
||||
.4byte \param1
|
||||
.endm
|
||||
|
||||
.macro if_not_in_bytes param0:req, param1:req
|
||||
.byte 0x1c
|
||||
.4byte \param0
|
||||
.4byte \param1
|
||||
.endm
|
||||
|
||||
.macro if_in_hwords param0:req, param1:req
|
||||
.byte 0x1d
|
||||
.4byte \param0
|
||||
.4byte \param1
|
||||
.endm
|
||||
|
||||
.macro if_not_in_hwords param0:req, param1:req
|
||||
.byte 0x1e
|
||||
.4byte \param0
|
||||
.4byte \param1
|
||||
.endm
|
||||
|
||||
.macro if_user_has_attacking_move param0:req
|
||||
.byte 0x1f
|
||||
.4byte \param0
|
||||
.endm
|
||||
|
||||
.macro if_user_has_no_attacking_moves param0:req
|
||||
.byte 0x20
|
||||
.4byte \param0
|
||||
.endm
|
||||
|
||||
.macro get_turn_count
|
||||
.byte 0x21
|
||||
.endm
|
||||
|
||||
.macro get_type param0:req
|
||||
.byte 0x22
|
||||
.byte \param0
|
||||
.endm
|
||||
|
||||
.macro get_considered_move_power
|
||||
.byte 0x23
|
||||
.endm
|
||||
|
||||
.macro get_how_powerful_move_is
|
||||
.byte 0x24
|
||||
.endm
|
||||
|
||||
.macro get_last_used_bank_move battler:req
|
||||
.byte 0x25
|
||||
.byte \battler
|
||||
.endm
|
||||
|
||||
.macro if_equal_u32 param0:req, param1:req
|
||||
.byte 0x26
|
||||
.4byte \param0
|
||||
.4byte \param1
|
||||
.endm
|
||||
|
||||
.macro if_not_equal_u32 param0:req, param1:req
|
||||
.byte 0x27
|
||||
.4byte \param0
|
||||
.4byte \param1
|
||||
.endm
|
||||
|
||||
.macro if_user_goes param0:req, param1:req
|
||||
.byte 0x28
|
||||
.byte \param0
|
||||
.4byte \param1
|
||||
.endm
|
||||
|
||||
.macro if_cant_use_belch battler:req, ptr:req
|
||||
.byte 0x29
|
||||
.byte \battler
|
||||
.4byte \ptr
|
||||
.endm
|
||||
|
||||
.macro nop_2A
|
||||
.byte 0x2a
|
||||
.endm
|
||||
|
||||
.macro nop_2B
|
||||
.byte 0x2b
|
||||
.endm
|
||||
|
||||
.macro count_usable_party_mons battler:req
|
||||
.byte 0x2c
|
||||
.byte \battler
|
||||
.endm
|
||||
|
||||
.macro get_considered_move
|
||||
.byte 0x2d
|
||||
.endm
|
||||
|
||||
.macro get_considered_move_effect
|
||||
.byte 0x2e
|
||||
.endm
|
||||
|
||||
.macro get_ability battler:req
|
||||
.byte 0x2f
|
||||
.byte \battler
|
||||
.endm
|
||||
|
||||
.macro get_highest_type_effectiveness
|
||||
.byte 0x30
|
||||
.endm
|
||||
|
||||
.macro if_type_effectiveness param0:req, param1:req
|
||||
.byte 0x31
|
||||
.byte \param0
|
||||
.4byte \param1
|
||||
.endm
|
||||
|
||||
.macro nop_32
|
||||
.byte 0x32
|
||||
.endm
|
||||
|
||||
.macro nop_33
|
||||
.byte 0x33
|
||||
.endm
|
||||
|
||||
.macro if_status_in_party battler:req, status1:req, param2:req
|
||||
.byte 0x34
|
||||
.byte \battler
|
||||
.4byte \status1
|
||||
.4byte \param2
|
||||
.endm
|
||||
|
||||
.macro if_status_not_in_party battler:req, status1:req, param2:req
|
||||
.byte 0x35
|
||||
.byte \battler
|
||||
.4byte \status1
|
||||
.4byte \param2
|
||||
.endm
|
||||
|
||||
.macro get_weather
|
||||
.byte 0x36
|
||||
.endm
|
||||
|
||||
.macro if_effect param0:req, param1:req
|
||||
.byte 0x37
|
||||
.2byte \param0
|
||||
.4byte \param1
|
||||
.endm
|
||||
|
||||
.macro if_not_effect param0:req, param1:req
|
||||
.byte 0x38
|
||||
.2byte \param0
|
||||
.4byte \param1
|
||||
.endm
|
||||
|
||||
.macro if_stat_level_less_than battler:req, stat:req, param2:req, param3:req
|
||||
.byte 0x39
|
||||
.byte \battler
|
||||
.byte \stat
|
||||
.byte \param2
|
||||
.4byte \param3
|
||||
.endm
|
||||
|
||||
.macro if_stat_level_more_than battler:req, stat:req, param2:req, param3:req
|
||||
.byte 0x3a
|
||||
.byte \battler
|
||||
.byte \stat
|
||||
.byte \param2
|
||||
.4byte \param3
|
||||
.endm
|
||||
|
||||
.macro if_stat_level_equal battler:req, stat:req, param2:req, param3:req
|
||||
.byte 0x3b
|
||||
.byte \battler
|
||||
.byte \stat
|
||||
.byte \param2
|
||||
.4byte \param3
|
||||
.endm
|
||||
|
||||
.macro if_stat_level_not_equal battler:req, stat:req, param2:req, param3:req
|
||||
.byte 0x3c
|
||||
.byte \battler
|
||||
.byte \stat
|
||||
.byte \param2
|
||||
.4byte \param3
|
||||
.endm
|
||||
|
||||
.macro if_can_faint param0:req
|
||||
.byte 0x3d
|
||||
.4byte \param0
|
||||
.endm
|
||||
|
||||
.macro if_cant_faint param0:req
|
||||
.byte 0x3e
|
||||
.4byte \param0
|
||||
.endm
|
||||
|
||||
.macro if_has_move battler:req, param1:req, param2:req
|
||||
.byte 0x3f
|
||||
.byte \battler
|
||||
.2byte \param1
|
||||
.4byte \param2
|
||||
.endm
|
||||
|
||||
.macro if_doesnt_have_move battler:req, param1:req, param2:req
|
||||
.byte 0x40
|
||||
.byte \battler
|
||||
.2byte \param1
|
||||
.4byte \param2
|
||||
.endm
|
||||
|
||||
.macro if_has_move_with_effect battler:req, param1:req, param2:req
|
||||
.byte 0x41
|
||||
.byte \battler
|
||||
.byte \param1
|
||||
.4byte \param2
|
||||
.endm
|
||||
|
||||
.macro if_doesnt_have_move_with_effect battler:req, param1:req, param2:req
|
||||
.byte 0x42
|
||||
.byte \battler
|
||||
.byte \param1
|
||||
.4byte \param2
|
||||
.endm
|
||||
|
||||
.macro if_any_move_disabled_or_encored battler:req, param1:req, param2:req
|
||||
.byte 0x43
|
||||
.byte \battler
|
||||
.byte \param1
|
||||
.4byte \param2
|
||||
.endm
|
||||
|
||||
.macro if_curr_move_disabled_or_encored param0:req, param1:req
|
||||
.byte 0x44
|
||||
.byte \param0
|
||||
.4byte \param1
|
||||
.endm
|
||||
|
||||
.macro flee
|
||||
.byte 0x45
|
||||
.endm
|
||||
|
||||
.macro if_random_safari_flee param0:req
|
||||
.byte 0x46
|
||||
.4byte \param0
|
||||
.endm
|
||||
|
||||
.macro watch
|
||||
.byte 0x47
|
||||
.endm
|
||||
|
||||
.macro get_hold_effect battler:req
|
||||
.byte 0x48
|
||||
.byte \battler
|
||||
.endm
|
||||
|
||||
.macro get_gender battler:req
|
||||
.byte 0x49
|
||||
.byte \battler
|
||||
.endm
|
||||
|
||||
.macro is_first_turn_for battler:req
|
||||
.byte 0x4a
|
||||
.byte \battler
|
||||
.endm
|
||||
|
||||
.macro get_stockpile_count battler:req
|
||||
.byte 0x4b
|
||||
.byte \battler
|
||||
.endm
|
||||
|
||||
.macro is_double_battle
|
||||
.byte 0x4c
|
||||
.endm
|
||||
|
||||
.macro get_used_held_item battler:req
|
||||
.byte 0x4d
|
||||
.byte \battler
|
||||
.endm
|
||||
|
||||
.macro get_move_type_from_result
|
||||
.byte 0x4e
|
||||
.endm
|
||||
|
||||
.macro get_move_power_from_result
|
||||
.byte 0x4f
|
||||
.endm
|
||||
|
||||
.macro get_move_effect_from_result
|
||||
.byte 0x50
|
||||
.endm
|
||||
|
||||
.macro get_protect_count battler:req
|
||||
.byte 0x51
|
||||
.byte \battler
|
||||
.endm
|
||||
|
||||
.macro if_move_flag flag jumpptr
|
||||
.byte 0x52
|
||||
.4byte \flag
|
||||
.4byte \jumpptr
|
||||
.endm
|
||||
|
||||
.macro if_field_status flag jumpptr
|
||||
.byte 0x53
|
||||
.4byte \flag
|
||||
.4byte \jumpptr
|
||||
.endm
|
||||
|
||||
.macro get_move_accuracy
|
||||
.byte 0x54
|
||||
.endm
|
||||
|
||||
.macro call_if_eq value, ptr
|
||||
.byte 0x55
|
||||
.2byte \value
|
||||
.4byte \ptr
|
||||
.endm
|
||||
|
||||
.macro call_if_move_flag flag ptr
|
||||
.byte 0x56
|
||||
.4byte \flag
|
||||
.4byte \ptr
|
||||
.endm
|
||||
|
||||
.macro nop_57
|
||||
.byte 0x57
|
||||
.endm
|
||||
|
||||
.macro call param0:req
|
||||
.byte 0x58
|
||||
.4byte \param0
|
||||
.endm
|
||||
|
||||
.macro goto param0:req
|
||||
.byte 0x59
|
||||
.4byte \param0
|
||||
.endm
|
||||
|
||||
.macro end
|
||||
.byte 0x5a
|
||||
.endm
|
||||
|
||||
.macro if_level_cond param0:req, param1:req
|
||||
.byte 0x5b
|
||||
.byte \param0
|
||||
.4byte \param1
|
||||
.endm
|
||||
|
||||
.macro if_target_taunted param0:req
|
||||
.byte 0x5c
|
||||
.4byte \param0
|
||||
.endm
|
||||
|
||||
.macro if_target_not_taunted param0:req
|
||||
.byte 0x5d
|
||||
.4byte \param0
|
||||
.endm
|
||||
|
||||
.macro if_target_is_ally param0:req
|
||||
.byte 0x5e
|
||||
.4byte \param0
|
||||
.endm
|
||||
|
||||
.macro is_of_type battler:req, type:req
|
||||
.byte 0x5f
|
||||
.byte \battler
|
||||
.byte \type
|
||||
.endm
|
||||
|
||||
.macro check_ability battler:req, ability:req
|
||||
.byte 0x60
|
||||
.byte \battler
|
||||
.byte \ability
|
||||
.endm
|
||||
|
||||
.macro if_flash_fired battler:req, param1:req
|
||||
.byte 0x61
|
||||
.byte \battler
|
||||
.4byte \param1
|
||||
.endm
|
||||
|
||||
.macro if_holds_item battler:req, param1:req, param2:req
|
||||
.byte 0x62
|
||||
.byte \battler
|
||||
.2byte \param1
|
||||
.4byte \param2
|
||||
.endm
|
||||
|
||||
.macro get_ally_chosen_move
|
||||
.byte 0x63
|
||||
.endm
|
||||
|
||||
.macro if_has_no_attacking_moves battler:req, param1:req
|
||||
.byte 0x64
|
||||
.byte \battler
|
||||
.4byte \param1
|
||||
.endm
|
||||
|
||||
.macro get_hazards_count battler:req, effect:req
|
||||
.byte 0x65
|
||||
.byte \battler
|
||||
.2byte \effect
|
||||
.endm
|
||||
|
||||
.macro if_doesnt_hold_berry battler:req, ptr:req
|
||||
.byte 0x66
|
||||
.byte \battler
|
||||
.4byte \ptr
|
||||
.endm
|
||||
|
||||
.macro if_share_type battler1:req, battler2:req, ptr:req
|
||||
.byte 0x67
|
||||
.byte \battler1
|
||||
.byte \battler2
|
||||
.4byte \ptr
|
||||
.endm
|
||||
|
||||
.macro if_cant_use_last_resort battler:req, ptr:req
|
||||
.byte 0x68
|
||||
.byte \battler
|
||||
.4byte \ptr
|
||||
.endm
|
||||
|
||||
.macro if_has_move_with_split battler:req, split:req, ptr:req
|
||||
.byte 0x69
|
||||
.byte \battler
|
||||
.byte \split
|
||||
.4byte \ptr
|
||||
.endm
|
||||
|
||||
.macro if_has_no_move_with_split battler:req, split:req, ptr:req
|
||||
.byte 0x6A
|
||||
.byte \battler
|
||||
.byte \split
|
||||
.4byte \ptr
|
||||
.endm
|
||||
|
||||
.macro if_physical_moves_unusable attacker:req, target:req, ptr:req
|
||||
.byte 0x6B
|
||||
.byte \attacker
|
||||
.byte \target
|
||||
.4byte \ptr
|
||||
.endm
|
||||
|
||||
.macro if_ai_can_go_down ptr:req
|
||||
.byte 0x6C
|
||||
.4byte \ptr
|
||||
.endm
|
||||
|
||||
.macro if_has_move_with_type battler:req, type:req, ptr:req
|
||||
.byte 0x6D
|
||||
.byte \battler
|
||||
.byte \type
|
||||
.4byte \ptr
|
||||
.endm
|
||||
|
||||
.macro if_no_move_used battler:req, ptr:req
|
||||
.byte 0x6E
|
||||
.byte \battler
|
||||
.4byte \ptr
|
||||
.endm
|
||||
|
||||
.macro if_has_move_with_flag battler:req, flag:req, ptr:req
|
||||
.byte 0x6F
|
||||
.byte \battler
|
||||
.4byte \flag
|
||||
.4byte \ptr
|
||||
.endm
|
||||
|
||||
.macro if_battler_absent battler:req, ptr:req
|
||||
.byte 0x70
|
||||
.byte \battler
|
||||
.4byte \ptr
|
||||
.endm
|
||||
|
||||
.macro if_grounded battler:req, ptr:req
|
||||
.byte 0x71
|
||||
.byte \battler
|
||||
.4byte \ptr
|
||||
.endm
|
||||
|
||||
.macro get_best_dmg_hp_percent
|
||||
.byte 0x72
|
||||
.endm
|
||||
|
||||
.macro get_curr_dmg_hp_percent
|
||||
.byte 0x73
|
||||
.endm
|
||||
|
||||
.macro get_move_split_from_result
|
||||
.byte 0x74
|
||||
.endm
|
||||
|
||||
.macro get_considered_move_split
|
||||
.byte 0x75
|
||||
.endm
|
||||
|
||||
.macro get_considered_move_target
|
||||
.byte 0x76
|
||||
.endm
|
||||
|
||||
.macro compare_speeds battler1:req, battler2:req
|
||||
.byte 0x77
|
||||
.byte \battler1
|
||||
.byte \battler2
|
||||
.endm
|
||||
|
||||
.macro is_wakeup_turn battler:req
|
||||
.byte 0x78
|
||||
.byte \battler
|
||||
.endm
|
||||
|
||||
.macro if_has_move_with_accuracy_lt battler:req, value:req, ptr:req
|
||||
.byte 0x79
|
||||
.byte \battler
|
||||
.byte \value
|
||||
.4byte \ptr
|
||||
.endm
|
||||
|
||||
@ useful script macros
|
||||
.macro if_has_physical_move battler:req, ptr:req
|
||||
if_has_move_with_split \battler, SPLIT_PHYSICAL, \ptr
|
||||
.endm
|
||||
|
||||
.macro if_has_no_physical_move battler:req, ptr:req
|
||||
if_has_no_move_with_split \battler, SPLIT_PHYSICAL, \ptr
|
||||
.endm
|
||||
|
||||
.macro if_has_special_move battler:req, ptr:req
|
||||
if_has_move_with_split \battler, SPLIT_SPECIAL, \ptr
|
||||
.endm
|
||||
|
||||
.macro if_has_no_special_move battler:req, ptr:req
|
||||
if_has_no_move_with_split \battler, SPLIT_SPECIAL, \ptr
|
||||
.endm
|
||||
|
||||
.macro if_holds_no_item battler, ptr:req
|
||||
if_holds_item \battler, 0, \ptr
|
||||
.endm
|
||||
|
||||
.macro get_curr_move_type
|
||||
get_type AI_TYPE_MOVE
|
||||
.endm
|
||||
|
||||
.macro get_user_type1
|
||||
get_type AI_TYPE1_USER
|
||||
.endm
|
||||
|
||||
.macro get_user_type2
|
||||
get_type AI_TYPE2_USER
|
||||
.endm
|
||||
|
||||
.macro get_target_type1
|
||||
get_type AI_TYPE1_TARGET
|
||||
.endm
|
||||
|
||||
.macro get_target_type2
|
||||
get_type AI_TYPE2_TARGET
|
||||
.endm
|
||||
|
||||
.macro if_ability battler:req, ability:req, ptr:req
|
||||
check_ability \battler, \ability
|
||||
if_equal 1, \ptr
|
||||
.endm
|
||||
|
||||
.macro if_no_ability battler:req, ability:req, ptr:req
|
||||
check_ability \battler, \ability
|
||||
if_equal 0, \ptr
|
||||
.endm
|
||||
|
||||
.macro if_type battler:req, type:req, ptr:req
|
||||
is_of_type \battler, \type
|
||||
if_equal 1, \ptr
|
||||
.endm
|
||||
|
||||
.macro if_no_type battler:req, type:req, ptr:req
|
||||
is_of_type \battler, \type
|
||||
if_equal 0, \ptr
|
||||
.endm
|
||||
|
||||
.macro if_target_faster ptr:req
|
||||
if_user_goes 1, \ptr
|
||||
.endm
|
||||
|
||||
.macro if_user_faster ptr:req
|
||||
if_user_goes 0, \ptr
|
||||
.endm
|
||||
|
||||
.macro if_double_battle ptr:req
|
||||
is_double_battle
|
||||
if_equal 1, \ptr
|
||||
.endm
|
||||
|
||||
.macro if_not_double_battle ptr:req
|
||||
is_double_battle
|
||||
if_equal 0, \ptr
|
||||
.endm
|
||||
|
||||
.macro if_any_move_disabled battler:req, ptr:req
|
||||
if_any_move_disabled_or_encored \battler, 0, \ptr
|
||||
.endm
|
||||
|
||||
.macro if_any_move_encored battler:req, ptr:req
|
||||
if_any_move_disabled_or_encored \battler, 1, \ptr
|
||||
.endm
|
||||
|
||||
.macro call_if_always_hit ptr:req
|
||||
get_move_accuracy
|
||||
call_if_eq 0, \ptr
|
||||
.endm
|
||||
@ -364,11 +364,6 @@
|
||||
.byte 0x3f
|
||||
.endm
|
||||
|
||||
.macro jumpifaffectedbyprotect failInstr:req
|
||||
.byte 0x40
|
||||
.4byte \failInstr
|
||||
.endm
|
||||
|
||||
.macro call instr:req
|
||||
.byte 0x41
|
||||
.4byte \instr
|
||||
@ -1094,8 +1089,9 @@
|
||||
.4byte \failInstr
|
||||
.endm
|
||||
|
||||
.macro trycopyability failInstr:req
|
||||
.macro trycopyability battler:req, failInstr:req
|
||||
.byte 0xd3
|
||||
.byte \battler
|
||||
.4byte \failInstr
|
||||
.endm
|
||||
|
||||
@ -1319,6 +1315,15 @@
|
||||
.byte \battler
|
||||
.4byte \jumpInstr
|
||||
.endm
|
||||
|
||||
.macro allyswitchswapbattlers
|
||||
callnative BS_AllySwitchSwapBattler
|
||||
.endm
|
||||
|
||||
.macro allyswitchfailchance jumpInstr:req
|
||||
callnative BS_AllySwitchFailChance
|
||||
.4byte \jumpInstr
|
||||
.endm
|
||||
|
||||
.macro jumpifholdeffect battler:req, holdEffect:req, jumpInstr:req
|
||||
callnative BS_JumpIfHoldEffect
|
||||
@ -1382,6 +1387,22 @@
|
||||
callnative BS_TryRelicSong
|
||||
.endm
|
||||
|
||||
.macro setpledge jumpInstr:req
|
||||
callnative BS_SetPledge
|
||||
.4byte \jumpInstr
|
||||
.endm
|
||||
|
||||
.macro setpledgestatus battler:req sidestatus:req
|
||||
callnative BS_SetPledgeStatus
|
||||
.byte \battler
|
||||
.4byte \sidestatus
|
||||
.endm
|
||||
|
||||
.macro trycopycat failInstr:req
|
||||
callnative BS_TryCopycat
|
||||
.4byte \failInstr
|
||||
.endm
|
||||
|
||||
.macro setzeffect
|
||||
callnative BS_SetZEffect
|
||||
.endm
|
||||
@ -1520,6 +1541,33 @@
|
||||
.4byte \ptr
|
||||
.endm
|
||||
|
||||
.macro trytrainerslidezmovemsg
|
||||
callnative BS_TryTrainerSlideZMoveMsg
|
||||
.endm
|
||||
|
||||
.macro trytrainerslidemegaevolutionmsg
|
||||
callnative BS_TryTrainerSlideMegaEvolutionMsg
|
||||
.endm
|
||||
|
||||
.macro trytrainerslidedynamaxmsg
|
||||
callnative BS_TryTrainerSlideDynamaxMsg
|
||||
.endm
|
||||
|
||||
.macro tryhealpulse failInstr:req
|
||||
callnative BS_TryHealPulse
|
||||
.4byte \failInstr
|
||||
.endm
|
||||
|
||||
.macro trydefog clear:req, failInstr:req
|
||||
callnative BS_TryDefog
|
||||
.byte \clear
|
||||
.4byte \failInstr
|
||||
.endm
|
||||
|
||||
.macro trytriggerstatusform
|
||||
callnative BS_TryTriggerStatusForm
|
||||
.endm
|
||||
|
||||
@ various command changed to more readable macros
|
||||
.macro cancelmultiturnmoves battler:req
|
||||
various \battler, VARIOUS_CANCEL_MULTI_TURN_MOVES
|
||||
@ -1711,11 +1759,6 @@
|
||||
various \battler, VARIOUS_SET_LAST_USED_ABILITY
|
||||
.endm
|
||||
|
||||
.macro tryhealpulse battler:req, failInstr:req
|
||||
various \battler, VARIOUS_TRY_HEAL_PULSE
|
||||
.4byte \failInstr
|
||||
.endm
|
||||
|
||||
.macro tryquash failInstr:req
|
||||
various BS_ATTACKER, VARIOUS_TRY_QUASH
|
||||
.4byte \failInstr
|
||||
@ -1784,11 +1827,6 @@
|
||||
.4byte \jumpInstr
|
||||
.endm
|
||||
|
||||
.macro trycopycat failInstr:req
|
||||
various BS_ATTACKER, VARIOUS_TRY_COPYCAT
|
||||
.4byte \failInstr
|
||||
.endm
|
||||
|
||||
.macro showabilitypopup battler:req
|
||||
various \battler, VARIOUS_ABILITY_POPUP
|
||||
.endm
|
||||
@ -1797,12 +1835,6 @@
|
||||
various \battler, VARIOUS_UPDATE_ABILITY_POPUP
|
||||
.endm
|
||||
|
||||
.macro defogclear battler:req, clear:req, failInstr:req
|
||||
various \battler, VARIOUS_DEFOG
|
||||
.byte \clear
|
||||
.4byte \failInstr
|
||||
.endm
|
||||
|
||||
.macro jumpiftargetally jumpInstr:req
|
||||
various BS_ATTACKER, VARIOUS_JUMP_IF_TARGET_ALLY
|
||||
.4byte \jumpInstr
|
||||
@ -2175,14 +2207,6 @@
|
||||
various \battler, VARIOUS_ACTIVATE_TERRAIN_CHANGE_ABILITIES
|
||||
.endm
|
||||
|
||||
.macro trytrainerslidezmovemsg battler:req
|
||||
various \battler, VARIOUS_TRY_TRAINER_SLIDE_MSG_Z_MOVE
|
||||
.endm
|
||||
|
||||
.macro trytrainerslidemegaevolutionmsg battler:req
|
||||
various \battler, VARIOUS_TRY_TRAINER_SLIDE_MSG_MEGA_EVOLUTION
|
||||
.endm
|
||||
|
||||
@ helpful macros
|
||||
.macro setstatchanger stat:req, stages:req, down:req
|
||||
setbyte sSTATCHANGER, \stat | \stages << 3 | \down << 7
|
||||
@ -2307,6 +2331,15 @@
|
||||
goto \jumpInstr
|
||||
.endm
|
||||
|
||||
.macro setallytonextattacker jumpInstr:req
|
||||
jumpifbyte CMP_GREATER_THAN, gBattlerAttacker, 0x1, 1f
|
||||
addbyte gBattlerAttacker, 0x2
|
||||
goto \jumpInstr
|
||||
1:
|
||||
subbyte gBattlerAttacker, 0x2
|
||||
goto \jumpInstr
|
||||
.endm
|
||||
|
||||
.macro jumpifleafguardprotected battler:req, jumpInstr:req
|
||||
various \battler, VARIOUS_JUMP_IF_LEAF_GUARD_PROTECTED
|
||||
.4byte \jumpInstr
|
||||
|
||||
@ -162,5 +162,7 @@
|
||||
create_movement_action figure_8, MOVEMENT_ACTION_FIGURE_8
|
||||
create_movement_action fly_up, MOVEMENT_ACTION_FLY_UP
|
||||
create_movement_action fly_down, MOVEMENT_ACTION_FLY_DOWN
|
||||
create_movement_action emote_double_exclamation_mark, MOVEMENT_ACTION_EMOTE_DOUBLE_EXCL_MARK
|
||||
create_movement_action emote_x, MOVEMENT_ACTION_EMOTE_X
|
||||
|
||||
create_movement_action step_end, MOVEMENT_ACTION_STEP_END
|
||||
|
||||
@ -860,6 +860,21 @@ gBattleAnims_Moves::
|
||||
.4byte Move_MATCHA_GOTCHA
|
||||
.4byte Move_SYRUP_BOMB
|
||||
.4byte Move_IVY_CUDGEL
|
||||
.4byte Move_833
|
||||
.4byte Move_834
|
||||
.4byte Move_835
|
||||
.4byte Move_836
|
||||
.4byte Move_837
|
||||
.4byte Move_838
|
||||
.4byte Move_839
|
||||
.4byte Move_840
|
||||
.4byte Move_841
|
||||
.4byte Move_842
|
||||
.4byte Move_843
|
||||
.4byte Move_844
|
||||
.4byte Move_845
|
||||
.4byte Move_846
|
||||
.4byte Move_847
|
||||
@@@@ Z MOVES
|
||||
.4byte Move_BREAKNECK_BLITZ
|
||||
.4byte Move_ALL_OUT_PUMMELING
|
||||
@ -1010,6 +1025,9 @@ gBattleAnims_General::
|
||||
.4byte General_DynamaxGrowth @ B_ANIM_DYNAMAX_GROWTH
|
||||
.4byte General_SetWeather @ B_ANIM_MAX_SET_WEATHER
|
||||
.4byte General_SyrupBombSpeedDrop @ B_ANIM_SYRUP_BOMB_SPEED_DROP
|
||||
.4byte General_Rainbow @ B_ANIM_RAINBOW
|
||||
.4byte General_SeaOfFire @ B_ANIM_SEA_OF_FIRE
|
||||
.4byte General_Swamp @ B_ANIM_SWAMP
|
||||
|
||||
.align 2
|
||||
gBattleAnims_Special::
|
||||
@ -5607,6 +5625,11 @@ Move_QUICK_GUARD:
|
||||
end
|
||||
|
||||
Move_ALLY_SWITCH:
|
||||
call SetPsychicBackground
|
||||
createvisualtask AnimTask_AllySwitchAttacker, 2
|
||||
createvisualtask AnimTask_AllySwitchPartner, 2
|
||||
call DoubleTeamAnimRet
|
||||
call UnsetPsychicBg
|
||||
end
|
||||
|
||||
Move_SCALD:
|
||||
@ -15610,6 +15633,7 @@ Move_FREEZING_GLARE::
|
||||
Move_FIERY_WRATH::
|
||||
loadspritegfx ANIM_TAG_SMALL_EMBER
|
||||
loadspritegfx ANIM_TAG_PURPLE_RING
|
||||
monbg ANIM_DEF_PARTNER
|
||||
playsewithpan SE_M_SACRED_FIRE2, 0xc0
|
||||
createvisualtask AnimTask_BlendBattleAnimPal, 0xa, F_PAL_BG, 0x2, 0x0, 0xE, 0x0
|
||||
createvisualtask AnimTask_BlendBattleAnimPal, 0xa, F_PAL_ATTACKER, 0x4, 0x0, 0x8, 0x1F
|
||||
@ -15630,6 +15654,7 @@ Move_FIERY_WRATH::
|
||||
createvisualtask AnimTask_BlendBattleAnimPal, 0xa, F_PAL_DEF_SIDE, 0x2, 0x9, 0x0, 0x3006
|
||||
createvisualtask AnimTask_BlendBattleAnimPal, 0xa, F_PAL_BG, 0x1, 0xE, 0x0, 0x0
|
||||
waitforvisualfinish
|
||||
clearmonbg ANIM_DEF_PARTNER
|
||||
end
|
||||
|
||||
FieryWrathGeyser:
|
||||
@ -15647,6 +15672,7 @@ FieryWrathGeyser:
|
||||
delay 0x0
|
||||
createsprite gSpriteTemplate_FieryWrathGeyser, ANIM_TARGET, 4, ANIM_TARGET, 0xfffc, 0x10
|
||||
createsprite gSpriteTemplate_FieryWrathGeyser, ANIM_TARGET, 4, ANIM_DEF_PARTNER, 0xfffc, 0x10
|
||||
delay 0x0
|
||||
createsprite gSpriteTemplate_FieryWrathGeyser, ANIM_TARGET, 4, ANIM_TARGET, 0x100D, 0x10
|
||||
createsprite gSpriteTemplate_FieryWrathGeyser, ANIM_TARGET, 4, ANIM_DEF_PARTNER, 0x100D, 0x10
|
||||
delay 0x0
|
||||
@ -15679,10 +15705,10 @@ FieryWrathGeyser:
|
||||
delay 0x0
|
||||
createsprite gSpriteTemplate_FieryWrathGeyser, ANIM_TARGET, 4, ANIM_TARGET, 0xfff0, 0x10
|
||||
createsprite gSpriteTemplate_FieryWrathGeyser, ANIM_TARGET, 4, ANIM_DEF_PARTNER, 0xfff0, 0x10
|
||||
delay 0x0
|
||||
return
|
||||
|
||||
|
||||
|
||||
@Credits to Skeli
|
||||
Move_THUNDEROUS_KICK::
|
||||
loadspritegfx ANIM_TAG_IMPACT
|
||||
@ -16832,6 +16858,77 @@ SyrupBombSpeedDropYellow:
|
||||
waitforvisualfinish
|
||||
end
|
||||
|
||||
Move_CHILLY_RECEPTION::
|
||||
loadspritegfx ANIM_TAG_CONFETTI
|
||||
loadspritegfx ANIM_TAG_PINK_CLOUD
|
||||
loadspritegfx ANIM_TAG_ICE_CRYSTALS
|
||||
createvisualtask AnimTask_RotateMonSpriteToSide, 2, 16, 96, ANIM_ATTACKER, 1
|
||||
createvisualtask AnimTask_BlendColorCycle, 2, F_PAL_ATTACKER, 0, 1, 0, 13, RGB_BLACK
|
||||
delay 60
|
||||
waitforvisualfinish
|
||||
createvisualtask AnimTask_BlendColorCycle, 2, F_PAL_ATTACKER, 0, 1, 13, 0, RGB_BLACK
|
||||
createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, 1, 0, 7
|
||||
waitforvisualfinish
|
||||
createvisualtask SoundTask_PlayDoubleCry, 2, ANIM_ATTACKER, DOUBLE_CRY_ROAR
|
||||
setalpha 12, 4
|
||||
monbg ANIM_ATTACKER
|
||||
playsewithpan SE_BALL_OPEN, SOUND_PAN_TARGET
|
||||
createsprite gSmokeBallEscapeCloudSpriteTemplate, ANIM_ATTACKER, 122, 3, -14, 18, 24
|
||||
createsprite gSmokeBallEscapeCloudSpriteTemplate, ANIM_ATTACKER, 121, 3, 14, 6, 24
|
||||
createsprite gSmokeBallEscapeCloudSpriteTemplate, ANIM_ATTACKER, 120, 3, -12, 12, 24
|
||||
createsprite gSmokeBallEscapeCloudSpriteTemplate, ANIM_ATTACKER, 119, 3, 14, 18, 24
|
||||
createsprite gSmokeBallEscapeCloudSpriteTemplate, ANIM_ATTACKER, 118, 3, 0, 0, 24
|
||||
call CreateFlatterConfetti
|
||||
call CreateFlatterConfetti
|
||||
call CreateFlatterConfetti
|
||||
call CreateFlatterConfetti
|
||||
call CreateFlatterConfetti
|
||||
call CreateFlatterConfetti
|
||||
call CreateFlatterConfetti
|
||||
call CreateFlatterConfetti
|
||||
call CreateFlatterConfetti
|
||||
call CreateFlatterConfetti
|
||||
call CreateFlatterConfetti
|
||||
call CreateFlatterConfetti
|
||||
call CreateFlatterConfetti
|
||||
call CreateFlatterConfetti
|
||||
call CreateFlatterConfetti
|
||||
call CreateFlatterConfetti
|
||||
call CreateFlatterConfetti
|
||||
call CreateFlatterConfetti
|
||||
call CreateFlatterConfetti
|
||||
call CreateFlatterConfetti
|
||||
waitforvisualfinish
|
||||
clearmonbg ANIM_ATTACKER
|
||||
delay 10
|
||||
createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_BG | F_PAL_BATTLERS, 1, 0, 3, RGB_WHITE
|
||||
playsewithpan SE_M_GUST, SOUND_PAN_ATTACKER
|
||||
call ChillyReceptionSnowballs
|
||||
call ChillyReceptionSnowballs
|
||||
call ChillyReceptionSnowballs
|
||||
call ChillyReceptionSnowballs
|
||||
playsewithpan SE_M_GUST2, SOUND_PAN_TARGET
|
||||
waitforvisualfinish
|
||||
waitsound
|
||||
createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, F_PAL_BG | F_PAL_BATTLERS, 1, 3, 0, RGB_WHITE
|
||||
end
|
||||
ChillyReceptionSnowballs:
|
||||
createsprite gPowderSnowSnowballSpriteTemplate, ANIM_ATTACKER, 40, 200, -150, 24, 0, 56, 4, 4, 0
|
||||
delay 3
|
||||
createsprite gPowderSnowSnowballSpriteTemplate, ANIM_ATTACKER, 40, 200, -100, 24, -10, 56, 4, 4, 0
|
||||
delay 3
|
||||
createsprite gPowderSnowSnowballSpriteTemplate, ANIM_ATTACKER, 40, 200, -100, 24, 10, 56, -4, 3, 0
|
||||
delay 3
|
||||
createsprite gPowderSnowSnowballSpriteTemplate, ANIM_ATTACKER, 40, 200, -200, 24, -20, 56, -4, 5, 0
|
||||
delay 3
|
||||
createsprite gPowderSnowSnowballSpriteTemplate, ANIM_ATTACKER, 40, 200, -150, 24, 15, 56, 4, 4, 0
|
||||
delay 3
|
||||
createsprite gPowderSnowSnowballSpriteTemplate, ANIM_ATTACKER, 40, 200, -200, 24, -20, 56, 4, 4, 0
|
||||
delay 3
|
||||
createsprite gPowderSnowSnowballSpriteTemplate, ANIM_ATTACKER, 40, 200, -200, 24, 20, 56, 4, 4, 0
|
||||
delay 3
|
||||
return
|
||||
|
||||
Move_TERA_BLAST::
|
||||
Move_AXE_KICK::
|
||||
Move_LAST_RESPECTS::
|
||||
@ -16859,7 +16956,6 @@ Move_RUINATION::
|
||||
Move_COLLISION_COURSE::
|
||||
Move_ELECTRO_DRIFT::
|
||||
Move_SHED_TAIL::
|
||||
Move_CHILLY_RECEPTION::
|
||||
Move_TIDY_UP::
|
||||
Move_POUNCE::
|
||||
Move_TRAILBLAZE::
|
||||
@ -16887,6 +16983,21 @@ Move_IVY_CUDGEL::
|
||||
Move_NONE:
|
||||
Move_MIRROR_MOVE:
|
||||
Move_POUND:
|
||||
Move_833:
|
||||
Move_834:
|
||||
Move_835:
|
||||
Move_836:
|
||||
Move_837:
|
||||
Move_838:
|
||||
Move_839:
|
||||
Move_840:
|
||||
Move_841:
|
||||
Move_842:
|
||||
Move_843:
|
||||
Move_844:
|
||||
Move_845:
|
||||
Move_846:
|
||||
Move_847:
|
||||
loadspritegfx ANIM_TAG_IMPACT
|
||||
monbg ANIM_TARGET
|
||||
setalpha 12, 8
|
||||
@ -19242,9 +19353,8 @@ Move_TELEPORT:
|
||||
call UnsetPsychicBg
|
||||
waitforvisualfinish
|
||||
end
|
||||
|
||||
Move_DOUBLE_TEAM:
|
||||
createvisualtask AnimTask_DoubleTeam, 2
|
||||
|
||||
DoubleTeamAnimRet:
|
||||
setalpha 12, 8
|
||||
monbg ANIM_ATK_PARTNER
|
||||
playsewithpan SE_M_DOUBLE_TEAM, SOUND_PAN_ATTACKER
|
||||
@ -19268,6 +19378,11 @@ Move_DOUBLE_TEAM:
|
||||
clearmonbg ANIM_ATK_PARTNER
|
||||
blendoff
|
||||
delay 1
|
||||
return
|
||||
|
||||
Move_DOUBLE_TEAM:
|
||||
createvisualtask AnimTask_DoubleTeam, 2
|
||||
call DoubleTeamAnimRet
|
||||
end
|
||||
|
||||
Move_MINIMIZE:
|
||||
@ -27060,6 +27175,10 @@ General_HangedOn:
|
||||
end
|
||||
|
||||
General_Rain:
|
||||
call RainDrops
|
||||
end
|
||||
|
||||
RainDrops:
|
||||
loadspritegfx ANIM_TAG_RAIN_DROPS
|
||||
playsewithpan SE_M_RAIN_DANCE, SOUND_PAN_ATTACKER
|
||||
createvisualtask AnimTask_BlendBattleAnimPal, 10, (F_PAL_BG | F_PAL_BATTLERS), 2, 0, 4, RGB_BLACK
|
||||
@ -27070,7 +27189,7 @@ General_Rain:
|
||||
waitforvisualfinish
|
||||
createvisualtask AnimTask_BlendBattleAnimPal, 10, (F_PAL_BG | F_PAL_BATTLERS), 2, 4, 0, RGB_BLACK
|
||||
waitforvisualfinish
|
||||
end
|
||||
return
|
||||
|
||||
General_Sun:
|
||||
goto Move_SUNNY_DAY
|
||||
@ -27303,8 +27422,6 @@ General_RestoreBg:
|
||||
waitbgfadein
|
||||
end
|
||||
|
||||
end
|
||||
|
||||
General_ZMoveActivate:
|
||||
loadspritegfx ANIM_TAG_FOCUS_ENERGY @focus energy
|
||||
loadspritegfx ANIM_TAG_Z_MOVE_SYMBOL @Z-Move Symbol
|
||||
@ -27515,6 +27632,75 @@ General_AffectionHangedOn_3Hearts:
|
||||
General_SaltCureDamage::
|
||||
goto Status_Freeze
|
||||
|
||||
General_Rainbow::
|
||||
call RainDrops
|
||||
delay 30
|
||||
loadspritegfx ANIM_TAG_SUNLIGHT
|
||||
createvisualtask AnimTask_BlendBattleAnimPal, 10, (F_PAL_BG | F_PAL_BATTLERS), 1, 0, 6, RGB_WHITE
|
||||
waitforvisualfinish
|
||||
panse_adjustnone SE_M_PETAL_DANCE, SOUND_PAN_ATTACKER, SOUND_PAN_TARGET, +1, 0
|
||||
call SunnyDayLightRay
|
||||
call SunnyDayLightRay
|
||||
call SunnyDayLightRay
|
||||
waitforvisualfinish
|
||||
createvisualtask AnimTask_BlendBattleAnimPal, 10, (F_PAL_BG | F_PAL_BATTLERS), 1, 6, 0, RGB_WHITE
|
||||
waitforvisualfinish
|
||||
delay 30
|
||||
fadetobg BG_RAINBOW
|
||||
panse_adjustnone SE_M_ABSORB_2, SOUND_PAN_ATTACKER, SOUND_PAN_TARGET, +1, 0
|
||||
delay 90
|
||||
blendoff
|
||||
restorebg
|
||||
waitbgfadein
|
||||
clearmonbg ANIM_ATK_PARTNER
|
||||
end
|
||||
|
||||
General_SeaOfFire::
|
||||
loadspritegfx ANIM_TAG_SMALL_EMBER
|
||||
monbg ANIM_DEF_PARTNER
|
||||
splitbgprio ANIM_TARGET
|
||||
playsewithpan SE_M_SACRED_FIRE2, SOUND_PAN_TARGET
|
||||
call SeaOfFireTwisterDos
|
||||
delay 3
|
||||
call SeaOfFireTwisterTres
|
||||
waitforvisualfinish
|
||||
clearmonbg ANIM_DEF_PARTNER
|
||||
blendoff
|
||||
end
|
||||
|
||||
SeaOfFireTwisterDos:
|
||||
createsprite gTwisterEmberSpriteTemplate, ANIM_TARGET, 2, 45, 90, 5, 70, 30
|
||||
delay 2
|
||||
createsprite gTwisterEmberSpriteTemplate, ANIM_TARGET, 2, 50, 85, 6, 60, 30
|
||||
delay 1
|
||||
createsprite gTwisterEmberSpriteTemplate, ANIM_TARGET, 2, 47, 77, 7, 60, 30
|
||||
delay 2
|
||||
createsprite gTwisterEmberSpriteTemplate, ANIM_TARGET, 2, 40, 86, 8, 50, 30
|
||||
delay 3
|
||||
createsprite gTwisterEmberSpriteTemplate, ANIM_TARGET, 2, 42, 82, 7, 45, 30
|
||||
delay 1
|
||||
createsprite gTwisterEmberSpriteTemplate, ANIM_TARGET, 2, 47, 83, 5, 38, 30
|
||||
delay 2
|
||||
return
|
||||
|
||||
SeaOfFireTwisterTres:
|
||||
createsprite gTwisterEmberSpriteTemplate, ANIM_TARGET, 2, 45, 90, 3, 45, 30
|
||||
delay 2
|
||||
createsprite gTwisterEmberSpriteTemplate, ANIM_TARGET, 2, 50, 85, 4, 39, 30
|
||||
delay 1
|
||||
createsprite gTwisterEmberSpriteTemplate, ANIM_TARGET, 2, 47, 77, 5, 39, 30
|
||||
delay 2
|
||||
createsprite gTwisterEmberSpriteTemplate, ANIM_TARGET, 2, 40, 86, 6, 32, 30
|
||||
delay 3
|
||||
createsprite gTwisterEmberSpriteTemplate, ANIM_TARGET, 2, 42, 82, 5, 27, 30
|
||||
delay 1
|
||||
createsprite gTwisterEmberSpriteTemplate, ANIM_TARGET, 2, 47, 83, 3, 24, 30
|
||||
delay 2
|
||||
return
|
||||
|
||||
General_Swamp:: @ To do
|
||||
goto Move_HAZE
|
||||
|
||||
SnatchMoveTrySwapFromSubstitute:
|
||||
createvisualtask AnimTask_IsAttackerBehindSubstitute, 2
|
||||
jumprettrue SnatchMoveSwapSubstituteForMon
|
||||
|
||||
@ -69,7 +69,7 @@ gBattleScriptsForMoveEffects::
|
||||
.4byte BattleScript_EffectRecoilIfMiss @ EFFECT_RECOIL_IF_MISS
|
||||
.4byte BattleScript_EffectMist @ EFFECT_MIST
|
||||
.4byte BattleScript_EffectFocusEnergy @ EFFECT_FOCUS_ENERGY
|
||||
.4byte BattleScript_EffectHit @ EFFECT_RECOIL_25
|
||||
.4byte BattleScript_EffectHit @ EFFECT_RECOIL
|
||||
.4byte BattleScript_EffectConfuse @ EFFECT_CONFUSE
|
||||
.4byte BattleScript_EffectAttackUp2 @ EFFECT_ATTACK_UP_2
|
||||
.4byte BattleScript_EffectDefenseUp2 @ EFFECT_DEFENSE_UP_2
|
||||
@ -123,7 +123,6 @@ gBattleScriptsForMoveEffects::
|
||||
.4byte BattleScript_EffectSpite @ EFFECT_SPITE
|
||||
.4byte BattleScript_EffectHit @ EFFECT_FALSE_SWIPE
|
||||
.4byte BattleScript_EffectHealBell @ EFFECT_HEAL_BELL
|
||||
.4byte BattleScript_EffectHit @ EFFECT_ALWAYS_CRIT
|
||||
.4byte BattleScript_EffectTripleKick @ EFFECT_TRIPLE_KICK
|
||||
.4byte BattleScript_EffectHit @ EFFECT_THIEF
|
||||
.4byte BattleScript_EffectMeanLook @ EFFECT_MEAN_LOOK
|
||||
@ -215,7 +214,6 @@ gBattleScriptsForMoveEffects::
|
||||
.4byte BattleScript_EffectSnatch @ EFFECT_SNATCH
|
||||
.4byte BattleScript_EffectHit @ EFFECT_LOW_KICK
|
||||
.4byte BattleScript_EffectSecretPower @ EFFECT_SECRET_POWER
|
||||
.4byte BattleScript_EffectHit @ EFFECT_RECOIL_33
|
||||
.4byte BattleScript_EffectTeeterDance @ EFFECT_TEETER_DANCE
|
||||
.4byte BattleScript_EffectHitEscape @ EFFECT_HIT_ESCAPE
|
||||
.4byte BattleScript_EffectMudSport @ EFFECT_MUD_SPORT
|
||||
@ -231,7 +229,7 @@ gBattleScriptsForMoveEffects::
|
||||
.4byte BattleScript_EffectCalmMind @ EFFECT_CALM_MIND
|
||||
.4byte BattleScript_EffectDragonDance @ EFFECT_DRAGON_DANCE
|
||||
.4byte BattleScript_EffectCamouflage @ EFFECT_CAMOUFLAGE
|
||||
.4byte BattleScript_EffectHit @ EFFECT_PLEDGE
|
||||
.4byte BattleScript_EffectPledge @ EFFECT_PLEDGE
|
||||
.4byte BattleScript_EffectFling @ EFFECT_FLING
|
||||
.4byte BattleScript_EffectNaturalGift @ EFFECT_NATURAL_GIFT
|
||||
.4byte BattleScript_EffectWakeUpSlap @ EFFECT_WAKE_UP_SLAP
|
||||
@ -303,9 +301,6 @@ gBattleScriptsForMoveEffects::
|
||||
.4byte BattleScript_EffectGrowth @ EFFECT_GROWTH
|
||||
.4byte BattleScript_EffectHit @ EFFECT_UNUSED_279
|
||||
.4byte BattleScript_EffectLastResort @ EFFECT_LAST_RESORT
|
||||
.4byte BattleScript_EffectHit @ EFFECT_RECOIL_33_STATUS
|
||||
.4byte BattleScript_EffectHit @ EFFECT_UNUSED_282
|
||||
.4byte BattleScript_EffectHit @ EFFECT_RECOIL_50
|
||||
.4byte BattleScript_EffectShellSmash @ EFFECT_SHELL_SMASH
|
||||
.4byte BattleScript_EffectShiftGear @ EFFECT_SHIFT_GEAR
|
||||
.4byte BattleScript_EffectDefenseUp3 @ EFFECT_DEFENSE_UP_3
|
||||
@ -432,9 +427,40 @@ gBattleScriptsForMoveEffects::
|
||||
.4byte BattleScript_EffectHit @ EFFECT_POPULATION_BOMB
|
||||
.4byte BattleScript_EffectHit @ EFFECT_UNUSED_408
|
||||
.4byte BattleScript_EffectSaltCure @ EFFECT_SALT_CURE
|
||||
.4byte BattleScript_EffectHit @ EFFECT_IVY_CUDGEL
|
||||
.4byte BattleScript_EffectChillyReception @ EFFECT_CHILLY_RECEPTION
|
||||
.4byte BattleScript_EffectMaxMove @ EFFECT_MAX_MOVE
|
||||
.4byte BattleScript_EffectGlaiveRush @ EFFECT_GLAIVE_RUSH
|
||||
.4byte BattleScript_EffectBrickBreak @ EFFECT_RAGING_BULL
|
||||
.4byte BattleScript_EffectHit @ EFFECT_RAGE_FIST
|
||||
.4byte BattleScript_EffectDoodle @ EFFECT_DOODLE
|
||||
|
||||
BattleScript_EffectDoodle:
|
||||
attackcanceler
|
||||
attackstring
|
||||
ppreduce
|
||||
attackanimation
|
||||
waitanimation
|
||||
setbyte gBattleCommunication, 0
|
||||
BattleScript_EffectDoodle_CopyAbility:
|
||||
trycopyability BS_ATTACKER, BattleScript_ButItFailed
|
||||
.if B_ABILITY_POP_UP == TRUE
|
||||
setbyte sFIXED_ABILITY_POPUP, TRUE
|
||||
showabilitypopup BS_ATTACKER
|
||||
pause 60
|
||||
sethword sABILITY_OVERWRITE, 0
|
||||
updateabilitypopup BS_ATTACKER
|
||||
pause 20
|
||||
destroyabilitypopup
|
||||
pause 40
|
||||
.endif
|
||||
printstring STRINGID_PKMNCOPIEDFOE
|
||||
waitmessage B_WAIT_TIME_LONG
|
||||
switchinabilities BS_ATTACKER
|
||||
jumpifbyte CMP_NOT_EQUAL, gBattleCommunication, 0x0, BattleScript_MoveEnd
|
||||
addbyte gBattleCommunication, 1
|
||||
jumpifnoally BS_TARGET, BattleScript_MoveEnd
|
||||
setallytonextattacker BattleScript_EffectDoodle_CopyAbility
|
||||
goto BattleScript_MoveEnd
|
||||
|
||||
BattleScript_EffectGlaiveRush::
|
||||
call BattleScript_EffectHit_Ret
|
||||
@ -457,6 +483,154 @@ BattleScript_SyrupBombEndTurn::
|
||||
BattleScript_SyrupBombTurnDmgEnd:
|
||||
end2
|
||||
|
||||
BattleScript_EffectChillyReception::
|
||||
printstring STRINGID_PKMNTELLCHILLINGRECEPTIONJOKE
|
||||
waitmessage B_WAIT_TIME_LONG
|
||||
attackcanceler
|
||||
ppreduce
|
||||
jumpifhalfword CMP_COMMON_BITS, gBattleWeather, B_WEATHER_SUN_PRIMAL, BattleScript_EffectChillyReceptionBlockedByPrimalSun
|
||||
jumpifhalfword CMP_COMMON_BITS, gBattleWeather, B_WEATHER_RAIN_PRIMAL, BattleScript_EffectChillyReceptionBlockedByPrimalRain
|
||||
jumpifhalfword CMP_COMMON_BITS, gBattleWeather, B_WEATHER_STRONG_WINDS, BattleScript_EffectChillyReceptionBlockedByStrongWinds
|
||||
call BattleScript_EffectChillyReceptionPlayAnimation
|
||||
setsnow
|
||||
call BattleScript_MoveWeatherChangeRet
|
||||
goto BattleScript_MoveSwitch
|
||||
BattleScript_EffectChillyReceptionPlayAnimation:
|
||||
attackstring
|
||||
attackanimation
|
||||
waitanimation
|
||||
return
|
||||
BattleScript_EffectChillyReceptionBlockedByPrimalSun:
|
||||
call BattleScript_EffectChillyReceptionTrySwitchWeatherFailed
|
||||
call BattleScript_ExtremelyHarshSunlightWasNotLessenedRet
|
||||
goto BattleScript_MoveSwitch
|
||||
BattleScript_EffectChillyReceptionBlockedByPrimalRain:
|
||||
call BattleScript_EffectChillyReceptionTrySwitchWeatherFailed
|
||||
call BattleScript_NoReliefFromHeavyRainRet
|
||||
goto BattleScript_MoveSwitch
|
||||
BattleScript_EffectChillyReceptionBlockedByStrongWinds:
|
||||
call BattleScript_EffectChillyReceptionTrySwitchWeatherFailed
|
||||
call BattleScript_MysteriousAirCurrentBlowsOnRet
|
||||
goto BattleScript_MoveSwitch
|
||||
BattleScript_EffectChillyReceptionTrySwitchWeatherFailed:
|
||||
jumpifbattletype BATTLE_TYPE_ARENA, BattleScript_FailedFromAtkString
|
||||
jumpifcantswitch SWITCH_IGNORE_ESCAPE_PREVENTION | BS_ATTACKER, BattleScript_FailedFromAtkString
|
||||
call BattleScript_EffectChillyReceptionPlayAnimation
|
||||
return
|
||||
|
||||
BattleScript_CheckPrimalWeather:
|
||||
jumpifhalfword CMP_COMMON_BITS, gBattleWeather, B_WEATHER_SUN_PRIMAL, BattleScript_ExtremelyHarshSunlightWasNotLessened
|
||||
jumpifhalfword CMP_COMMON_BITS, gBattleWeather, B_WEATHER_RAIN_PRIMAL, BattleScript_NoReliefFromHeavyRain
|
||||
jumpifhalfword CMP_COMMON_BITS, gBattleWeather, B_WEATHER_STRONG_WINDS, BattleScript_MysteriousAirCurrentBlowsOn
|
||||
return
|
||||
|
||||
BattleScript_MoveSwitch:
|
||||
jumpifbattletype BATTLE_TYPE_ARENA, BattleScript_MoveSwitchEnd
|
||||
jumpifcantswitch SWITCH_IGNORE_ESCAPE_PREVENTION | BS_ATTACKER, BattleScript_MoveSwitchEnd
|
||||
printstring STRINGID_PKMNWENTBACK
|
||||
waitmessage B_WAIT_TIME_SHORT
|
||||
openpartyscreen BS_ATTACKER, BattleScript_MoveSwitchEnd
|
||||
switchoutabilities BS_ATTACKER
|
||||
waitstate
|
||||
switchhandleorder BS_ATTACKER, 2
|
||||
returntoball BS_ATTACKER
|
||||
getswitchedmondata BS_ATTACKER
|
||||
switchindataupdate BS_ATTACKER
|
||||
hpthresholds BS_ATTACKER
|
||||
trytoclearprimalweather
|
||||
printstring STRINGID_EMPTYSTRING3
|
||||
waitmessage 1
|
||||
printstring STRINGID_SWITCHINMON
|
||||
switchinanim BS_ATTACKER, TRUE
|
||||
waitstate
|
||||
switchineffects BS_ATTACKER
|
||||
BattleScript_MoveSwitchEnd:
|
||||
end
|
||||
|
||||
BattleScript_EffectPledge::
|
||||
attackcanceler
|
||||
setpledge BattleScript_HitFromAccCheck
|
||||
attackstring
|
||||
pause B_WAIT_TIME_MED
|
||||
ppreduce
|
||||
printstring STRINGID_WAITINGFORPARTNERSMOVE
|
||||
waitmessage B_WAIT_TIME_LONG
|
||||
goto BattleScript_MoveEnd
|
||||
|
||||
BattleScript_EffectCombinedPledge_Water::
|
||||
call BattleScript_EffectHit_Pledge
|
||||
setpledgestatus BS_ATTACKER, SIDE_STATUS_RAINBOW
|
||||
pause B_WAIT_TIME_SHORTEST
|
||||
printstring STRINGID_ARAINBOWAPPEAREDONSIDE
|
||||
waitmessage B_WAIT_TIME_LONG
|
||||
playanimation BS_ATTACKER, B_ANIM_RAINBOW
|
||||
waitanimation
|
||||
goto BattleScript_MoveEnd
|
||||
|
||||
BattleScript_TheRainbowDisappeared::
|
||||
printstring STRINGID_THERAINBOWDISAPPEARED
|
||||
waitmessage B_WAIT_TIME_LONG
|
||||
end2
|
||||
|
||||
BattleScript_EffectCombinedPledge_Fire::
|
||||
call BattleScript_EffectHit_Pledge
|
||||
setpledgestatus BS_TARGET, SIDE_STATUS_SEA_OF_FIRE
|
||||
pause B_WAIT_TIME_SHORTEST
|
||||
printstring STRINGID_SEAOFFIREENVELOPEDSIDE
|
||||
waitmessage B_WAIT_TIME_LONG
|
||||
playanimation BS_TARGET, B_ANIM_SEA_OF_FIRE
|
||||
waitanimation
|
||||
goto BattleScript_MoveEnd
|
||||
|
||||
BattleScript_HurtByTheSeaOfFire::
|
||||
printstring STRINGID_HURTBYTHESEAOFFIRE
|
||||
waitmessage B_WAIT_TIME_LONG
|
||||
goto BattleScript_DoTurnDmg
|
||||
|
||||
BattleScript_TheSeaOfFireDisappeared::
|
||||
printstring STRINGID_THESEAOFFIREDISAPPEARED
|
||||
waitmessage B_WAIT_TIME_LONG
|
||||
end2
|
||||
|
||||
BattleScript_EffectCombinedPledge_Grass::
|
||||
call BattleScript_EffectHit_Pledge
|
||||
setpledgestatus BS_TARGET, SIDE_STATUS_SWAMP
|
||||
pause B_WAIT_TIME_SHORTEST
|
||||
printstring STRINGID_SWAMPENVELOPEDSIDE
|
||||
waitmessage B_WAIT_TIME_LONG
|
||||
playanimation BS_TARGET, B_ANIM_SWAMP
|
||||
waitanimation
|
||||
goto BattleScript_MoveEnd
|
||||
|
||||
BattleScript_TheSwampDisappeared::
|
||||
printstring STRINGID_THESWAMPDISAPPEARED
|
||||
waitmessage B_WAIT_TIME_LONG
|
||||
end2
|
||||
|
||||
BattleScript_EffectHit_Pledge::
|
||||
pause B_WAIT_TIME_MED
|
||||
printstring STRINGID_THETWOMOVESBECOMEONE
|
||||
waitmessage B_WAIT_TIME_LONG
|
||||
accuracycheck BattleScript_PrintMoveMissed, ACC_CURR_MOVE
|
||||
ppreduce
|
||||
critcalc
|
||||
damagecalc
|
||||
adjustdamage
|
||||
attackanimation
|
||||
waitanimation
|
||||
effectivenesssound
|
||||
hitanimation BS_TARGET
|
||||
waitstate
|
||||
healthbarupdate BS_TARGET
|
||||
datahpupdate BS_TARGET
|
||||
critmessage
|
||||
waitmessage B_WAIT_TIME_LONG
|
||||
resultmessage
|
||||
waitmessage B_WAIT_TIME_LONG
|
||||
seteffectwithchance
|
||||
tryfaintmon BS_TARGET
|
||||
return
|
||||
|
||||
BattleScript_EffectSaltCure:
|
||||
call BattleScript_EffectHit_Ret
|
||||
tryfaintmon BS_TARGET
|
||||
@ -541,14 +715,14 @@ BattleScript_EffectRevivalBlessing::
|
||||
waitanimation
|
||||
printstring STRINGID_PKMNREVIVEDREADYTOFIGHT
|
||||
waitmessage B_WAIT_TIME_LONG
|
||||
jumpifbyte CMP_EQUAL, gBattleCommunication, TRUE, BattleScript_EffectRevivalBlessingSendOut
|
||||
jumpifbyte CMP_EQUAL, gBattleCommunication, TRUE, BattleScript_EffectRevivalBlessingSendOut
|
||||
goto BattleScript_MoveEnd
|
||||
|
||||
BattleScript_EffectRevivalBlessingSendOut:
|
||||
switchinanim BS_SCRIPTING, FALSE
|
||||
switchinanim BS_SCRIPTING, FALSE
|
||||
waitstate
|
||||
switchineffects BS_SCRIPTING
|
||||
goto BattleScript_MoveEnd
|
||||
goto BattleScript_MoveEnd
|
||||
|
||||
BattleScript_StealthRockActivates::
|
||||
setstealthrock BattleScript_MoveEnd
|
||||
@ -585,6 +759,7 @@ BattleScript_EffectAttackUpUserAlly_TryAlly:
|
||||
BattleScript_EffectAttackUpUserAlly_End:
|
||||
goto BattleScript_MoveEnd
|
||||
BattleScript_EffectAttackUpUserAlly_TryAlly_:
|
||||
jumpifability BS_ATTACKER_PARTNER, ABILITY_SOUNDPROOF, BattleScript_EffectAttackUpUserAlly_TryAllyBlocked
|
||||
setstatchanger STAT_ATK, 1, FALSE
|
||||
statbuffchange STAT_CHANGE_ALLOW_PTR, BattleScript_EffectAttackUpUserAlly_End
|
||||
jumpifbyte CMP_NOT_EQUAL, cMULTISTRING_CHOOSER, B_MSG_STAT_WONT_INCREASE, BattleScript_EffectAttackUpUserAlly_AllyAnim
|
||||
@ -599,6 +774,13 @@ BattleScript_EffectAttackUpUserAlly_AllyAnim:
|
||||
waitmessage B_WAIT_TIME_LONG
|
||||
goto BattleScript_EffectAttackUpUserAlly_End
|
||||
|
||||
BattleScript_EffectAttackUpUserAlly_TryAllyBlocked:
|
||||
copybyte sBATTLER, gBattlerTarget
|
||||
call BattleScript_AbilityPopUpTarget
|
||||
printstring STRINGID_PKMNSXBLOCKSY2
|
||||
waitmessage B_WAIT_TIME_LONG
|
||||
goto BattleScript_MoveEnd
|
||||
|
||||
BattleScript_EffectTeatime::
|
||||
attackcanceler
|
||||
attackstring
|
||||
@ -613,10 +795,10 @@ BattleScript_TeatimeLoop:
|
||||
jumpifabsorbaffected BS_TARGET, BattleScript_Teatimesorb
|
||||
jumpifmotoraffected BS_TARGET, BattleScript_Teatimemotor
|
||||
jumpifteainvulnerable BS_TARGET, BattleScript_Teatimevul @ in semi-invulnerable state OR held item is not a Berry
|
||||
orword gHitMarker, HITMARKER_NO_ANIMATIONS | HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_IGNORE_DISGUISE
|
||||
orword gHitMarker, HITMARKER_DISABLE_ANIMATION | HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_IGNORE_DISGUISE
|
||||
setbyte sBERRY_OVERRIDE, TRUE @ override the requirements for eating berries
|
||||
consumeberry BS_TARGET, TRUE @ consume the berry, then restore the item from changedItems
|
||||
bicword gHitMarker, HITMARKER_NO_ANIMATIONS | HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_IGNORE_DISGUISE
|
||||
bicword gHitMarker, HITMARKER_DISABLE_ANIMATION | HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_IGNORE_DISGUISE
|
||||
setbyte sBERRY_OVERRIDE, FALSE
|
||||
removeitem BS_TARGET
|
||||
moveendto MOVEEND_NEXT_TARGET
|
||||
@ -882,8 +1064,7 @@ BattleScript_EffectFling:
|
||||
attackcanceler
|
||||
jumpifcantfling BS_ATTACKER, BattleScript_FailedFromAtkString
|
||||
setlastuseditem BS_ATTACKER
|
||||
removeitem BS_ATTACKER
|
||||
accuracycheck BattleScript_PrintMoveMissed, ACC_CURR_MOVE
|
||||
accuracycheck BattleScript_FlingMissed, ACC_CURR_MOVE
|
||||
attackstring
|
||||
pause B_WAIT_TIME_SHORT
|
||||
printstring STRINGID_PKMNFLUNG
|
||||
@ -892,6 +1073,7 @@ BattleScript_EffectFling:
|
||||
critcalc
|
||||
damagecalc
|
||||
adjustdamage
|
||||
removeitem BS_ATTACKER
|
||||
attackanimation
|
||||
waitanimation
|
||||
effectivenesssound
|
||||
@ -915,9 +1097,9 @@ BattleScript_EffectFlingConsumeBerry:
|
||||
savebattleritem BS_TARGET
|
||||
battleritemtolastuseditem BS_TARGET
|
||||
setbyte sBERRY_OVERRIDE, 1 @ override the requirements for eating berries
|
||||
orword gHitMarker, HITMARKER_NO_ANIMATIONS
|
||||
orword gHitMarker, HITMARKER_DISABLE_ANIMATION
|
||||
consumeberry BS_TARGET, TRUE
|
||||
bicword gHitMarker, HITMARKER_NO_ANIMATIONS
|
||||
bicword gHitMarker, HITMARKER_DISABLE_ANIMATION
|
||||
setbyte sBERRY_OVERRIDE, 0
|
||||
restorebattleritem BS_TARGET
|
||||
BattleScript_FlingEnd:
|
||||
@ -967,6 +1149,12 @@ BattleScript_FlingWhiteHerb:
|
||||
swapattackerwithtarget
|
||||
goto BattleScript_FlingEnd
|
||||
|
||||
BattleScript_FlingMissed:
|
||||
removeitem BS_ATTACKER
|
||||
attackstring
|
||||
ppreduce
|
||||
goto BattleScript_MoveMissedPause
|
||||
|
||||
BattleScript_EffectShellSideArm:
|
||||
shellsidearmcheck
|
||||
setmoveeffect MOVE_EFFECT_POISON
|
||||
@ -1006,7 +1194,7 @@ BattleScript_EffectClangorousSoul:
|
||||
attackstring
|
||||
ppreduce
|
||||
cutonethirdhpraisestats BattleScript_ButItFailed
|
||||
orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_SKIP_DMG_TRACK | HITMARKER_PASSIVE_DAMAGE | HITMARKER_IGNORE_DISGUISE
|
||||
orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_IGNORE_BIDE | HITMARKER_PASSIVE_DAMAGE | HITMARKER_IGNORE_DISGUISE
|
||||
attackanimation
|
||||
waitanimation
|
||||
healthbarupdate BS_ATTACKER
|
||||
@ -1182,9 +1370,9 @@ BattleScript_EffectStuffCheeks::
|
||||
waitanimation
|
||||
BattleScript_StuffCheeksEatBerry:
|
||||
setbyte sBERRY_OVERRIDE, 1
|
||||
orword gHitMarker, HITMARKER_NO_ANIMATIONS
|
||||
orword gHitMarker, HITMARKER_DISABLE_ANIMATION
|
||||
consumeberry BS_ATTACKER, TRUE
|
||||
bicword gHitMarker, HITMARKER_NO_ANIMATIONS
|
||||
bicword gHitMarker, HITMARKER_DISABLE_ANIMATION
|
||||
setbyte sBERRY_OVERRIDE, 0
|
||||
removeitem BS_ATTACKER
|
||||
setstatchanger STAT_DEF, 2, FALSE
|
||||
@ -1303,8 +1491,11 @@ BattleScript_EffectAllySwitch:
|
||||
attackstring
|
||||
ppreduce
|
||||
jumpifnoally BS_ATTACKER, BattleScript_ButItFailed
|
||||
allyswitchfailchance BattleScript_ButItFailed
|
||||
attackanimation
|
||||
waitanimation
|
||||
@ The actual data/gfx swap happens in the move animation. Here it's just the gBattlerAttacker / scripting battler change
|
||||
allyswitchswapbattlers
|
||||
printstring STRINGID_ALLYSWITCHPOSITION
|
||||
waitmessage B_WAIT_TIME_LONG
|
||||
goto BattleScript_MoveEnd
|
||||
@ -1443,11 +1634,11 @@ BattleScript_MoveEffectIncinerate::
|
||||
BattleScript_MoveEffectBugBite::
|
||||
printstring STRINGID_BUGBITE
|
||||
waitmessage B_WAIT_TIME_LONG
|
||||
orword gHitMarker, HITMARKER_NO_ANIMATIONS
|
||||
orword gHitMarker, HITMARKER_DISABLE_ANIMATION
|
||||
setbyte sBERRY_OVERRIDE, 1 @ override the requirements for eating berries
|
||||
savetarget
|
||||
consumeberry BS_ATTACKER, FALSE
|
||||
bicword gHitMarker, HITMARKER_NO_ANIMATIONS
|
||||
bicword gHitMarker, HITMARKER_DISABLE_ANIMATION
|
||||
setbyte sBERRY_OVERRIDE, 0
|
||||
trysymbiosis
|
||||
restoretarget
|
||||
@ -1534,22 +1725,7 @@ BattleScript_EffectPartingShotTrySpAtk:
|
||||
waitmessage B_WAIT_TIME_LONG
|
||||
BattleScript_EffectPartingShotSwitch:
|
||||
moveendall
|
||||
jumpifbattletype BATTLE_TYPE_ARENA, BattleScript_PartingShotEnd
|
||||
jumpifcantswitch SWITCH_IGNORE_ESCAPE_PREVENTION | BS_ATTACKER, BattleScript_PartingShotEnd
|
||||
openpartyscreen BS_ATTACKER, BattleScript_PartingShotEnd
|
||||
switchoutabilities BS_ATTACKER
|
||||
waitstate
|
||||
switchhandleorder BS_ATTACKER, 2
|
||||
returntoball BS_ATTACKER
|
||||
getswitchedmondata BS_ATTACKER
|
||||
switchindataupdate BS_ATTACKER
|
||||
hpthresholds BS_ATTACKER
|
||||
trytoclearprimalweather
|
||||
flushtextbox
|
||||
printstring STRINGID_SWITCHINMON
|
||||
switchinanim BS_ATTACKER, TRUE
|
||||
waitstate
|
||||
switchineffects BS_ATTACKER
|
||||
goto BattleScript_MoveSwitch
|
||||
BattleScript_PartingShotEnd:
|
||||
end
|
||||
|
||||
@ -1932,7 +2108,7 @@ BattleScript_EffectDefog:
|
||||
jumpifsubstituteblocks BattleScript_DefogIfCanClearHazards
|
||||
jumpifstat BS_TARGET, CMP_NOT_EQUAL, STAT_EVASION, MIN_STAT_STAGE, BattleScript_DefogWorks
|
||||
BattleScript_DefogIfCanClearHazards:
|
||||
defogclear BS_ATTACKER, FALSE, BattleScript_FailedFromAtkString
|
||||
trydefog FALSE, BattleScript_FailedFromAtkString
|
||||
BattleScript_DefogWorks:
|
||||
accuracycheck BattleScript_PrintMoveMissed, ACC_CURR_MOVE
|
||||
attackstring
|
||||
@ -1952,7 +2128,7 @@ BattleScript_DefogPrintString::
|
||||
waitmessage B_WAIT_TIME_LONG
|
||||
BattleScript_DefogTryHazards::
|
||||
copybyte gEffectBattler, gBattlerAttacker
|
||||
defogclear BS_ATTACKER, TRUE, NULL
|
||||
trydefog TRUE, NULL
|
||||
copybyte gBattlerAttacker, gEffectBattler
|
||||
goto BattleScript_MoveEnd
|
||||
BattleScript_DefogTryHazardsWithAnim:
|
||||
@ -2542,7 +2718,7 @@ BattleScript_EffectHealPulse:
|
||||
jumpifstatus3 BS_TARGET, STATUS3_HEAL_BLOCK, BattleScript_MoveUsedHealBlockPrevents
|
||||
accuracycheck BattleScript_ButItFailed, NO_ACC_CALC_CHECK_LOCK_ON
|
||||
jumpifsubstituteblocks BattleScript_ButItFailed
|
||||
tryhealpulse BS_TARGET, BattleScript_AlreadyAtFullHp
|
||||
tryhealpulse BattleScript_AlreadyAtFullHp
|
||||
attackanimation
|
||||
waitanimation
|
||||
healthbarupdate BS_TARGET
|
||||
@ -2767,7 +2943,7 @@ BattleScript_EffectTelekinesis:
|
||||
settelekinesis BattleScript_ButItFailed
|
||||
attackanimation
|
||||
waitanimation
|
||||
printstring STRINGID_PKMNIDENTIFIED
|
||||
printstring STRINGID_HURLEDINTOTHEAIR
|
||||
waitmessage B_WAIT_TIME_LONG
|
||||
goto BattleScript_MoveEnd
|
||||
|
||||
@ -3003,23 +3179,8 @@ BattleScript_EffectHitEscape:
|
||||
moveendfrom MOVEEND_TARGET_VISIBLE
|
||||
jumpifbattleend BattleScript_HitEscapeEnd
|
||||
jumpifbyte CMP_NOT_EQUAL gBattleOutcome 0, BattleScript_HitEscapeEnd
|
||||
jumpifbattletype BATTLE_TYPE_ARENA, BattleScript_HitEscapeEnd
|
||||
jumpifcantswitch SWITCH_IGNORE_ESCAPE_PREVENTION | BS_ATTACKER, BattleScript_HitEscapeEnd
|
||||
jumpifemergencyexited BS_TARGET, BattleScript_HitEscapeEnd
|
||||
openpartyscreen BS_ATTACKER, BattleScript_HitEscapeEnd
|
||||
switchoutabilities BS_ATTACKER
|
||||
waitstate
|
||||
switchhandleorder BS_ATTACKER, 2
|
||||
returntoball BS_ATTACKER
|
||||
getswitchedmondata BS_ATTACKER
|
||||
switchindataupdate BS_ATTACKER
|
||||
hpthresholds BS_ATTACKER
|
||||
trytoclearprimalweather
|
||||
flushtextbox
|
||||
printstring STRINGID_SWITCHINMON
|
||||
switchinanim BS_ATTACKER, TRUE
|
||||
waitstate
|
||||
switchineffects BS_ATTACKER
|
||||
goto BattleScript_MoveSwitch
|
||||
BattleScript_HitEscapeEnd:
|
||||
end
|
||||
|
||||
@ -4704,9 +4865,7 @@ BattleScript_EffectSandstorm::
|
||||
attackcanceler
|
||||
attackstring
|
||||
ppreduce
|
||||
jumpifhalfword CMP_COMMON_BITS, gBattleWeather, B_WEATHER_SUN_PRIMAL, BattleScript_ExtremelyHarshSunlightWasNotLessened
|
||||
jumpifhalfword CMP_COMMON_BITS, gBattleWeather, B_WEATHER_RAIN_PRIMAL, BattleScript_NoReliefFromHeavyRain
|
||||
jumpifhalfword CMP_COMMON_BITS, gBattleWeather, B_WEATHER_STRONG_WINDS, BattleScript_MysteriousAirCurrentBlowsOn
|
||||
call BattleScript_CheckPrimalWeather
|
||||
setsandstorm
|
||||
goto BattleScript_MoveWeatherChange
|
||||
|
||||
@ -4895,25 +5054,25 @@ BattleScript_EffectRainDance::
|
||||
attackcanceler
|
||||
attackstring
|
||||
ppreduce
|
||||
jumpifhalfword CMP_COMMON_BITS, gBattleWeather, B_WEATHER_SUN_PRIMAL, BattleScript_ExtremelyHarshSunlightWasNotLessened
|
||||
jumpifhalfword CMP_COMMON_BITS, gBattleWeather, B_WEATHER_RAIN_PRIMAL, BattleScript_NoReliefFromHeavyRain
|
||||
jumpifhalfword CMP_COMMON_BITS, gBattleWeather, B_WEATHER_STRONG_WINDS, BattleScript_MysteriousAirCurrentBlowsOn
|
||||
call BattleScript_CheckPrimalWeather
|
||||
setrain
|
||||
BattleScript_MoveWeatherChange::
|
||||
attackanimation
|
||||
waitanimation
|
||||
call BattleScript_MoveWeatherChangeRet
|
||||
goto BattleScript_MoveEnd
|
||||
|
||||
BattleScript_MoveWeatherChangeRet::
|
||||
printfromtable gMoveWeatherChangeStringIds
|
||||
waitmessage B_WAIT_TIME_LONG
|
||||
call BattleScript_ActivateWeatherAbilities
|
||||
goto BattleScript_MoveEnd
|
||||
return
|
||||
|
||||
BattleScript_EffectSunnyDay::
|
||||
attackcanceler
|
||||
attackstring
|
||||
ppreduce
|
||||
jumpifhalfword CMP_COMMON_BITS, gBattleWeather, B_WEATHER_SUN_PRIMAL, BattleScript_ExtremelyHarshSunlightWasNotLessened
|
||||
jumpifhalfword CMP_COMMON_BITS, gBattleWeather, B_WEATHER_RAIN_PRIMAL, BattleScript_NoReliefFromHeavyRain
|
||||
jumpifhalfword CMP_COMMON_BITS, gBattleWeather, B_WEATHER_STRONG_WINDS, BattleScript_MysteriousAirCurrentBlowsOn
|
||||
call BattleScript_CheckPrimalWeather
|
||||
setsunny
|
||||
goto BattleScript_MoveWeatherChange
|
||||
|
||||
@ -5351,9 +5510,7 @@ BattleScript_EffectHail::
|
||||
attackcanceler
|
||||
attackstring
|
||||
ppreduce
|
||||
jumpifhalfword CMP_COMMON_BITS, gBattleWeather, B_WEATHER_SUN_PRIMAL, BattleScript_ExtremelyHarshSunlightWasNotLessened
|
||||
jumpifhalfword CMP_COMMON_BITS, gBattleWeather, B_WEATHER_RAIN_PRIMAL, BattleScript_NoReliefFromHeavyRain
|
||||
jumpifhalfword CMP_COMMON_BITS, gBattleWeather, B_WEATHER_STRONG_WINDS, BattleScript_MysteriousAirCurrentBlowsOn
|
||||
call BattleScript_CheckPrimalWeather
|
||||
sethail
|
||||
goto BattleScript_MoveWeatherChange
|
||||
|
||||
@ -5582,7 +5739,7 @@ BattleScript_EffectRolePlay::
|
||||
attackstring
|
||||
ppreduce
|
||||
accuracycheck BattleScript_ButItFailed, NO_ACC_CALC_CHECK_LOCK_ON
|
||||
trycopyability BattleScript_ButItFailed
|
||||
trycopyability BS_ATTACKER, BattleScript_ButItFailed
|
||||
attackanimation
|
||||
waitanimation
|
||||
.if B_ABILITY_POP_UP == TRUE
|
||||
@ -6494,7 +6651,7 @@ BattleScript_DamagingWeatherHeal:
|
||||
printstring STRINGID_ICEBODYHPGAIN
|
||||
waitmessage B_WAIT_TIME_LONG
|
||||
BattleScript_DamagingWeatherHpChange:
|
||||
orword gHitMarker, HITMARKER_SKIP_DMG_TRACK | HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_DAMAGE | HITMARKER_GRUDGE
|
||||
orword gHitMarker, HITMARKER_IGNORE_BIDE | HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_DAMAGE | HITMARKER_GRUDGE
|
||||
healthbarupdate BS_ATTACKER
|
||||
datahpupdate BS_ATTACKER
|
||||
tryfaintmon BS_ATTACKER
|
||||
@ -6504,7 +6661,7 @@ BattleScript_DamagingWeatherLoopIncrement::
|
||||
addbyte gBattleCommunication, 1
|
||||
jumpifbytenotequal gBattleCommunication, gBattlersCount, BattleScript_DamagingWeatherLoop
|
||||
BattleScript_DamagingWeatherContinuesEnd::
|
||||
bicword gHitMarker, HITMARKER_SKIP_DMG_TRACK | HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_DAMAGE | HITMARKER_GRUDGE
|
||||
bicword gHitMarker, HITMARKER_IGNORE_BIDE | HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_DAMAGE | HITMARKER_GRUDGE
|
||||
call BattleScript_ActivateWeatherAbilities
|
||||
end2
|
||||
|
||||
@ -7041,7 +7198,7 @@ BattleScript_EarthEaterActivates::
|
||||
call BattleScript_AbilityPopUp
|
||||
pause B_WAIT_TIME_LONG
|
||||
tryhealquarterhealth BS_TARGET, BattleScript_EarthEaterRet
|
||||
orword gHitMarker, HITMARKER_SKIP_DMG_TRACK | HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_DAMAGE
|
||||
orword gHitMarker, HITMARKER_IGNORE_BIDE | HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_DAMAGE
|
||||
healthbarupdate BS_TARGET
|
||||
datahpupdate BS_TARGET
|
||||
printstring STRINGID_PKMNREGAINEDHEALTH
|
||||
@ -7517,7 +7674,7 @@ BattleScript_FocusPunchSetUp::
|
||||
|
||||
BattleScript_MegaEvolution::
|
||||
flushtextbox
|
||||
trytrainerslidemegaevolutionmsg BS_ATTACKER
|
||||
trytrainerslidemegaevolutionmsg
|
||||
printstring STRINGID_MEGAEVOREACTING
|
||||
BattleScript_MegaEvolutionAfterString:
|
||||
waitmessage B_WAIT_TIME_LONG
|
||||
@ -7533,7 +7690,7 @@ BattleScript_MegaEvolutionAfterString:
|
||||
|
||||
BattleScript_WishMegaEvolution::
|
||||
flushtextbox
|
||||
trytrainerslidemegaevolutionmsg BS_ATTACKER
|
||||
trytrainerslidemegaevolutionmsg
|
||||
printstring STRINGID_FERVENTWISHREACHED
|
||||
goto BattleScript_MegaEvolutionAfterString
|
||||
|
||||
@ -7561,7 +7718,7 @@ BattleScript_PrimalReversionRet::
|
||||
|
||||
BattleScript_UltraBurst::
|
||||
flushtextbox
|
||||
trytrainerslidezmovemsg BS_ATTACKER
|
||||
trytrainerslidezmovemsg
|
||||
printstring STRINGID_ULTRABURSTREACTING
|
||||
waitmessage B_WAIT_TIME_LONG
|
||||
setbyte gIsCriticalHit, 0
|
||||
@ -7618,7 +7775,7 @@ BattleScript_CudChewActivates::
|
||||
call BattleScript_AbilityPopUp
|
||||
setbyte sBERRY_OVERRIDE, 1 @ override the requirements for eating berries
|
||||
consumeberry BS_TARGET, FALSE
|
||||
orword gHitMarker, HITMARKER_SKIP_DMG_TRACK | HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_DAMAGE
|
||||
orword gHitMarker, HITMARKER_IGNORE_BIDE | HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_DAMAGE
|
||||
healthbarupdate BS_ATTACKER
|
||||
datahpupdate BS_ATTACKER
|
||||
setbyte sBERRY_OVERRIDE, 0
|
||||
@ -7678,10 +7835,11 @@ BattleScript_IllusionOff::
|
||||
return
|
||||
|
||||
BattleScript_CottonDownActivates::
|
||||
setbyte sFIXED_ABILITY_POPUP, TRUE
|
||||
call BattleScript_AbilityPopUp
|
||||
showabilitypopup BS_TARGET
|
||||
pause B_WAIT_TIME_LONG
|
||||
destroyabilitypopup
|
||||
copybyte gEffectBattler, gBattlerTarget
|
||||
savetarget
|
||||
swapattackerwithtarget
|
||||
setbyte gBattlerTarget, 0
|
||||
BattleScript_CottonDownLoop:
|
||||
jumpiffainted BS_TARGET, TRUE, BattleScript_CottonDownLoopIncrement
|
||||
@ -7700,8 +7858,7 @@ BattleScript_CottonDownLoopIncrement:
|
||||
addbyte gBattlerTarget, 1
|
||||
jumpifbytenotequal gBattlerTarget, gBattlersCount, BattleScript_CottonDownLoop
|
||||
BattleScript_CottonDownReturn:
|
||||
restoretarget
|
||||
destroyabilitypopup
|
||||
swapattackerwithtarget
|
||||
return
|
||||
|
||||
BattleScript_AnticipationActivates::
|
||||
@ -7714,12 +7871,14 @@ BattleScript_AnticipationActivates::
|
||||
BattleScript_AftermathDmg::
|
||||
pause B_WAIT_TIME_SHORT
|
||||
call BattleScript_AbilityPopUp
|
||||
jumpifability BS_ATTACKER, ABILITY_MAGIC_GUARD, BattleScript_AftermathDmgRet
|
||||
orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_DAMAGE
|
||||
healthbarupdate BS_ATTACKER
|
||||
datahpupdate BS_ATTACKER
|
||||
printstring STRINGID_AFTERMATHDMG
|
||||
waitmessage B_WAIT_TIME_LONG
|
||||
tryfaintmon BS_ATTACKER
|
||||
BattleScript_AftermathDmgRet:
|
||||
return
|
||||
|
||||
BattleScript_DampPreventsAftermath::
|
||||
@ -7984,6 +8143,8 @@ BattleScript_MoveEffectSleep::
|
||||
BattleScript_UpdateEffectStatusIconRet::
|
||||
updatestatusicon BS_EFFECT_BATTLER
|
||||
waitstate
|
||||
trytriggerstatusform
|
||||
flushtextbox
|
||||
return
|
||||
|
||||
BattleScript_YawnMakesAsleep::
|
||||
@ -8734,14 +8895,8 @@ BattleScript_SoundproofProtected::
|
||||
goto BattleScript_MoveEnd
|
||||
|
||||
BattleScript_IceFaceNullsDamage::
|
||||
attackstring
|
||||
attackanimation
|
||||
waitanimation
|
||||
effectivenesssound
|
||||
hitanimation BS_TARGET
|
||||
waitstate
|
||||
call BattleScript_TargetFormChangeWithString
|
||||
goto BattleScript_MoveEnd
|
||||
return
|
||||
|
||||
BattleScript_DazzlingProtected::
|
||||
attackstring
|
||||
@ -8765,14 +8920,14 @@ BattleScript_GrassyTerrainLoop:
|
||||
printstring STRINGID_GRASSYTERRAINHEALS
|
||||
waitmessage B_WAIT_TIME_LONG
|
||||
BattleScript_GrassyTerrainHpChange:
|
||||
orword gHitMarker, HITMARKER_SKIP_DMG_TRACK | HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_DAMAGE
|
||||
orword gHitMarker, HITMARKER_IGNORE_BIDE | HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_DAMAGE
|
||||
healthbarupdate BS_ATTACKER
|
||||
datahpupdate BS_ATTACKER
|
||||
BattleScript_GrassyTerrainLoopIncrement::
|
||||
addbyte gBattleCommunication, 1
|
||||
jumpifbytenotequal gBattleCommunication, gBattlersCount, BattleScript_GrassyTerrainLoop
|
||||
BattleScript_GrassyTerrainLoopEnd::
|
||||
bicword gHitMarker, HITMARKER_SKIP_DMG_TRACK | HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_DAMAGE
|
||||
bicword gHitMarker, HITMARKER_IGNORE_BIDE | HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_DAMAGE
|
||||
jumpifword CMP_COMMON_BITS, gFieldStatuses, STATUS_FIELD_TERRAIN_PERMANENT, BattleScript_GrassyTerrainHealEnd
|
||||
BattleScript_GrassyTerrainHealEnd:
|
||||
end2
|
||||
@ -9050,7 +9205,7 @@ BattleScript_KingsShieldEffect::
|
||||
return
|
||||
|
||||
BattleScript_BanefulBunkerEffect::
|
||||
orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_IGNORE_SAFEGUARD | HITMARKER_PASSIVE_DAMAGE
|
||||
orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_STATUS_ABILITY_EFFECT | HITMARKER_PASSIVE_DAMAGE
|
||||
bichalfword gMoveResultFlags, MOVE_RESULT_NO_EFFECT
|
||||
seteffectsecondary
|
||||
setmoveeffect 0
|
||||
@ -9328,7 +9483,7 @@ BattleScript_ItemHealHP_RemoveItemRet_Anim:
|
||||
playanimation BS_SCRIPTING, B_ANIM_HELD_ITEM_EFFECT
|
||||
printstring STRINGID_PKMNSITEMRESTOREDHEALTH
|
||||
waitmessage B_WAIT_TIME_LONG
|
||||
orword gHitMarker, HITMARKER_SKIP_DMG_TRACK | HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_DAMAGE
|
||||
orword gHitMarker, HITMARKER_IGNORE_BIDE | HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_DAMAGE
|
||||
healthbarupdate BS_SCRIPTING
|
||||
datahpupdate BS_SCRIPTING
|
||||
removeitem BS_SCRIPTING
|
||||
@ -9343,7 +9498,7 @@ BattleScript_ItemHealHP_RemoveItemEnd2_Anim:
|
||||
playanimation BS_ATTACKER, B_ANIM_HELD_ITEM_EFFECT
|
||||
printstring STRINGID_PKMNSITEMRESTOREDHEALTH
|
||||
waitmessage B_WAIT_TIME_LONG
|
||||
orword gHitMarker, HITMARKER_SKIP_DMG_TRACK | HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_DAMAGE
|
||||
orword gHitMarker, HITMARKER_IGNORE_BIDE | HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_DAMAGE
|
||||
healthbarupdate BS_ATTACKER
|
||||
datahpupdate BS_ATTACKER
|
||||
removeitem BS_ATTACKER
|
||||
@ -9399,7 +9554,7 @@ BattleScript_ItemHealHP_Ret::
|
||||
playanimation BS_ATTACKER, B_ANIM_HELD_ITEM_EFFECT
|
||||
printstring STRINGID_PKMNSITEMRESTOREDHPALITTLE
|
||||
waitmessage B_WAIT_TIME_LONG
|
||||
orword gHitMarker, HITMARKER_SKIP_DMG_TRACK | HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_IGNORE_DISGUISE | HITMARKER_PASSIVE_DAMAGE
|
||||
orword gHitMarker, HITMARKER_IGNORE_BIDE | HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_IGNORE_DISGUISE | HITMARKER_PASSIVE_DAMAGE
|
||||
healthbarupdate BS_ATTACKER
|
||||
datahpupdate BS_ATTACKER
|
||||
return
|
||||
@ -9454,7 +9609,7 @@ BattleScript_BerryConfuseHealEnd2_Anim:
|
||||
playanimation BS_SCRIPTING, B_ANIM_HELD_ITEM_EFFECT
|
||||
printstring STRINGID_PKMNSITEMRESTOREDHEALTH
|
||||
waitmessage B_WAIT_TIME_LONG
|
||||
orword gHitMarker, HITMARKER_SKIP_DMG_TRACK | HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_DAMAGE
|
||||
orword gHitMarker, HITMARKER_IGNORE_BIDE | HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_DAMAGE
|
||||
healthbarupdate BS_SCRIPTING
|
||||
datahpupdate BS_SCRIPTING
|
||||
printstring STRINGID_FORXCOMMAYZ
|
||||
@ -9473,7 +9628,7 @@ BattleScript_BerryConfuseHealRet_Anim:
|
||||
playanimation BS_SCRIPTING, B_ANIM_HELD_ITEM_EFFECT
|
||||
printstring STRINGID_PKMNSITEMRESTOREDHEALTH
|
||||
waitmessage B_WAIT_TIME_LONG
|
||||
orword gHitMarker, HITMARKER_SKIP_DMG_TRACK | HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_DAMAGE
|
||||
orword gHitMarker, HITMARKER_IGNORE_BIDE | HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_DAMAGE
|
||||
healthbarupdate BS_SCRIPTING
|
||||
datahpupdate BS_SCRIPTING
|
||||
printstring STRINGID_FORXCOMMAYZ
|
||||
@ -9780,7 +9935,7 @@ BattleScript_JabocaRowapBerryActivate_Dmg:
|
||||
@ z moves / effects
|
||||
BattleScript_ZMoveActivateDamaging::
|
||||
flushtextbox
|
||||
trytrainerslidezmovemsg BS_ATTACKER
|
||||
trytrainerslidezmovemsg
|
||||
printstring STRINGID_ZPOWERSURROUNDS
|
||||
playanimation BS_ATTACKER, B_ANIM_ZMOVE_ACTIVATE, NULL
|
||||
printstring STRINGID_ZMOVEUNLEASHED
|
||||
@ -9789,7 +9944,7 @@ BattleScript_ZMoveActivateDamaging::
|
||||
|
||||
BattleScript_ZMoveActivateStatus::
|
||||
flushtextbox
|
||||
trytrainerslidezmovemsg BS_ATTACKER
|
||||
trytrainerslidezmovemsg
|
||||
savetarget
|
||||
printstring STRINGID_ZPOWERSURROUNDS
|
||||
playanimation BS_ATTACKER, B_ANIM_ZMOVE_ACTIVATE, NULL
|
||||
@ -10080,9 +10235,6 @@ BattleScript_PastelVeilLoopIncrement:
|
||||
BattleScript_PastelVeilEnd:
|
||||
end3
|
||||
|
||||
sByteFour:
|
||||
.byte MAX_BATTLERS_COUNT
|
||||
|
||||
BattleScript_NeutralizingGasExits::
|
||||
savetarget
|
||||
pause B_WAIT_TIME_SHORT
|
||||
@ -10092,7 +10244,7 @@ BattleScript_NeutralizingGasExits::
|
||||
BattleScript_NeutralizingGasExitsLoop:
|
||||
switchinabilities BS_TARGET
|
||||
addbyte gBattlerTarget, 1
|
||||
jumpifbytenotequal gBattlerTarget, sByteFour, BattleScript_NeutralizingGasExitsLoop @ SOMEHOW, comparing to gBattlersCount is problematic.
|
||||
jumpifbytenotequal gBattlerTarget, gBattlersCount, BattleScript_NeutralizingGasExitsLoop
|
||||
restoretarget
|
||||
return
|
||||
|
||||
@ -10211,7 +10363,7 @@ BattleScript_DamageNonTypesLoop::
|
||||
waitmessage B_WAIT_TIME_LONG
|
||||
effectivenesssound
|
||||
hitanimation BS_ATTACKER
|
||||
orword gHitMarker, HITMARKER_SKIP_DMG_TRACK | HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_DAMAGE | HITMARKER_GRUDGE
|
||||
orword gHitMarker, HITMARKER_IGNORE_BIDE | HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_DAMAGE | HITMARKER_GRUDGE
|
||||
healthbarupdate BS_ATTACKER
|
||||
datahpupdate BS_ATTACKER
|
||||
tryfaintmon BS_ATTACKER
|
||||
@ -10221,7 +10373,7 @@ BattleScript_DamageNonTypesLoopIncrement::
|
||||
addbyte gBattleCommunication, 1
|
||||
jumpifbytenotequal gBattleCommunication, gBattlersCount, BattleScript_DamageNonTypesLoop
|
||||
BattleScript_DamageNonTypesContinuesEnd::
|
||||
bicword gHitMarker, HITMARKER_SKIP_DMG_TRACK | HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_DAMAGE | HITMARKER_GRUDGE
|
||||
bicword gHitMarker, HITMARKER_IGNORE_BIDE | HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_DAMAGE | HITMARKER_GRUDGE
|
||||
end2
|
||||
|
||||
BattleScript_EffectTryReducePP::
|
||||
@ -10380,6 +10532,7 @@ BattleScript_EffectSteelsurge::
|
||||
|
||||
BattleScript_DynamaxBegins::
|
||||
flushtextbox
|
||||
trytrainerslidedynamaxmsg
|
||||
returnatktoball
|
||||
pause B_WAIT_TIME_SHORT
|
||||
returntoball BS_SCRIPTING
|
||||
@ -10454,8 +10607,6 @@ BattleScript_EffectSnow::
|
||||
attackcanceler
|
||||
attackstring
|
||||
ppreduce
|
||||
jumpifhalfword CMP_COMMON_BITS, gBattleWeather, B_WEATHER_SUN_PRIMAL, BattleScript_ExtremelyHarshSunlightWasNotLessened
|
||||
jumpifhalfword CMP_COMMON_BITS, gBattleWeather, B_WEATHER_RAIN_PRIMAL, BattleScript_NoReliefFromHeavyRain
|
||||
jumpifhalfword CMP_COMMON_BITS, gBattleWeather, B_WEATHER_STRONG_WINDS, BattleScript_MysteriousAirCurrentBlowsOn
|
||||
call BattleScript_CheckPrimalWeather
|
||||
setsnow
|
||||
goto BattleScript_MoveWeatherChange
|
||||
|
||||
@ -1005,6 +1005,13 @@ Common_EventScript_LegendaryFlewAway::
|
||||
release
|
||||
end
|
||||
|
||||
EventScript_VsSeekerChargingDone::
|
||||
special VsSeekerFreezeObjectsAfterChargeComplete
|
||||
waitstate
|
||||
special VsSeekerResetObjectMovementAfterChargeComplete
|
||||
releaseall
|
||||
end
|
||||
|
||||
.include "data/scripts/pc_transfer.inc"
|
||||
.include "data/scripts/questionnaire.inc"
|
||||
.include "data/scripts/abnormal_weather.inc"
|
||||
|
||||
@ -1,3 +1,4 @@
|
||||
#include "config/item.h"
|
||||
.include "asm/macros.inc"
|
||||
.include "constants/constants.inc"
|
||||
|
||||
@ -72,6 +73,9 @@ gFieldEffectScriptPointers::
|
||||
.4byte gFieldEffectScript_RayquazaSpotlight @ FLDEFF_RAYQUAZA_SPOTLIGHT
|
||||
.4byte gFieldEffectScript_DestroyDeoxysRock @ FLDEFF_DESTROY_DEOXYS_ROCK
|
||||
.4byte gFieldEffectScript_MoveDeoxysRock @ FLDEFF_MOVE_DEOXYS_ROCK
|
||||
.4byte gFldEffScript_UseVsSeeker @ FLDEFF_USE_VS_SEEKER
|
||||
.4byte gFldEffScript_XIcon @ FLDEFF_X_ICON
|
||||
.4byte gFldEffScript_DoubleExclMarkIcon @ FLDEFF_DOUBLE_EXCL_MARK_ICON
|
||||
|
||||
gFieldEffectScript_ExclamationMarkIcon1::
|
||||
field_eff_callnative FldEff_ExclamationMarkIcon
|
||||
@ -343,3 +347,15 @@ gFieldEffectScript_DestroyDeoxysRock::
|
||||
gFieldEffectScript_MoveDeoxysRock::
|
||||
field_eff_callnative FldEff_MoveDeoxysRock
|
||||
field_eff_end
|
||||
|
||||
gFldEffScript_UseVsSeeker::
|
||||
field_eff_callnative FldEff_UseVsSeeker
|
||||
field_eff_end
|
||||
|
||||
gFldEffScript_XIcon::
|
||||
field_eff_callnative FldEff_XIcon
|
||||
field_eff_end
|
||||
|
||||
gFldEffScript_DoubleExclMarkIcon::
|
||||
field_eff_callnative FldEff_DoubleExclMarkIcon
|
||||
field_eff_end
|
||||
|
||||
@ -257,14 +257,7 @@ MossdeepCity_SpaceCenter_2F_EventScript_ChoosePartyForMultiBattle::
|
||||
goto MossdeepCity_SpaceCenter_2F_EventScript_ReadyForBattlePrompt
|
||||
|
||||
MossdeepCity_SpaceCenter_2F_EventScript_DoStevenMultiBattle::
|
||||
special ReducePlayerPartyToSelectedMons
|
||||
frontier_set FRONTIER_DATA_SELECTED_MON_ORDER
|
||||
setvar VAR_0x8004, SPECIAL_BATTLE_STEVEN
|
||||
setvar VAR_0x8005, 0
|
||||
special DoSpecialTrainerBattle
|
||||
waitstate
|
||||
frontier_saveparty
|
||||
special LoadPlayerParty
|
||||
multi_2_vs_2 TRAINER_MAXIE_MOSSDEEP, MossdeepCity_SpaceCenter_2F_Text_JustWantToExpandLand, TRAINER_TABITHA_MOSSDEEP, MossdeepCity_SpaceCenter_Text_TabithaDefeat, PARTNER_STEVEN, TRAINER_BACK_PIC_STEVEN
|
||||
switch VAR_RESULT
|
||||
case 1, MossdeepCity_SpaceCenter_2F_EventScript_DefeatedMaxieTabitha
|
||||
fadescreen FADE_TO_BLACK
|
||||
@ -336,14 +329,6 @@ MossdeepCity_SpaceCenter_2F_EventScript_StevenFacePlayerWest::
|
||||
turnobject LOCALID_STEVEN, DIR_EAST
|
||||
return
|
||||
|
||||
MossdeepCity_SpaceCenter_2F_EventScript_MaxieTrainer::
|
||||
trainerbattle TRAINER_BATTLE_SET_TRAINER_A, TRAINER_MAXIE_MOSSDEEP, 0, MossdeepCity_SpaceCenter_2F_Text_JustWantToExpandLand, MossdeepCity_SpaceCenter_2F_Text_JustWantToExpandLand
|
||||
end
|
||||
|
||||
MossdeepCity_SpaceCenter_2F_EventScript_TabithaTrainer::
|
||||
trainerbattle TRAINER_BATTLE_SET_TRAINER_B, TRAINER_TABITHA_MOSSDEEP, 0, MossdeepCity_SpaceCenter_Text_TabithaDefeat, MossdeepCity_SpaceCenter_Text_TabithaDefeat
|
||||
end
|
||||
|
||||
MossdeepCity_SpaceCenter_2F_EventScript_RivalRayquazaCall::
|
||||
lockall
|
||||
checkplayergender
|
||||
|
||||
@ -216,3 +216,17 @@ Debug_ExpansionVersion:
|
||||
.string "pokeemerald-expansion {STR_VAR_1}$"
|
||||
|
||||
.endif
|
||||
|
||||
Debug_FlagsAndVarNotSetBattleConfigMessage::
|
||||
lockall
|
||||
message Debug_FlagsAndVarNotSetBattleConfigMessage_Text
|
||||
waitmessage
|
||||
waitbuttonpress
|
||||
releaseall
|
||||
end
|
||||
|
||||
Debug_FlagsAndVarNotSetBattleConfigMessage_Text:
|
||||
.string "Feature unavailable! Please define a\n"
|
||||
.string "usable flag and a usable var in:\l"
|
||||
.string "'include/config/battle.h'!$"
|
||||
|
||||
|
||||
@ -1,117 +1,152 @@
|
||||
EventScript_RepelWoreOff::
|
||||
.set LOCAL_VAR_SPRAY, VAR_0x8004
|
||||
.set LOCAL_VAR_NUM_SPRAY_STRENGTH, VAR_0x8005
|
||||
.set LOCAL_VAR_SPRAY_TYPE, VAR_0x8009
|
||||
.set LOCAL_VAR_NEW_SPRAY, VAR_0x8007
|
||||
|
||||
EventScript_BufferSprayName::
|
||||
.if VAR_LAST_REPEL_LURE_USED != 0
|
||||
bufferitemname STR_VAR_1, VAR_LAST_REPEL_LURE_USED
|
||||
return
|
||||
.endif
|
||||
specialvar LOCAL_VAR_SPRAY_TYPE, GetLastUsedSprayType
|
||||
compare LOCAL_VAR_SPRAY_TYPE, ITEM_REPEL
|
||||
goto_if_eq EventScript_BufferSprayName_2
|
||||
bufferitemname STR_VAR_1, ITEM_LURE
|
||||
EventScript_BufferSprayName_1:
|
||||
return
|
||||
|
||||
EventScript_BufferSprayName_2:
|
||||
bufferitemname STR_VAR_1, ITEM_REPEL
|
||||
goto EventScript_BufferSprayName_1
|
||||
|
||||
|
||||
EventScript_SprayWoreOff::
|
||||
lock
|
||||
call EventScript_BufferSprayName
|
||||
specialvar LOCAL_VAR_NUM_SPRAY_STRENGTH, GetNumberSprayStrength
|
||||
switch LOCAL_VAR_NUM_SPRAY_STRENGTH
|
||||
case 0, EventScript_SprayWoreOffMessage
|
||||
case 1, EventScript_UseSingleSpray
|
||||
goto EventScript_HandleMultipleSprays
|
||||
return
|
||||
|
||||
EventScript_HandleMultipleSprays::
|
||||
.if I_REPEL_LURE_MENU == TRUE
|
||||
checkitem ITEM_REPEL, 1
|
||||
goto_if_eq VAR_RESULT, TRUE, EventScript_RepelUseAnother
|
||||
checkitem ITEM_SUPER_REPEL, 1
|
||||
goto_if_eq VAR_RESULT, TRUE, EventScript_RepelUseAnother
|
||||
checkitem ITEM_MAX_REPEL, 1
|
||||
goto_if_eq VAR_RESULT, TRUE, EventScript_RepelUseAnother
|
||||
goto EventScript_ChooseWhichSpray
|
||||
.else
|
||||
goto EventScript_UseSingleSpray
|
||||
.endif
|
||||
return
|
||||
|
||||
|
||||
EventScript_SprayWoreOffMessage::
|
||||
msgbox Text_SprayWoreOff, MSGBOX_SIGN
|
||||
releaseall
|
||||
end
|
||||
|
||||
|
||||
EventScript_UseSingleSpray::
|
||||
.if VAR_LAST_REPEL_LURE_USED == 0
|
||||
call EventScript_UseDifferentSpray
|
||||
.else
|
||||
checkitem VAR_LAST_REPEL_LURE_USED, 1
|
||||
goto_if_eq VAR_RESULT, TRUE, EventScript_RepelUseAnother
|
||||
compare VAR_RESULT, TRUE
|
||||
goto_if_eq EventScript_UseSingleSpray_2
|
||||
call EventScript_UseDifferentSpray
|
||||
.endif
|
||||
lock
|
||||
msgbox Text_RepelWoreOff, MSGBOX_SIGN
|
||||
release
|
||||
EventScript_UseSingleSpray_1:
|
||||
closemessage
|
||||
releaseall
|
||||
end
|
||||
|
||||
EventScript_RepelUseAnother:
|
||||
lock
|
||||
msgbox Text_UseAnotherRepel, MSGBOX_YESNO
|
||||
.if VAR_LAST_REPEL_LURE_USED != 0
|
||||
EventScript_UseSingleSpray_2:
|
||||
call EventScript_UseLastUsedSpray
|
||||
goto EventScript_UseSingleSpray_1
|
||||
.endif
|
||||
|
||||
|
||||
EventScript_SetSingleSprayAndUse::
|
||||
setvar VAR_RESULT, 0
|
||||
call EventScript_UseSpray
|
||||
return
|
||||
|
||||
|
||||
EventScript_UseDifferentSpray::
|
||||
specialvar LOCAL_VAR_NEW_SPRAY, GetSprayId
|
||||
bufferitemname STR_VAR_2, LOCAL_VAR_NEW_SPRAY
|
||||
msgbox Text_SprayWoreOffAskUseX, MSGBOX_YESNO
|
||||
compare VAR_RESULT, YES
|
||||
goto_if_eq EventScript_UseDifferentSpray_2
|
||||
EventScript_UseDifferentSpray_1:
|
||||
return
|
||||
|
||||
EventScript_UseDifferentSpray_2:
|
||||
copyvar LOCAL_VAR_SPRAY, LOCAL_VAR_NEW_SPRAY
|
||||
call EventScript_SetSingleSprayAndUse
|
||||
goto EventScript_UseDifferentSpray_1
|
||||
|
||||
|
||||
.if VAR_LAST_REPEL_LURE_USED != 0
|
||||
EventScript_UseLastUsedSpray::
|
||||
msgbox Text_SprayWoreOffAskUseAnother, MSGBOX_YESNO
|
||||
compare VAR_RESULT, YES
|
||||
goto_if_eq EventScript_UseLastUsedSpray_2
|
||||
EventScript_UseLastUsedSpray_1:
|
||||
return
|
||||
|
||||
EventScript_UseLastUsedSpray_2:
|
||||
copyvar LOCAL_VAR_SPRAY, VAR_LAST_REPEL_LURE_USED
|
||||
call EventScript_SetSingleSprayAndUse
|
||||
goto EventScript_UseLastUsedSpray_1
|
||||
.endif
|
||||
|
||||
|
||||
.if I_REPEL_LURE_MENU == TRUE
|
||||
goto_if_eq VAR_RESULT, NO, EventScript_RepelWoreOff_End
|
||||
callnative TryDrawRepelMenu
|
||||
goto_if_eq VAR_RESULT, FALSE, EventScript_RepelWoreOff_Chose
|
||||
EventScript_ChooseWhichSpray::
|
||||
message Text_SprayWoreOffAskUseAnother
|
||||
waitmessage
|
||||
callnative DrawSprayMenu
|
||||
waitstate
|
||||
goto_if_eq VAR_RESULT, 127, EventScript_RepelWoreOff_End
|
||||
EventScript_RepelWoreOff_Chose:
|
||||
callnative HandleRepelMenuChoice
|
||||
bufferitemname 1, VAR_0x8004
|
||||
removeitem VAR_0x8004, 1
|
||||
playse SE_REPEL
|
||||
msgbox Text_UsedNewRepelLure, MSGBOX_SIGN
|
||||
.else
|
||||
goto_if_eq VAR_RESULT, YES, EventScript_UsedRepel
|
||||
.endif
|
||||
EventScript_RepelWoreOff_End:
|
||||
release
|
||||
compare VAR_RESULT, MULTI_B_PRESSED
|
||||
goto_if_ne EventScript_ChooseWhichSpray_3
|
||||
EventScript_ChooseWhichSpray_1:
|
||||
closemessage
|
||||
releaseall
|
||||
end
|
||||
|
||||
EventScript_UsedRepel:
|
||||
bufferitemname 1, VAR_LAST_REPEL_LURE_USED
|
||||
EventScript_ChooseWhichSpray_2:
|
||||
call EventScript_UseSpray
|
||||
goto EventScript_ChooseWhichSpray_1
|
||||
|
||||
EventScript_ChooseWhichSpray_3:
|
||||
compare VAR_RESULT, VAR_0x8003
|
||||
goto_if_ne EventScript_ChooseWhichSpray_2
|
||||
goto EventScript_ChooseWhichSpray_1
|
||||
.endif
|
||||
|
||||
|
||||
EventScript_UseSpray::
|
||||
playse SE_REPEL
|
||||
lock
|
||||
msgbox Text_UsedNewRepelLure, MSGBOX_SIGN
|
||||
removeitem VAR_LAST_REPEL_LURE_USED, 1
|
||||
waitse
|
||||
callnative HandleUseExpiredRepel
|
||||
release
|
||||
end
|
||||
callnative HandleSprayMenuChoice
|
||||
removeitem LOCAL_VAR_SPRAY, 1
|
||||
bufferitemname STR_VAR_2, LOCAL_VAR_SPRAY
|
||||
msgbox Text_SprayWoreOffUseX, MSGBOX_SIGN
|
||||
return
|
||||
|
||||
EventScript_LureWoreOff::
|
||||
.if I_REPEL_LURE_MENU == TRUE
|
||||
checkitem ITEM_LURE, 1
|
||||
goto_if_eq VAR_RESULT, TRUE, EventScript_LureUseAnother
|
||||
checkitem ITEM_SUPER_LURE, 1
|
||||
goto_if_eq VAR_RESULT, TRUE, EventScript_LureUseAnother
|
||||
checkitem ITEM_MAX_LURE, 1
|
||||
goto_if_eq VAR_RESULT, TRUE, EventScript_LureUseAnother
|
||||
.else
|
||||
checkitem VAR_LAST_REPEL_LURE_USED, 1
|
||||
goto_if_eq VAR_RESULT, TRUE, EventScript_LureUseAnother
|
||||
.endif
|
||||
lock
|
||||
msgbox Text_LureWoreOff, MSGBOX_SIGN
|
||||
release
|
||||
end
|
||||
|
||||
EventScript_LureUseAnother:
|
||||
lock
|
||||
msgbox Text_UseAnotherLure, MSGBOX_YESNO
|
||||
.if I_REPEL_LURE_MENU == TRUE
|
||||
goto_if_eq VAR_RESULT, NO, EventScript_LureWoreOff_End
|
||||
callnative TryDrawLureMenu
|
||||
goto_if_eq VAR_RESULT, FALSE, EventScript_LureWoreOff_Chose
|
||||
waitstate
|
||||
goto_if_eq VAR_RESULT, 127, EventScript_LureWoreOff_End
|
||||
EventScript_LureWoreOff_Chose:
|
||||
callnative HandleLureMenuChoice
|
||||
bufferitemname 1, VAR_0x8004
|
||||
removeitem VAR_0x8004, 1
|
||||
playse SE_REPEL
|
||||
msgbox Text_UsedNewRepelLure, MSGBOX_SIGN
|
||||
.else
|
||||
goto_if_eq VAR_RESULT, YES, EventScript_UsedLure
|
||||
.endif
|
||||
EventScript_LureWoreOff_End:
|
||||
release
|
||||
end
|
||||
Text_SprayWoreOff::
|
||||
.string "{STR_VAR_1}'s effect wore off…$"
|
||||
|
||||
EventScript_UsedLure:
|
||||
bufferitemname 1, VAR_LAST_REPEL_LURE_USED
|
||||
playse SE_REPEL
|
||||
lock
|
||||
msgbox Text_UsedNewRepelLure, MSGBOX_SIGN
|
||||
removeitem VAR_LAST_REPEL_LURE_USED, 1
|
||||
waitse
|
||||
callnative HandleUseExpiredLure
|
||||
release
|
||||
end
|
||||
|
||||
Text_RepelWoreOff:
|
||||
.string "REPEL's effect wore off…$"
|
||||
|
||||
Text_UseAnotherRepel::
|
||||
.string "REPEL's effect wore off!\n"
|
||||
Text_SprayWoreOffAskUseAnother::
|
||||
.string "{STR_VAR_1}'s effect wore off!\n"
|
||||
.string "Use another?$"
|
||||
|
||||
Text_LureWoreOff:
|
||||
.string "Lure's effect wore off…$"
|
||||
Text_SprayWoreOffAskUseX::
|
||||
.string "{STR_VAR_1}'s effect wore off…\n"
|
||||
.string "Use a {STR_VAR_2}?$"
|
||||
|
||||
Text_UseAnotherLure::
|
||||
.string "Lure's effect wore off!\n"
|
||||
.string "Use another?$"
|
||||
|
||||
Text_UsedNewRepelLure::
|
||||
Text_SprayWoreOffUseX::
|
||||
.string "{PLAYER} used the\n"
|
||||
.string "{STR_VAR_2}.$"
|
||||
|
||||
@ -536,3 +536,9 @@ gSpecials::
|
||||
def_special TrySetBattleTowerLinkType
|
||||
def_special SetTotemBoost
|
||||
def_special TrySpecialOverworldEvo
|
||||
def_special GetNumberSprayStrength
|
||||
def_special GetSprayId
|
||||
def_special GetLastUsedSprayType
|
||||
def_special TrySkyBattle
|
||||
def_special VsSeekerResetObjectMovementAfterChargeComplete
|
||||
def_special VsSeekerFreezeObjectsAfterChargeComplete
|
||||
|
||||
@ -4779,3 +4779,18 @@ Route134_Text_HudsonPostBattle:
|
||||
.string "Our boat drifted out to sea.\p"
|
||||
.string "My buddy's a timid fellow, so I'm\n"
|
||||
.string "worried about him.$"
|
||||
|
||||
VSSeeker_Text_BatteryNotChargedNeedXSteps::
|
||||
.string "The battery isn't charged enough.\p"
|
||||
.string "No. of steps required to fully\n"
|
||||
.string "charge the battery: {STR_VAR_1}{PAUSE_UNTIL_PRESS}$"
|
||||
|
||||
VSSeeker_Text_NoTrainersWithinRange::
|
||||
.string "There are no Trainers within range\n"
|
||||
.string "who can battle…\p"
|
||||
.string "The VS Seeker was turned off.{PAUSE_UNTIL_PRESS}$"
|
||||
|
||||
VSSeeker_Text_TrainersNotReady::
|
||||
.string "The other Trainers don't appear\n"
|
||||
.string "to be ready for battle.\p"
|
||||
.string "Let's wait till later.{PAUSE_UNTIL_PRESS}$"
|
||||
|
||||
126
docs/changelogs/1.6.2.md
Normal file
@ -0,0 +1,126 @@
|
||||
# Version 1.6.2
|
||||
|
||||
```md
|
||||
## How to update
|
||||
- If you haven't set up a remote, run the command `git remote add RHH https://github.com/rh-hideout/pokeemerald-expansion`.
|
||||
- Once you have your remote set up, run the command `git pull RHH expansion/1.6.2`.
|
||||
```
|
||||
|
||||
## 🌋 *IMPORTANT CHANGES* 🌋
|
||||
### Battle changes
|
||||
* Battler Types are now obtained via `GetBattlerType` instead of `gBattleMons[battlerId].type1/2/3` to better consider Roost. Be sure to update your custom battle effects to account for this change.
|
||||
|
||||
## 🧬 General 🧬
|
||||
### Fixed
|
||||
* Fixed Cheat Start not initiating time-based events by @AsparagusEduardo in https://github.com/rh-hideout/pokeemerald-expansion/pull/3446
|
||||
|
||||
## 🐉 Pokémon 🐉
|
||||
### Changed
|
||||
* Updated Cresselia's base stats to Gen 9 by @LOuroboros in https://github.com/rh-hideout/pokeemerald-expansion/pull/3419
|
||||
* Updated Zacian/Zamazenta base stats to Gen 9 by @AsparagusEduardo in https://github.com/rh-hideout/pokeemerald-expansion/pull/3421
|
||||
### Fixed
|
||||
* Fixed Kleavor, Hisuian Sneasel and Sneasler missing their SV abilities by @LOuroboros in https://github.com/rh-hideout/pokeemerald-expansion/pull/3391
|
||||
* Fixed Bergmite/Avalugg old and updated egg groups being switched by @AsparagusEduardo in https://github.com/rh-hideout/pokeemerald-expansion/pull/3380
|
||||
|
||||
## 🤹 Moves 🤹
|
||||
### Changed
|
||||
* Quick Draw now uses weighted RNG by @Bassoonian in https://github.com/rh-hideout/pokeemerald-expansion/pull/3399
|
||||
* Added `IS_BATTLER_TYPELESS` macro that checks if the specified battler has no valid type by @LOuroboros in https://github.com/rh-hideout/pokeemerald-expansion/pull/3303
|
||||
### Fixed
|
||||
* Fixed Protect failing if the user flinched on the previous turn by @DizzyEggg in https://github.com/rh-hideout/pokeemerald-expansion/pull/3345
|
||||
* Fixed entry hazards not working properly being cleared on switch-in by @DizzyEggg in https://github.com/rh-hideout/pokeemerald-expansion/pull/3316
|
||||
* This includes Toxic Spikes not working if Pecha Berry actived on the previous turn.
|
||||
* Fixed Roost overwriting other type changing at the end of the turn (Soak, Forest's Curse, Color Change, etc.) by @BLourenco in https://github.com/rh-hideout/pokeemerald-expansion/pull/3258
|
||||
* Now it suppresses the user's Flying-type rather than remove and re-add it.
|
||||
* Fixes Salt Cure visual bug if mon fainted by direct attack by @AlexOn1ine in https://github.com/rh-hideout/pokeemerald-expansion/pull/3388
|
||||
* Fixed Purifying Salt not preventing the use of Rest by @Bassoonian in https://github.com/rh-hideout/pokeemerald-expansion/pull/3399
|
||||
* Fixed Make it Rain lowering Sp. Attack twice if hitting 2 targets in double battles by @AlexOn1ine in https://github.com/rh-hideout/pokeemerald-expansion/pull/3441
|
||||
* Fixed Reflect Type not properly handle 3rd types by @LOuroboros in https://github.com/rh-hideout/pokeemerald-expansion/pull/3303
|
||||
* Fixed form change triggered by switching not occuring when using moves like U-Turn or Baton Pass by @AlexOn1ine in https://github.com/rh-hideout/pokeemerald-expansion/pull/3463
|
||||
* Fixed Last Resort not counting Sleep Talk as used for its effect by @DizzyEggg in https://github.com/rh-hideout/pokeemerald-expansion/pull/3378
|
||||
|
||||
## 🎭 Abilities 🎭
|
||||
### Changed
|
||||
* Removed unused `STATUS3_CANT_SCORE_A_CRIT` by @AlexOn1ine in https://github.com/rh-hideout/pokeemerald-expansion/pull/3377
|
||||
* Moved Beads of Ruin and Sword of Ruin damage to the appropiate damage modifier functions by @kittenchilly in https://github.com/rh-hideout/pokeemerald-expansion/pull/3415
|
||||
### Fixed
|
||||
* Fixed Intimidate increasing the attack of both opponents if one of them has Contrary in double battles by @DizzyEggg in https://github.com/rh-hideout/pokeemerald-expansion/pull/3365
|
||||
* Fixed Battle/Shell Armor not preventing critical hits by @AlexOn1ine in https://github.com/rh-hideout/pokeemerald-expansion/pull/3377
|
||||
* Fixed Rivalry's effect being reversed by @AsparagusEduardo in https://github.com/rh-hideout/pokeemerald-expansion/pull/3381
|
||||
* Fixed Rivalry lowering attack if either attacker or target were genderless by @AsparagusEduardo in https://github.com/rh-hideout/pokeemerald-expansion/pull/3381
|
||||
* Fixed missing Poison Heal Ability Popup by @Bassoonian in https://github.com/rh-hideout/pokeemerald-expansion/pull/3385
|
||||
* Fixed Parental Bond not working at all by @AsparagusEduardo in https://github.com/rh-hideout/pokeemerald-expansion/pull/3417
|
||||
* Fixed Beads of Ruin and Sword of Ruin damage modifiers by @kittenchilly in https://github.com/rh-hideout/pokeemerald-expansion/pull/3415
|
||||
* Fixed Sheer Force not negating effects that benefit the user (eg. Flame Charge, Power-Up Punch) by @DizzyEggg in https://github.com/rh-hideout/pokeemerald-expansion/pull/3378
|
||||
* Fixed Strength Sap not healing the user when used on a Substitute by @DizzyEggg in https://github.com/rh-hideout/pokeemerald-expansion/pull/3486
|
||||
* Fixed Substitute showing the "took damage for" message if Strength Sap was used on it by @DizzyEggg in https://github.com/rh-hideout/pokeemerald-expansion/pull/3486
|
||||
* Fixed Weak Armor interrupting Multi Hit moves by @DizzyEggg in https://github.com/rh-hideout/pokeemerald-expansion/pull/3497
|
||||
|
||||
## 🧶 Items 🧶
|
||||
### Fixed
|
||||
* Fixed Shiny Charm doing too many rerolls by default by @kittenchilly in https://github.com/rh-hideout/pokeemerald-expansion/pull/3327
|
||||
* Fixed Berserk Gene activating for the wrong Pokémon double battles by @DizzyEggg in https://github.com/rh-hideout/pokeemerald-expansion/pull/3363
|
||||
* Fixed Red Card not being consumed after opponent Sticky Web activation by @DizzyEggg in https://github.com/rh-hideout/pokeemerald-expansion/pull/3364
|
||||
* Fixed implementation of Gen6 that didn't allow for the Exp Share flag to be set via script without setting the item to the Gen 6+ version by @AsparagusEduardo in https://github.com/rh-hideout/pokeemerald-expansion/pull/3384
|
||||
* Fixed Kee Berry raising defense by 1 stage instead of 2 by @AlexOn1ine in https://github.com/rh-hideout/pokeemerald-expansion/pull/3409
|
||||
* Fixed Kee Berry incorrect stat raise message by @AlexOn1ine in https://github.com/rh-hideout/pokeemerald-expansion/pull/3409
|
||||
* Fixed Razor Fang not being able to be used directly even if `I_USE_EVO_HELD_ITEMS_FROM_BAG` was set to `TRUE` by @fdeblasio in https://github.com/rh-hideout/pokeemerald-expansion/pull/3456
|
||||
|
||||
## 🧹 Cleanup 🧹
|
||||
* `AbilityBattleEffects` uses `B_MSG_TERRAIN` constants for field terrain intro text by @LOuroboros in https://github.com/rh-hideout/pokeemerald-expansion/pull/3410
|
||||
* Removed all trailing whitespace by @kittenchilly in https://github.com/rh-hideout/pokeemerald-expansion/pull/3472
|
||||
|
||||
## 🧪 Test Runner 🧪
|
||||
### Added
|
||||
* Flinch tests by @DizzyEggg in https://github.com/rh-hideout/pokeemerald-expansion/pull/3345
|
||||
* Berserk Gene double battle tests by @DizzyEggg in https://github.com/rh-hideout/pokeemerald-expansion/pull/3363
|
||||
* More specific Toxic Spikes tests by @DizzyEggg in https://github.com/rh-hideout/pokeemerald-expansion/pull/3316
|
||||
* Red Card/Sticky Web test @DizzyEggg in https://github.com/rh-hideout/pokeemerald-expansion/pull/3364
|
||||
* Intimidate/Contrary double battle test by @DizzyEggg in https://github.com/rh-hideout/pokeemerald-expansion/pull/3365
|
||||
* Critical Hit tests by @AlexOn1ine in https://github.com/rh-hideout/pokeemerald-expansion/pull/3377
|
||||
* Roost tests by @BLourenco in https://github.com/rh-hideout/pokeemerald-expansion/pull/3258
|
||||
* Rivalry tests by @AsparagusEduardo in https://github.com/rh-hideout/pokeemerald-expansion/pull/3381
|
||||
* Various tests by @Bassoonian in https://github.com/rh-hideout/pokeemerald-expansion/pull/3385
|
||||
* Defeatist, Dragon's Maw, Earth Eater, Gale Wings, Poison Heal, Rocky Payload, Sap Sipper, Steelworker and Transistor.
|
||||
* Various tests by @Bassoonian in https://github.com/rh-hideout/pokeemerald-expansion/pull/3399
|
||||
* Beast Boost, Ice Scales, Neuroforce, Purifying Salt, Quick Draw and Sharpness.
|
||||
* Berry tests @AlexOn1ine in https://github.com/rh-hideout/pokeemerald-expansion/pull/3409
|
||||
* Full: Apicot, Custap, Ganlon, Jaboca, Kee, Lansat, Liechi, Maranga, Micle, Petaya, Rowap and Salac Berries.
|
||||
* TODO: Starf Berry.
|
||||
* Weather and type-specific tests by @kittenchilly in https://github.com/rh-hideout/pokeemerald-expansion/pull/3260
|
||||
* Full: Freezing, Hail, Moonlight, Morning Sun, Sandstorm, Snow, Solar Beam/Blade, Steel poisoning, Synthesis, Thunder and Weather Ball.
|
||||
* Partial: Prankster, Safety Goggles, Aurora Veil, Hurricane, Leech Seed and OHKO moves.
|
||||
* TODO: Harvest.
|
||||
* Single Parental Bond test by @AsparagusEduardo in https://github.com/rh-hideout/pokeemerald-expansion/pull/3417
|
||||
* Several tests by @DizzyEggg in https://github.com/rh-hideout/pokeemerald-expansion/pull/3378
|
||||
* Full: Weak Armor, Last Resort, Stealth Rock.
|
||||
* Completed Weak Armor tests by @AsparagusEduardo in https://github.com/rh-hideout/pokeemerald-expansion/pull/3493
|
||||
* Partial: Defiant, Sheer Force, White Herb, Strength Sap.
|
||||
### Changed
|
||||
* Red Card tests now check if the item was consumed by @DizzyEggg in https://github.com/rh-hideout/pokeemerald-expansion/pull/3364
|
||||
* Tests now cannot use `i` in their cycles to avoid messing with `PARAMETRIZE` by @mrgriffin in https://github.com/rh-hideout/pokeemerald-expansion/pull/3408
|
||||
* Moved battle tests off the heap by @mrgriffin in https://github.com/rh-hideout/pokeemerald-expansion/pull/3414
|
||||
* Moved Powder/Grass test to `move_flags` folder by @kittenchilly in https://github.com/rh-hideout/pokeemerald-expansion/pull/3260
|
||||
* Continuous `NOT x; NOT y;` are now not allowed in tests due to them not acting as one would expect by @mrgriffin in https://github.com/rh-hideout/pokeemerald-expansion/pull/3459
|
||||
* Test writers should use `NONE_OF { x; y; }` instead.
|
||||
### Fixed
|
||||
* Fixed CreateNPCTrainerPartyForTrainer test failing on modern by @DizzyEggg in https://github.com/rh-hideout/pokeemerald-expansion/pull/3367
|
||||
* Fixed `RNG_CRITICAL_HIT` by @mrgriffin and @AlexOn1ine in https://github.com/rh-hideout/pokeemerald-expansion/pull/3377
|
||||
* Fixed `ASSUMPTIONS` block not working by @DizzyEggg in https://github.com/rh-hideout/pokeemerald-expansion/pull/3368
|
||||
* Fixup by @mrgriffin in https://github.com/rh-hideout/pokeemerald-expansion/pull/3408
|
||||
* Fixed Beads of Ruin and Sword of Ruin damage tests by @kittenchilly in https://github.com/rh-hideout/pokeemerald-expansion/pull/3415
|
||||
* Fixes test RNG by @mrgriffin and @AlexOn1ine in https://github.com/rh-hideout/pokeemerald-expansion/pull/3433
|
||||
* Fixed battle test estimateCost bug by @mrgriffin in https://github.com/rh-hideout/pokeemerald-expansion/pull/3448
|
||||
* Test cleanup and improvements by @AsparagusEduardo in https://github.com/rh-hideout/pokeemerald-expansion/pull/3449
|
||||
* Removed duplicated Prankster TO_DO test.
|
||||
* Corrected Multi-hit test names (4 and 5 hits stated 35% instead of 15%).
|
||||
* Grouped Maranga Berry's Physical vs Special tests using PARAMETRIZE.
|
||||
* Improved Jaboca, Kee and Rowap tests by @AlexOn1ine
|
||||
* Fixed `ModifyPersonalityForNature` by @mrgriffin in https://github.com/rh-hideout/pokeemerald-expansion/pull/3452
|
||||
* Fixed test_runner.c modern warning by @mrgriffin in https://github.com/rh-hideout/pokeemerald-expansion/pull/3451
|
||||
|
||||
## New Contributors
|
||||
* @BLourenco made their first contribution in https://github.com/rh-hideout/pokeemerald-expansion/pull/3258
|
||||
|
||||
## Full Changelog
|
||||
https://github.com/rh-hideout/pokeemerald-expansion/compare/expansion/1.6.1...expansion/1.6.2
|
||||
584
docs/changelogs/1.7.0.md
Normal file
@ -0,0 +1,584 @@
|
||||
# Version 1.7.0
|
||||
|
||||
```md
|
||||
## How to update
|
||||
- If you haven't set up a remote, run the command `git remote add RHH https://github.com/rh-hideout/pokeemerald-expansion`.
|
||||
- Once you have your remote set up, run the command `git pull RHH expansion/1.7.0`.
|
||||
```
|
||||
|
||||
## 🌋 *IMPORTANT CHANGES* 🌋
|
||||
### [***The Expansion now uses Modern compilers by default***](https://github.com/rh-hideout/pokeemerald-expansion/pull/3305)
|
||||
* We have enabled `-Werror -Wall` in the Makefile. These flags show warnings for undefined behaviors in the old compiler (`agbcc`), and sets all warnings as errors. As such, we have updated the codebase so that all warnings that **gcc 13** throws are handled:
|
||||
* CI now uses devkitarm container to run a more modern gcc by @SBird1337 in https://github.com/rh-hideout/pokeemerald-expansion/pull/3429
|
||||
* Fix by @AsparagusEduardo in https://github.com/rh-hideout/pokeemerald-expansion/pull/3530
|
||||
* Fixed `-Wall -Werror` errors on Modern by @DizzyEggg in https://github.com/rh-hideout/pokeemerald-expansion/pull/3412
|
||||
* Fixed warnings introduced by gcc 13 by @SBird1337 in https://github.com/rh-hideout/pokeemerald-expansion/pull/3428
|
||||
* `-Warray-bounds`
|
||||
* `-Waddress`
|
||||
* `-Warray-parameter`
|
||||
* Fixed `-Wmaybe-uninitialized` for `ModifyPersonalityForNature` test by @SBird1337 in https://github.com/rh-hideout/pokeemerald-expansion/pull/3457
|
||||
* ***Modern compiler may raise the following errors for code introduced from outside the expansion, so we recommend solving those errors:***
|
||||
* `unused-function`. To solve it, add `UNUSED` to the function definition.
|
||||
```diff
|
||||
-static void Function(void)
|
||||
+static void UNUSED Function(void)
|
||||
```
|
||||
* `unused-variable`. To solve it, remove the unused variable.
|
||||
```diff
|
||||
static void Function(void)
|
||||
{
|
||||
- u8 unused;
|
||||
u8 used;
|
||||
...
|
||||
```
|
||||
* `unused-but-set-variable`. To solve it, add `UNUSED` to the variable definition.
|
||||
```diff
|
||||
static void Function(void)
|
||||
{
|
||||
- u8 unused;
|
||||
+ u8 UNUSED unused;
|
||||
u8 used;
|
||||
unused = DoSomething();
|
||||
...
|
||||
```
|
||||
* Updated modern compiler install instructions by @hedara90 in https://github.com/rh-hideout/pokeemerald-expansion/pull/3527
|
||||
* ***You may still use `agbcc` by adding*** `agbcc` to your `make` command to finish the update process before fixing these errors.
|
||||
* eg. `make -j8 agbcc`.
|
||||
* We may drop support for it in the future, so we recommend updating the code to support the new compilers.
|
||||
* This will generate `pokeemerald_agbcc.gba`, while modern will generate `pokeemerald.gba` by @Bassoonian in https://github.com/rh-hideout/pokeemerald-expansion/pull/3462
|
||||
|
||||
## 🧬 General 🧬
|
||||
### Added
|
||||
* Incorporated @TheXaman's HGSS Style Pokédex by @AaghatIsLive in https://github.com/rh-hideout/pokeemerald-expansion/pull/3288
|
||||
* Includes Dark Mode
|
||||
* Fix by @AaghatIsLive in https://github.com/rh-hideout/pokeemerald-expansion/pull/3479
|
||||
* Updated evolution strings by @Pawkkie in https://github.com/rh-hideout/pokeemerald-expansion/pull/3375
|
||||
* Changes to omit adding the code when disabling the feature by @SBird1337 in https://github.com/rh-hideout/pokeemerald-expansion/pull/3445
|
||||
* Teachable move list fix by @GraionDilach in https://github.com/rh-hideout/pokeemerald-expansion/pull/3624
|
||||
* Incorporated @DizzyEggg's nature color branch by @Bassoonian in https://github.com/rh-hideout/pokeemerald-expansion/pull/3582
|
||||
* Shows nature stat modifiers in summary screen.
|
||||
* Added `SUMMARY_SCREEN_NATURE_COLORS` config to disable it.
|
||||
* Updates stat reduction to blue to align with official implementation.
|
||||
* Added `I_SELL_VALUE_FRACTION` config that changes selling factor of items to 1/4th when set to Gen 9 by @kittenchilly in https://github.com/rh-hideout/pokeemerald-expansion/pull/3315
|
||||
* Added `P_FRIENDSHIP_EVO_THRESHOLD` config to update the Friendship evolution threshold to Gen8+'s standard by @kittenchilly in https://github.com/rh-hideout/pokeemerald-expansion/pull/3376
|
||||
* Debug Menu
|
||||
* Added `ROM Space` Utility option to check ROM space by @mrgriffin in https://github.com/rh-hideout/pokeemerald-expansion/pull/3453
|
||||
* Added `Toggle Match Call` Flag option to toggle Match Call by @AsparagusEduardo in https://github.com/rh-hideout/pokeemerald-expansion/pull/3489
|
||||
* Added `Move Reminder` option by @Bassoonian in https://github.com/rh-hideout/pokeemerald-expansion/pull/3707
|
||||
* Moved Party/Boxes related functions to their own menu by @Bassoonian in https://github.com/rh-hideout/pokeemerald-expansion/pull/3707
|
||||
* Added expansion Rom Header by @mrgriffin in https://github.com/rh-hideout/pokeemerald-expansion/pull/3454
|
||||
* Added defines for Expansion version number.
|
||||
* Added option to see the version number in debug menu.
|
||||
* Added option to restore Japan-only Walda PC backgrounds by @fdeblasio in https://github.com/rh-hideout/pokeemerald-expansion/pull/3550
|
||||
* Added `BATTLE_PYRAMID_RANDOM_ENCOUNTERS` config to enable Battle Pyramid Wild Encounter randomization by @ghoulslash in https://github.com/rh-hideout/pokeemerald-expansion/pull/2581
|
||||
* Added a `GetSpeciesPreEvolution` function by @LOuroboros in https://github.com/rh-hideout/pokeemerald-expansion/pull/3696
|
||||
### Changed
|
||||
* Converted `Get(Box)MonData2` to proper functions by @AsparagusEduardo in https://github.com/rh-hideout/pokeemerald-expansion/pull/3416
|
||||
* Added `src/data/map_group_count.h` to `.gitignore` by @LOuroboros in https://github.com/rh-hideout/pokeemerald-expansion/pull/3423
|
||||
* `Cheat Start` option now gives all badges and enables all Fly locations. `Fly to...` option no longer enables all Fly locations by @AsparagusEduardo in https://github.com/rh-hideout/pokeemerald-expansion/pull/3489
|
||||
* Better documentation for Type Effectiveness table by @AsparagusEduardo in https://github.com/rh-hideout/pokeemerald-expansion/pull/3374
|
||||
* Generational defines now start at `GEN_1` instead of `GEN_3` by @Bassoonian in https://github.com/rh-hideout/pokeemerald-expansion/pull/3628
|
||||
* Fixes and cleanup
|
||||
* By @GraionDilach in https://github.com/rh-hideout/pokeemerald-expansion/pull/3720
|
||||
* By @AsparagusEduardo in https://github.com/rh-hideout/pokeemerald-expansion/pull/3723
|
||||
### Fixed
|
||||
* Fixed potential Fly and Badge mismatch when using debug options by @AsparagusEduardo in https://github.com/rh-hideout/pokeemerald-expansion/pull/3489
|
||||
* Fixed Pokémon Animation debug menu ignoring animation delay by @AsparagusEduardo in https://github.com/rh-hideout/pokeemerald-expansion/pull/3562
|
||||
* Fixed `IS_DITTO` macro by @LOuroboros in https://github.com/rh-hideout/pokeemerald-expansion/pull/3558
|
||||
* Added RTC failsafe to Debug menu's `Cheat Start` option by @ravepossum in https://github.com/rh-hideout/pokeemerald-expansion/pull/3561
|
||||
|
||||
## 🐉 Pokémon 🐉
|
||||
### Added
|
||||
* ***Added Generation 9 species up to Teal Mask*** by @leo60228, @AlexOn1ine, @katykat5099, @kittenchilly and @AsparagusEduardo in https://github.com/rh-hideout/pokeemerald-expansion/pull/3249
|
||||
* ***IMPORTANT:*** Enabling Gen 9 species currently break saves. If you don't want to use them, you can disable `P_GEN_9_POKEMON` in `include/config/species_enabled.h`.
|
||||
* Reserved Indigo Disk IDs
|
||||
* By @AsparagusEduardo in https://github.com/rh-hideout/pokeemerald-expansion/pull/3725
|
||||
* By @AsparagusEduardo in https://github.com/rh-hideout/pokeemerald-expansion/pull/3726
|
||||
* By @Bassoonian in https://github.com/rh-hideout/pokeemerald-expansion/pull/3727
|
||||
* Reserved Form IDs that will be supported in future versions by @AsparagusEduardo in https://github.com/rh-hideout/pokeemerald-expansion/pull/3750
|
||||
* Shadow Lugia
|
||||
* Totem Forms
|
||||
* Partner Pikachu and Eevee
|
||||
* Updated UIs to support 4-digit Dex numbers.
|
||||
* Added Dunsparce and Tandemaus evolution methods by @fdeblasio in https://github.com/rh-hideout/pokeemerald-expansion/pull/3547
|
||||
* Tandemaus still does the evolution cutscene for now.
|
||||
* Ported newer PokéCommunity sprites by @AlexOn1ine in https://github.com/rh-hideout/pokeemerald-expansion/pull/3643 and https://github.com/rh-hideout/pokeemerald-expansion/pull/3646
|
||||
* Fixes and cleanup
|
||||
* By @fdeblasio in https://github.com/rh-hideout/pokeemerald-expansion/pull/3539
|
||||
* By @AsparagusEduardo in https://github.com/rh-hideout/pokeemerald-expansion/pull/3655 and https://github.com/rh-hideout/pokeemerald-expansion/pull/3749
|
||||
* By @katykat5099 in https://github.com/rh-hideout/pokeemerald-expansion/pull/3751
|
||||
* ***Adjusted Pokemon sprites and palettes - Part 2*** by @CyanSMP64 in https://github.com/rh-hideout/pokeemerald-expansion/pull/3612
|
||||
* From Magnemite to Tangela + Hitmontop + Nidoking adjustment by MrDollSteak.
|
||||
* Corrected sprite sizes and elevations
|
||||
* Further palette adjustments by @CyanSMP64 in https://github.com/rh-hideout/pokeemerald-expansion/pull/3744
|
||||
* Pidgeotto, Tentacruel, Feraligatr, Furret, Flaaffy, Marill, Azumarill and Miltank.
|
||||
* Added missing Alcremie forms by @AsparagusEduardo in https://github.com/rh-hideout/pokeemerald-expansion/pull/3469
|
||||
* Previously, only Strawberry Sweet forms were available
|
||||
* Missing: Icons for non-Ruby Cream forms.
|
||||
* Cleanup by @Bassoonian in https://github.com/rh-hideout/pokeemerald-expansion/pull/3488
|
||||
* Added species define synonyms for base forms with form names by @AsparagusEduardo in https://github.com/rh-hideout/pokeemerald-expansion/pull/3248
|
||||
* Eg. `SPECIES_GIRATINA_ALTERED` is equal to `SPECIES_GIRATINA`.
|
||||
* The original defines can be used in combination of `GET_BASE_SPECIES_ID(species)` to check for the whole species instead of specific forms.
|
||||
* Added Gen 7 Pokémon 2nd frames and animations by @katykat5099 in https://github.com/rh-hideout/pokeemerald-expansion/pull/3426
|
||||
* Rowlet family
|
||||
* Pikipek family
|
||||
* Cutiefly family
|
||||
* Rockruff family
|
||||
* Oranguru
|
||||
* Passimian
|
||||
* Fixed its shiny palette.
|
||||
* Togedemaru
|
||||
* Drampa
|
||||
* Jangmo-O family
|
||||
* Added Gen 6 Pokémon 2nd frames and animations by @katykat5099 in https://github.com/rh-hideout/pokeemerald-expansion/pull/3543
|
||||
* Chespin
|
||||
* Bunnelby
|
||||
* Fletchling family
|
||||
* Floette family
|
||||
* Added missing 2nd frame for Eternal Flower Form.
|
||||
* Amaura
|
||||
* Added mising World Cap Pikachu icon by @kittenchilly in https://github.com/rh-hideout/pokeemerald-expansion/pull/3401
|
||||
* Added `P_CUSTOM_GENDER_DIFF_ICONS` config to use custom female icon sprites for Pikachu and Wobbuffet by @kittenchilly in https://github.com/rh-hideout/pokeemerald-expansion/pull/3506
|
||||
* Removed `P_HIPPO_GENDER_DIFF_ICONS` in favor of Hippopotas and Hippowdon to use this new config.
|
||||
* Added `P_UPDATED_FRIENDSHIP` config that updates Pokémon base friendship to Gen 8+ standards by @kittenchilly in https://github.com/rh-hideout/pokeemerald-expansion/pull/3491
|
||||
### Changed
|
||||
* ***Species Simplifier™*** (Parts [1](https://github.com/rh-hideout/pokeemerald-expansion/pull/3544), [2](https://github.com/rh-hideout/pokeemerald-expansion/pull/3546) and [3](https://github.com/rh-hideout/pokeemerald-expansion/pull/3562))
|
||||
* **Moved most data to `gSpeciesInfo`**
|
||||
* Species names
|
||||
* Cries
|
||||
* Refactored Cry tables to simplify the process of adding new cries. Now there's a single entry in the table per cry, and species are asigned cry IDs in `gSpeciesInfo`.
|
||||
* Graphical data now have their pointers in `gSpeciesInfo` (Sprites, palettes and animations)
|
||||
* Removed all files in `src/data/pokemon_graphics/` with the exception of `front_pic_anims.h`.
|
||||
* Removed unused 2nd animations.
|
||||
* Dex Entries
|
||||
* Individual form information is visible in the HGSS Pokédex (Vanilla Dex TBD)
|
||||
* National Dex numbers are assigned to the species in `gSpeciesInfo`, removing the need of `sSpeciesToHoennPokedexNum` and `sSpeciesToNationalPokedexNum` arrays.
|
||||
* Height and Weight are now saved separately per form, so weight in battle is now more accurate.
|
||||
* Pokédex size page proportions are also separate.
|
||||
* Pokédex descriptions are now saved as compound strings in `gSpeciesInfo` and differ by form. Shared entries are at the top of `src/data/pokemon/species_info.h`.
|
||||
* Missing Pokédex texts for forms by @Bassoonian in https://github.com/rh-hideout/pokeemerald-expansion/pull/3708
|
||||
* Level Up and Teachable learnset pointers are now stored in `gSpeciesInfo`.
|
||||
* Evolutions are now stored as compound literals in `gSpeciesInfo`.
|
||||
* Fix by @LOuroboros in https://github.com/rh-hideout/pokeemerald-expansion/pull/3696
|
||||
* Form tables pointers are now stored in `gSpeciesInfo`.
|
||||
* **Added toggles to disable specific family groups of species**
|
||||
* Located in `include/config/species_enabled.h`.
|
||||
* Moved the original `P_GEN_x_POKEMON` configs to this file.
|
||||
* Options to disable groups of species:
|
||||
* Battle-gimmick forms (Megas, Primals, etc.)
|
||||
* Regional Forms (Includes evolutions of those species, such as Sirfetch'd)
|
||||
* Pikachu extra forms.
|
||||
* Cross-Generation Evolutions
|
||||
* Also added separate option to add cross-evolutions to the Regional Dex.
|
||||
* Generation 1-3 families can now be disabled.
|
||||
* Pokémon will not evolve into species that have been disabled.
|
||||
* Pokémon will produce offspring of species that have been disabled.
|
||||
* Pokémon will not change form into forms that have been disabled.
|
||||
* Fixes and cleanup
|
||||
* By @AsparagusEduardo in https://github.com/rh-hideout/pokeemerald-expansion/pull/3722
|
||||
* Grouped data by species family.
|
||||
* Converted species flags to gcc flags.
|
||||
* Converted `P_UPDATED_STATS` "ifdef blocks" to ternaries.
|
||||
* Added Mega Evolution hidden ability failsafes.
|
||||
* Separated `gSpeciesInfo` by Generation by @AsparagusEduardo in https://github.com/rh-hideout/pokeemerald-expansion/pull/3729
|
||||
* Fixes and cleanup
|
||||
* By @AsparagusEduardo in https://github.com/rh-hideout/pokeemerald-expansion/pull/3656
|
||||
* By @fdeblasio in https://github.com/rh-hideout/pokeemerald-expansion/pull/3698
|
||||
* Updated `P_UPDATED_ABILITIES` Gen 9's config for Piplup's line, Gallade and Shiftry by @Bassoonian in https://github.com/rh-hideout/pokeemerald-expansion/pull/3353
|
||||
* Shiftry's 2nd regular ability was changed from Early Bird to Wind Rider.
|
||||
* Piplup, Prinplup and Empoleon's Hidden abilities were changed from Defiant to Competitive.
|
||||
* Gallade was given Sharpness as a 2nd regular ability.
|
||||
* Updated Legends Arceus Pokémon data and Level Up learnsets to Scarlet/Violet's by @kittenchilly in https://github.com/rh-hideout/pokeemerald-expansion/pull/3458
|
||||
* Applied missing uses of `PLACEHOLDER_ANIM_SINGLE_FRAME` by @AsparagusEduardo in https://github.com/rh-hideout/pokeemerald-expansion/pull/3562
|
||||
* Renamed `PLACEHOLDER_TWO_FRAME_ANIMATION` to `PLACEHOLDER_ANIM_TWO_FRAMES` by @AsparagusEduardo in https://github.com/rh-hideout/pokeemerald-expansion/pull/3562
|
||||
* Removed Old Unown Level Up Learnsets by @AsparagusEduardo in https://github.com/rh-hideout/pokeemerald-expansion/pull/3562
|
||||
* Added `FORM_CHANGE_TIME_OF_DAY` form change that automatically changes Form during times of day (used by Shaymin to revert to Land Forme at night) by @AsparagusEduardo in https://github.com/rh-hideout/pokeemerald-expansion/pull/1690
|
||||
* Added `FORM_CHANGE_STATUS` form change that triggers when they adquire status condition (used by Shaymin to revert to Land Forme when frozen) by @Bassoonian in https://github.com/rh-hideout/pokeemerald-expansion/pull/3734
|
||||
* Currently it doesn't:
|
||||
* Prevent Shaymin from changing into Sky Forme when frozen.
|
||||
* Change Form in the Battle Pike.
|
||||
* Evolutions now call for `GetTimeOfDay` instead of checking the times directly by @fdeblasio in https://github.com/rh-hideout/pokeemerald-expansion/pull/3369
|
||||
* Dusk Ball and Form changes also use this function by @Bassoonian in https://github.com/rh-hideout/pokeemerald-expansion/pull/3585
|
||||
* Added config for different times of day ranges by @fdeblasio in https://github.com/rh-hideout/pokeemerald-expansion/pull/3579
|
||||
* Fixes and cleanup by @AsparagusEduardo in https://github.com/rh-hideout/pokeemerald-expansion/pull/3648 and https://github.com/rh-hideout/pokeemerald-expansion/pull/3701
|
||||
### Fixed
|
||||
* Fixed Koffing and Weezing's abilities ignoring `P_UPDATED_ABILITIES` config and always using Gen8's config by @Bassoonian in https://github.com/rh-hideout/pokeemerald-expansion/pull/3353
|
||||
* Fixed Pumpkaboo macro typo by @AlexOn1ine in https://github.com/rh-hideout/pokeemerald-expansion/pull/3541
|
||||
* Multiple fixes by @AsparagusEduardo in https://github.com/rh-hideout/pokeemerald-expansion/pull/3544
|
||||
* Fixed Mega Gardevoir/Gallade not having their updated Egg Groups.
|
||||
* Fixed mon not having their appropiate items.
|
||||
* Alolan Sandlash (Grip Claw, Rare)
|
||||
* Alolan Muk (Black Sludge, Common)
|
||||
* Alolan Golem (Cell Battery, Common)
|
||||
* Alolan Marowak (Thick Club, Rare)
|
||||
* Alolan Ninetales (Snowball, Rare)
|
||||
* Fixed missing species flags.
|
||||
* Giratina Origin (Legendary flag)
|
||||
* Deoxys Attack (Mythical flag)
|
||||
* Deoxys Defense (Mythical flag)
|
||||
* Deoxys Speed (Mythical flag)
|
||||
* Shaymin Sky (Mythical flag)
|
||||
* Fixed Aegislash Blade giving the wrong EV yield.
|
||||
* Fixed Zygarde 10% with Power Construct having the same stats as Zygarde 50%.
|
||||
* Fixed Galarian Weezing having inproper noFlip property.
|
||||
* Fixed Stantler not evolving when `P_GEN_9_POKEMON` is set to `FALSE` by @fdeblasio in https://github.com/rh-hideout/pokeemerald-expansion/pull/3548
|
||||
* Fixes Hisuian Sneasel's type order by @Bassoonian in https://github.com/rh-hideout/pokeemerald-expansion/pull/3706
|
||||
|
||||
## ⚔️ Battle General ⚔️ ##
|
||||
### Added
|
||||
* ***Dynamax*** by @AgustinGDLV and @AsparagusEduardo in https://github.com/rh-hideout/pokeemerald-expansion/pull/2417 + Tests
|
||||
* Requires a Dynamax Band in the bag and for the `B_FLAG_DYNAMAX_BATTLE` flag to be assigned and set.
|
||||
* Pokémon holding a Mega Stone or Z-Crystal can't Dynamax.
|
||||
* Gigantamax forms.
|
||||
* G-Max Moves.
|
||||
* Forms determined using the Form Change tables.
|
||||
* `P_GIGANTAMAX_FORMS` config to disable those forms.
|
||||
* Since we currently don't modify the `BoxPokemon` struct:
|
||||
* Dynamax levels are set to 0 (1.5x HP increase)
|
||||
* Species always change into their Gigantamax Forms.
|
||||
* AI Dynamaxes the last Pokémon left in their party.
|
||||
* Instances where HP/Max HP percentages are used now use `GetNonDynamaxHP` and `GetNonDynamaxMaxHP` respectively.
|
||||
* Trainer slide-in messages by @Bassoonian in https://github.com/rh-hideout/pokeemerald-expansion/pull/3581
|
||||
* Fixes and cleanup
|
||||
* By @AsparagusEduardo in
|
||||
* https://github.com/rh-hideout/pokeemerald-expansion/pull/3435
|
||||
* https://github.com/rh-hideout/pokeemerald-expansion/pull/3510
|
||||
* https://github.com/rh-hideout/pokeemerald-expansion/pull/3713
|
||||
* By @AlexOn1ine in
|
||||
* https://github.com/rh-hideout/pokeemerald-expansion/pull/3464
|
||||
* https://github.com/rh-hideout/pokeemerald-expansion/pull/3470
|
||||
* https://github.com/rh-hideout/pokeemerald-expansion/pull/3541
|
||||
* Added support for Sky Battles by @pkmnsnfrn in https://github.com/rh-hideout/pokeemerald-expansion/pull/2950
|
||||
* Requires both `B_FLAG_SKY_BATTLE` and `B_VAR_SKY_BATTLE` to be assigned.
|
||||
* Use the `TrySkyBattle` special in scripts to check if the player can participate in a Sky Battle and readies the party if it's succesful. Saves the result in VAR_RESULT.
|
||||
```
|
||||
Route123_EventScript_Alberto_Battle_Event_Script:
|
||||
msgbox Route123_EventScript_Alberto_Text_AskSkyBattle, MSGBOX_YESNO
|
||||
compare VAR_RESULT, NO
|
||||
goto_if_eq Route123_EventScript_Alberto_DenySkyBattle
|
||||
special TrySkyBattle
|
||||
compare VAR_RESULT, TRUE
|
||||
goto_if_eq Route123_EventScript_Alberto_StartBattle
|
||||
msgbox Route123_EventScript_Alberto_Text_No_Flying_Pokemon
|
||||
closemessage
|
||||
release
|
||||
end
|
||||
```
|
||||
* The `B_SKY_BATTLE_STRICT_ELIGIBILITY` config will restrict certain Pokémon from participating based on XY's list when enabled. By default is disabled and allows all Pokémon that are Flying-type and/or have Levitate as their ability.
|
||||
* Banned moves are defined by the `skyBattleBanned` flag. Besides moves banned officially in XY, Gen7+ moves are added via `B_EXTRAPOLATED_MOVE_FLAGS` config by @AsparagusEduardo in https://github.com/rh-hideout/pokeemerald-expansion/pull/3714
|
||||
* Effects that interact with grounded battlers do not happen in Sky Battles.
|
||||
* Fix by @pkmnsnfrn in https://github.com/rh-hideout/pokeemerald-expansion/pull/3617
|
||||
* Cleanup by @AlexOn1ine in https://github.com/rh-hideout/pokeemerald-expansion/pull/3621
|
||||
* Added `B_TOXIC_REVERSAL` config to revert bad poison to regular poison at the end of battles by @Bassoonian in https://github.com/rh-hideout/pokeemerald-expansion/pull/3605
|
||||
* Added `B_SANDSTORM_SPDEF_BOOST` config to disable Sandstorm's Sp. Defense boost for Rock-type Pokémon when set to `GEN_3` or less by @Petuuuhhh in https://github.com/rh-hideout/pokeemerald-expansion/pull/3387
|
||||
* Added `B_QUICK_MOVE_CURSOR_TO_RUN` config to allow a B Button shortcut for moving the cursor to the run option in Wild Battles by @voloved in https://github.com/rh-hideout/pokeemerald-expansion/pull/3362
|
||||
* Added `B_TRY_CATCH_TRAINER_BALL` config to disable losing the Poké Ball used to try to catch a Trainer's Pokémon by @Bassoonian in https://github.com/rh-hideout/pokeemerald-expansion/pull/3684
|
||||
* Added `P_CATCH_CURVE` config that updates catch calculations to Gen 6+ by @AtariDreams in https://github.com/rh-hideout/pokeemerald-expansion/pull/3685
|
||||
* Added Snow weather animation by @kittenchilly in https://github.com/rh-hideout/pokeemerald-expansion/pull/3440
|
||||
* Added a `flushtextbox` macro to flush the text box in battles by @LOuroboros in https://github.com/rh-hideout/pokeemerald-expansion/pull/3442
|
||||
### Changed
|
||||
* Removed redundant Battle Types by @AgustinGDLV in https://github.com/rh-hideout/pokeemerald-expansion/pull/2417
|
||||
* `BATTLE_TYPE_KYOGRE_GROUDON`
|
||||
* `BATTLE_TYPE_REGI`
|
||||
* `BATTLE_TYPE_GROUDON`
|
||||
* `BATTLE_TYPE_KYOGRE`
|
||||
* `BATTLE_TYPE_RAYQUAZA`
|
||||
* Intros, terrain and music determined by the species itself.
|
||||
* Regigigas, Regieleki and Regidrago play `MUS_VS_REGI`.
|
||||
* Converted most battle preproc `#if` blocks to C `if`s by @AsparagusEduardo in https://github.com/rh-hideout/pokeemerald-expansion/pull/3392
|
||||
* Removed pointless for loop in CB2_InitBattleInternal by @LOuroboros in https://github.com/rh-hideout/pokeemerald-expansion/pull/3422
|
||||
* Refactored Battle Frontier bans to check the base species by @Bassoonian in https://github.com/rh-hideout/pokeemerald-expansion/pull/3465
|
||||
* Better support for adding new species.
|
||||
* Also adds Gen4+ [Special Pokémon](https://bulbapedia.bulbagarden.net/wiki/Special_Pok%C3%A9mon) to the list.
|
||||
* Obedience levels now increase per badge by @kittenchilly in https://github.com/rh-hideout/pokeemerald-expansion/pull/3475
|
||||
* Also sets `B_OBEDIENCE_MECHANICS`'s default config to `GEN_LATEST`, where obedience restrictions also apply to non-outsider Pokémon, albeit based on their level met rather than actual level.
|
||||
* Thanks to combination of the added obedience levels matching ORAS' with vanilla Emerald's encounter levels, there's not a single instance were players need to worry about caught Pokémon not obeying as soon as they are caught.
|
||||
* Decoupled Affection values from Friendship rater thresholds, making them occur less often than what they used to by @kittenchilly in https://github.com/rh-hideout/pokeemerald-expansion/pull/3495
|
||||
* Because of the lessened frequency, they have been turned on by default.
|
||||
* Added `HITMARKER_DISABLE_ANIMATION` to temporarily disable animations (used in Bug Bite's berry consumption) by @ghoulslash in https://github.com/rh-hideout/pokeemerald-expansion/pull/3607
|
||||
### Fixed
|
||||
* Fixed Psychic Terrain blocking moves that target all battler or all opponents by @DizzyEggg in https://github.com/rh-hideout/pokeemerald-expansion/pull/3521
|
||||
* Fixed issue with "Cycle through Poké Balls" feature not working properly by @fdeblasio in https://github.com/rh-hideout/pokeemerald-expansion/pull/3534
|
||||
* Fixed Burmy not transforming at the end of battle if it didn't switch in during a Single Battle by @benicioneto in https://github.com/rh-hideout/pokeemerald-expansion/pull/3728
|
||||
* Fixed Player Partner not playing its Shiny animation by @ghoulslash in https://github.com/rh-hideout/pokeemerald-expansion/pull/3757
|
||||
|
||||
## 🤹 Moves 🤹
|
||||
### Added
|
||||
* Added Teal Mask Moves by @AlexOn1ine in https://github.com/rh-hideout/pokeemerald-expansion/pull/3402 + Tests
|
||||
* Matcha Gotcha
|
||||
* Syrup Bomb
|
||||
* Animation by @SonikkuA-DatH and @AlexOn1ine in https://github.com/rh-hideout/pokeemerald-expansion/pull/3474
|
||||
* Fixes by @AlexOn1ine in
|
||||
* https://github.com/rh-hideout/pokeemerald-expansion/pull/3437
|
||||
* https://github.com/rh-hideout/pokeemerald-expansion/pull/3552
|
||||
* Ivy Cudgel
|
||||
* Type is shown in interfaces by @Bassoonian in https://github.com/rh-hideout/pokeemerald-expansion/pull/3590
|
||||
* Tweaks and fixes
|
||||
* By @AlexOn1ine in https://github.com/rh-hideout/pokeemerald-expansion/pull/3721
|
||||
* Fixed Ivy Cudgel test name by @AsparagusEduardo in https://github.com/rh-hideout/pokeemerald-expansion/pull/3742
|
||||
* Added Glaive Rush's effect by @AlexOn1ine in https://github.com/rh-hideout/pokeemerald-expansion/pull/3476
|
||||
* Added Raging Bull's effect by @AlexOn1ine in https://github.com/rh-hideout/pokeemerald-expansion/pull/3552
|
||||
* Added Chilly Reception's effect by @RapidNutcracker in https://github.com/rh-hideout/pokeemerald-expansion/pull/3379
|
||||
* Added Rage Fist's effect by @AlexOn1ine in https://github.com/rh-hideout/pokeemerald-expansion/pull/3573
|
||||
* Added define synonyms (eg. `MOVE_VICE_GRIP` vs the current `MOVE_VISE_GRIP`) by @Bassoonian in https://github.com/rh-hideout/pokeemerald-expansion/pull/3580
|
||||
* Added combined Pledge move effects by @AlexOn1ine, @Skeli789 and @LOuroboros in https://github.com/rh-hideout/pokeemerald-expansion/pull/3336
|
||||
* Status animations by @SonikkuA-DatH
|
||||
* Added `B_WIDE_GUARD` and `B_QUICK_GUARD` configs for Wide Guard and Quick Guard to fail when used consecutively in Gen 5 by @AlexOn1ine in https://github.com/rh-hideout/pokeemerald-expansion/pull/3614
|
||||
* Added `B_IMPRISON` config that makes Imprison not fail if opposin Pokémon don't have any moves that the user knows from Gen 5 onwards by @AlexOn1ine in https://github.com/rh-hideout/pokeemerald-expansion/pull/3710
|
||||
### Changed
|
||||
* Added `B_EXTRAPOLATED_MOVE_FLAGS` config to extend move flag for moves removed in Gen8+.
|
||||
* Razor Wind, Silver Wind and Ominous Wind are given the `windMove` flag.
|
||||
* Dynamax Cannon, Behemoth Blade and Behemoth Blade are given the `assistBanned` flag.
|
||||
* Bitter Blade and Matcha Gotcha are given the `healBlockBanned` flag.
|
||||
* Added new move flags by @kittenchilly in https://github.com/rh-hideout/pokeemerald-expansion/pull/3425
|
||||
* `twoTurnMove` (replaces `IsTwoTurnsMove`)
|
||||
* `forcePressure` (for self-targeted moves that are affected by Pressure)
|
||||
* `cantUseTwice` (replaces `EFFECT_GIGATON_HAMMER`)
|
||||
* `healBlockBanned` (replaces an `EFFECT_x` switch in `IsHealBlockPreventingMove`)
|
||||
* `encoreBanned` (replaces `if` chain in `Cmd_trysetencore`)
|
||||
* `assistBanned` (originally used `copycatBanned` + `EFFECT_SEMI_INVULNERABLE` and `EFFECT_SKY_DROP`)
|
||||
* `parentalBondBanned`
|
||||
* Updated missing move flags for every move by @kittenchilly in https://github.com/rh-hideout/pokeemerald-expansion/pull/3425
|
||||
* Updated Grassy Glide's power from 60 to 55 when `B_UPDATED_MOVE_DATA` is set to `GEN_9` or later (Teal Mask) by @kittenchilly in https://github.com/rh-hideout/pokeemerald-expansion/pull/3425
|
||||
* Simplified Octolock script and converted its `various` to `callnative` by @AlexOn1ine in https://github.com/rh-hideout/pokeemerald-expansion/pull/3437
|
||||
* Added `CanAbilityPreventStatLoss` to centralize stat lowering immunities by @AlexOn1ine in https://github.com/rh-hideout/pokeemerald-expansion/pull/3437
|
||||
* Fixed multiple abilities not showing the ability name in their message.
|
||||
* Renamed `EFFECT_SMELLINGSALT` to `EFFECT_SMELLING_SALTS` by @AlexOn1ine in https://github.com/rh-hideout/pokeemerald-expansion/pull/3504
|
||||
* New move animations by @Captain-Ford and @AlexOn1ine in https://github.com/rh-hideout/pokeemerald-expansion/pull/3529
|
||||
* Phantom Force
|
||||
* Trick or Treat
|
||||
* Acrobatics
|
||||
* Head Smash
|
||||
* Psyshock
|
||||
* Charge Beam
|
||||
* Plasma Fists now setup `STATUS_FIELD_ION_DELUGE` instead of having their own `STATUS4` by @AlexOn1ine in https://github.com/rh-hideout/pokeemerald-expansion/pull/3476
|
||||
* Battle Dome points are now based on move data instead of being arbitrarily assigned by @Bassoonian in https://github.com/rh-hideout/pokeemerald-expansion/pull/3596
|
||||
### Fixed
|
||||
* Multiple Relic Song fixes by @AlexOn1ine in https://github.com/rh-hideout/pokeemerald-expansion/pull/3476
|
||||
* Fixed Acid and Crunch move descriptions being updated by `B_UPDATED_MOVE_DATA` alongside their effects by @fdeblasio in https://github.com/rh-hideout/pokeemerald-expansion/pull/3586
|
||||
* Fixed Howl buffing the user's ally if they have Soundproof by @AlexOn1ine in https://github.com/rh-hideout/pokeemerald-expansion/pull/3593
|
||||
* Fixed Floral Healing not increasing its effect on Grassy Terrain + Tests by @AlexOn1ine in https://github.com/rh-hideout/pokeemerald-expansion/pull/3604
|
||||
* Fixed Spirit Shackle/Anchor Shot not trapping the targets by @AlexOn1ine in https://github.com/rh-hideout/pokeemerald-expansion/pull/3668
|
||||
* Fixed Defog not consuming PP if the foe has -6 evasion by @AlexOn1ine in https://github.com/rh-hideout/pokeemerald-expansion/pull/3668
|
||||
* Fixed Mirror Coat being able to reflect Pain Split damage by @AlexOn1ine in https://github.com/rh-hideout/pokeemerald-expansion/pull/3668
|
||||
* Fixed incorrect Fling damage calculation due to the item being removed before them by @AlexOn1ine in https://github.com/rh-hideout/pokeemerald-expansion/pull/3670
|
||||
* Fixed Z-Moves using the base move's priority by @AlexOn1ine in https://github.com/rh-hideout/pokeemerald-expansion/pull/3690
|
||||
* Fixed Metal Burst, Trump Card and Comeuppance not being considered as damaging moves by @AlexOn1ine in https://github.com/rh-hideout/pokeemerald-expansion/pull/3697
|
||||
* Fixed Fiery Wrath animation bug that caused the user to flip upside down by @AlexOn1ine in https://github.com/rh-hideout/pokeemerald-expansion/pull/3739
|
||||
* Fixed Baton Pass not passing Embargo's remaining turns by @DizzyEggg in https://github.com/rh-hideout/pokeemerald-expansion/pull/3745
|
||||
* Fixed Raging Fury not causing rampage on user by @AsparagusEduardo in https://github.com/rh-hideout/pokeemerald-expansion/pull/3754
|
||||
|
||||
## 🎭 Abilities 🎭
|
||||
### Added
|
||||
* Added Opportunist + Tests by @ghoulslash in https://github.com/rh-hideout/pokeemerald-expansion/pull/2994
|
||||
* Added Zero to Hero + Tests by @AlexOn1ine in https://github.com/rh-hideout/pokeemerald-expansion/pull/3542
|
||||
* Fix by @AlexOn1ine https://github.com/rh-hideout/pokeemerald-expansion/pull/3552
|
||||
* Added `B_ILLUMINATE_EFFECT` config for Illuminate's Gen9 effect by @Bassoonian in https://github.com/rh-hideout/pokeemerald-expansion/pull/3482
|
||||
* Added `B_WEAK_ARMOR_SPEED` config for Weak Armor's Gen 5-6 effect by @AsparagusEduardo in https://github.com/rh-hideout/pokeemerald-expansion/pull/3498
|
||||
* Added `B_PROTEAN_LIBERO` config for Protean/Libero only triggering once per switch-in as of Gen 9 by @AlexOn1ine in https://github.com/rh-hideout/pokeemerald-expansion/pull/3614
|
||||
* Added `B_INTREPID_SWORD` and `B_DAUNTLESS_SHIELD` configs for Intrepid Sword and Dauntless Sword only triggering once per battle by @AlexOn1ine in https://github.com/rh-hideout/pokeemerald-expansion/pull/3614
|
||||
* Added configs for disabling ability overworld effects as of Gen 9 by @Bassoonian in https://github.com/rh-hideout/pokeemerald-expansion/pull/3480
|
||||
* Synchronize, Compound Eyes, Super Luck, Cute Charm, Illuminate, Infiltrator, Harvest, Lightning Rod, Storm Drain, Flash Fire, Magnet Pull and Static.
|
||||
* Àbility data (not yet functional) by @kittenchilly in https://github.com/rh-hideout/pokeemerald-expansion/pull/3349
|
||||
* Hospitality
|
||||
* Mind's Eye
|
||||
* Embody Aspect (one ability per effect)
|
||||
* Toxic Chain
|
||||
* Supersweet Syrup
|
||||
### Changed
|
||||
* Pickup Table has been changed so that their percentages can be customized more easily, by @kittenchilly and @AsparagusEduardo in https://github.com/rh-hideout/pokeemerald-expansion/pull/3351
|
||||
* The data has been changed to Sword & Shield's.
|
||||
* Moved `B_SYNCHRONIZE_NATURE` to `include/config/overworld.h` and renamed it to `OW_SYNCHRONIZE_NATURE` by @Bassoonian in https://github.com/rh-hideout/pokeemerald-expansion/pull/3480
|
||||
### Fixed
|
||||
* Fixed Synchronize not working with Gift Pokémon and scripted Wild Battles by @Bassoonian in https://github.com/rh-hideout/pokeemerald-expansion/pull/3480
|
||||
* Fixed Anger Shell being triggered multiple times by multi-hit moves by @DizzyEggg in https://github.com/rh-hideout/pokeemerald-expansion/pull/3508
|
||||
* Fixed Absorbing abilities not cancelling multi-hit moves + Tests (eg. Sap Sipper vs Bullet Seed) by @DizzyEggg in https://github.com/rh-hideout/pokeemerald-expansion/pull/3516
|
||||
* Fixed issue that caused Shadow Tag to not work by @fdeblasio in https://github.com/rh-hideout/pokeemerald-expansion/pull/3549
|
||||
* Fixed assumption that `gLastUsedAbility` is `u8` by @Bassoonian in https://github.com/rh-hideout/pokeemerald-expansion/pull/3569
|
||||
* Fixes Protosynthesis and Quark Drive ability pop up appearing more than once by @AlexOn1ine in https://github.com/rh-hideout/pokeemerald-expansion/pull/3595
|
||||
* Fixed Trace not triggering when switching in by secondary effects like U-Turn, Eject Pack or Explosion by @LOuroboros in https://github.com/rh-hideout/pokeemerald-expansion/pull/3623
|
||||
* Fixed Defiant not being triggered by Cotton Down interaction by @AlexOn1ine in https://github.com/rh-hideout/pokeemerald-expansion/pull/3657
|
||||
* Fixed self-targeted moves triggering Stamina, like Substitute by @AlexOn1ine in https://github.com/rh-hideout/pokeemerald-expansion/pull/3669
|
||||
* Fixed Quick Draw not working properly by @AlexOn1ine in https://github.com/rh-hideout/pokeemerald-expansion/pull/3724
|
||||
* Fixed Neutraling Gas switch-out combined with Electric Surge causing a visual glitch by @DizzyEggg in https://github.com/rh-hideout/pokeemerald-expansion/pull/3746
|
||||
* Fixed Innards Out damaging Pokémon with Magic Guard by @DizzyEggg in https://github.com/rh-hideout/pokeemerald-expansion/pull/3758
|
||||
* Fixed Innards Out damaging Pokémon despite being suppressed by Gastro Acid by @DizzyEggg in https://github.com/rh-hideout/pokeemerald-expansion/pull/3758
|
||||
|
||||
## 🧶 Items 🧶
|
||||
### Added
|
||||
* Repeated Medicine usage by @Bassoonian in https://github.com/rh-hideout/pokeemerald-expansion/pull/3005
|
||||
* You can use multiple medicine items in a row without going back to the bag menu. Supports Rare and Exp. Candies.
|
||||
* Added `B_LIGHT_BALL_ATTACK_BOOST` config to disable Light Ball's Pshycal Attack boost when set to `GEN_3` or less by @Petuuuhhh in https://github.com/rh-hideout/pokeemerald-expansion/pull/3387
|
||||
* Added Teal Mask items by @kittenchilly in https://github.com/rh-hideout/pokeemerald-expansion/pull/3349
|
||||
* Sprites (except for Fairy Feather) by @hedara90 in https://github.com/rh-hideout/pokeemerald-expansion/pull/3527
|
||||
* Fairy Feather by @kittenchilly in https://github.com/rh-hideout/pokeemerald-expansion/pull/3520
|
||||
* Sprite by [Anarlaurendil on Deviantart](https://www.deviantart.com/anarlaurendil/art/Fairy-Feather-pixel-art-icon-Pokemon-986417461).
|
||||
* Despite being introduced in Gen 9, it's still affected by the `I_TYPE_BOOST_POWER` config to be consistent with other type items (10% boost when set to Gen 3).
|
||||
* Evolution items
|
||||
* Syrupy Apple
|
||||
* Unremarkable Teacup
|
||||
* Masterpiece Teacup
|
||||
* Form change items
|
||||
* Cornerstone Mask
|
||||
* Wellspring Mask
|
||||
* Hearthflame Mask
|
||||
* EV modifier items
|
||||
* Health Mochi
|
||||
* Muscle Mochi
|
||||
* Resist Mochi
|
||||
* Genius Mochi
|
||||
* Clever Mochi
|
||||
* Swift Mochi
|
||||
* Fresh Start Mochi
|
||||
* Glimmering Charm
|
||||
* Since there's no raids, it currently does nothing.
|
||||
* Implemented Rotom Catalog and Zygarde Cube by @kittenchilly in https://github.com/rh-hideout/pokeemerald-expansion/pull/3284
|
||||
* Zygarde Cube follows Gen 8 functionality, where it allows to change Form and Ability but not teach moves.
|
||||
* Rotom Catalog follows non-BDSP functionality, where all forms don't need to be unlocked.
|
||||
* Cleanup by @AsparagusEduardo in https://github.com/rh-hideout/pokeemerald-expansion/pull/3700
|
||||
* Implemented support for Fusion items by @TeamAquasHideout and @kittenchilly in https://github.com/rh-hideout/pokeemerald-expansion/pull/3274
|
||||
* Items:
|
||||
* DNA Splicers
|
||||
* N-Solarizer
|
||||
* N-Lunarizer
|
||||
* Reins of Unity
|
||||
* Fused mon are stored at the end of in `PokemonStorage`.
|
||||
* Fixes by @Bassoonian in https://github.com/rh-hideout/pokeemerald-expansion/pull/3602
|
||||
* Fixes and cleanup
|
||||
* By @AsparagusEduardo in https://github.com/rh-hideout/pokeemerald-expansion/pull/3644
|
||||
* By @Bassoonian in https://github.com/rh-hideout/pokeemerald-expansion/pull/3692
|
||||
* Ported pokefirered's Vs. Seeker by @Jaizu @pkmnsnfrn in https://github.com/rh-hideout/pokeemerald-expansion/pull/3256
|
||||
* Requires `I_VS_SEEKER_CHARGING` flag to be assigned.
|
||||
* Cleanup by @GraionDilach in https://github.com/rh-hideout/pokeemerald-expansion/pull/3718
|
||||
* Added define synonyms (eg. `ITEM_STICK` vs the current `ITEM_LEEK`) by @Bassoonian in https://github.com/rh-hideout/pokeemerald-expansion/pull/3580
|
||||
### Changed
|
||||
* Removed unused holdEffectParam for items that double the amount of money gained in battle by @LOuroboros in https://github.com/rh-hideout/pokeemerald-expansion/pull/3528
|
||||
* Using the name `Parcel` instead of `Oak's Parcel` by @Bassoonian in https://github.com/rh-hideout/pokeemerald-expansion/pull/3580
|
||||
* Repel/Lure menu improvements @Jaizu and @pkmnsnfrn in https://github.com/rh-hideout/pokeemerald-expansion/pull/3594
|
||||
* If `VAR_LAST_REPEL_LURE_USED` is enabled and a spray runs out:
|
||||
* It will show the name of the spray that ran out.
|
||||
* If it was the last item of its type and strength, it will ask the player if they want to use a different one of the same type.
|
||||
* B can now be pressed to cancel the menu.
|
||||
### Fixed
|
||||
* Fixed healing berries activating before Knock Off by @DizzyEggg in https://github.com/rh-hideout/pokeemerald-expansion/pull/3509
|
||||
* Fixed crash damage triggering Eject Button by @AlexOn1ine in https://github.com/rh-hideout/pokeemerald-expansion/pull/3669 and https://github.com/rh-hideout/pokeemerald-expansion/pull/3738
|
||||
* Fixed Quick Claw not reading `holdEffectParam` by @AlexOn1ine in https://github.com/rh-hideout/pokeemerald-expansion/pull/3737
|
||||
* Fixed Life Orb causing recoil when swapped via Magician when it shouldn't by @DizzyEggg in https://github.com/rh-hideout/pokeemerald-expansion/pull/3753
|
||||
|
||||
## 🤖 Battle AI 🤖
|
||||
* Added AI Tests
|
||||
* By @DizzyEggg in https://github.com/rh-hideout/pokeemerald-expansion/pull/3361
|
||||
* AI prefers Bubble over Water Gun if it's slower (both are power 40).
|
||||
* AI prefers Water Gun over Bubble if it knows that foe has Contrary.
|
||||
* AI prefers moves with better accuracy, but only if they both require the same number of hits to KO.
|
||||
* AI prefers moves which deal more damage instead of moves which are super-effective but deal less damage.
|
||||
* AI prefers Earthquake over Drill Run if both require the same number of hits to KO.
|
||||
* AI chooses the safest option to faint the target, taking into account accuracy and move effect.
|
||||
* AI won't use ground type attacks against flying type Pokémon unless Gravity is in effect.
|
||||
* AI will not switch in a Pokémon which is slower and gets 1HKOed after fainting.
|
||||
* AI switches if Perish Song is about to kill.
|
||||
* AI won't use a Weather changing move if partner already chose such move.
|
||||
* AI will not use Helping Hand if partner does not have any damage moves.
|
||||
* AI will not use a status move if partner already chose Helping Hand.
|
||||
* AI without any flags chooses moves at random.
|
||||
* By @AlexOn1ine in https://github.com/rh-hideout/pokeemerald-expansion/pull/3382
|
||||
* AI prefers a weaker moves over one with a downside effect if both require the same number of hits to KO.
|
||||
* AI prefers moves with the best possible score, chosen randomly if tied.
|
||||
* AI can choose a status move that boosts the attack by two.
|
||||
* By @AlexOn1ine in https://github.com/rh-hideout/pokeemerald-expansion/pull/3515
|
||||
* AI won't use Solar Beam if there is no Sun up or the user is not holding Power Herb.
|
||||
* By @AlexOn1ine in https://github.com/rh-hideout/pokeemerald-expansion/pull/3583
|
||||
* AI chooses moves with secondary effect that have a 100% chance to trigger
|
||||
* Cleanup by @DizzyEggg in https://github.com/rh-hideout/pokeemerald-expansion/pull/3748
|
||||
* Smarter SwitchAI Mon Choices + `HasBadOdds` Switch Check by @Pawkkie in https://github.com/rh-hideout/pokeemerald-expansion/pull/3253
|
||||
* Use `AI_FLAG_SMART_MON_CHOICES` to enable smarter decisions when choosing which mon gets sent out
|
||||
* `HasBadOdds` expands `AI_FLAG_SMART_SWITCHING` to switch out in cases where a mon has a bad matchup and lots of HP remaining
|
||||
* Extend `AI_FLAG_SMART_SWITCHING` for Encore / hazards / lowered attacking stats + Tests by @Pawkkie in https://github.com/rh-hideout/pokeemerald-expansion/pull/3557
|
||||
### Changed
|
||||
* By @DizzyEggg in https://github.com/rh-hideout/pokeemerald-expansion/pull/3199
|
||||
* Using move flags instead of lists for AI calculations by @AlexOn1ine in https://github.com/rh-hideout/pokeemerald-expansion/pull/3389
|
||||
* Remove redundant AI score increases by @AlexOn1ine in https://github.com/rh-hideout/pokeemerald-expansion/pull/3504
|
||||
* Remove `GetMoveDamageResult` function by @AlexOn1ine in https://github.com/rh-hideout/pokeemerald-expansion/pull/3536
|
||||
### Fixed
|
||||
* Fixed AI randomly choosing moves if they're both super effective by @DizzyEggg in https://github.com/rh-hideout/pokeemerald-expansion/pull/3361
|
||||
|
||||
## 🧹 Other Cleanup 🧹
|
||||
* Remove all trailing whitespace (upcoming) by @kittenchilly in https://github.com/rh-hideout/pokeemerald-expansion/pull/3473
|
||||
* Debug menu cleanup and documentation by @AsparagusEduardo and @sphericalice in https://github.com/rh-hideout/pokeemerald-expansion/pull/3390
|
||||
* Removed `powerfulMoveEffects` array by @AlexOn1ine in https://github.com/rh-hideout/pokeemerald-expansion/pull/3515
|
||||
* Added `-Woverride-init` Makefile flag that agbcc has by default by @AsparagusEduardo in https://github.com/rh-hideout/pokeemerald-expansion/pull/3535
|
||||
* Fixed static variable names by @Bassoonian in https://github.com/rh-hideout/pokeemerald-expansion/pull/3637
|
||||
* Fixed config descriptions
|
||||
* By @GraionDilach in https://github.com/rh-hideout/pokeemerald-expansion/pull/3717
|
||||
* Fixed mistmatching `gBattleTextBuff3` definitions by @GraionDilach in https://github.com/rh-hideout/pokeemerald-expansion/pull/3719
|
||||
|
||||
## 🧪 Test Runner 🧪
|
||||
### Added
|
||||
* Added support for wild battle tests by @DizzyEggg in https://github.com/rh-hideout/pokeemerald-expansion/pull/3342
|
||||
* Added support for AI battle tests by @DizzyEggg in https://github.com/rh-hideout/pokeemerald-expansion/pull/3361
|
||||
* Experience tests by @DizzyEggg in https://github.com/rh-hideout/pokeemerald-expansion/pull/3342
|
||||
* Catching Pokémon gives experience.
|
||||
* Higher leveled Pokémon give more experience.
|
||||
* Lucky Egg boosts gained exp points by 50%.
|
||||
* Exp is scaled to player and opponent's levels.
|
||||
* Large exp gains are supported
|
||||
* Held Exp. Share gives Experience to mons which did not participate in battle
|
||||
* Added additional damage formula test by @AlexOn1ine in https://github.com/rh-hideout/pokeemerald-expansion/pull/3437
|
||||
* Added Octolock tests by @AlexOn1ine in https://github.com/rh-hideout/pokeemerald-expansion/pull/3437
|
||||
* Added Defiant/Sticky Web interaction test by @DizzyEggg in https://github.com/rh-hideout/pokeemerald-expansion/pull/3516
|
||||
* Added Embargo tests by @LOuroboros in https://github.com/rh-hideout/pokeemerald-expansion/pull/3555
|
||||
* Added missing Hyper Cutter tests by @AlexOn1ine in https://github.com/rh-hideout/pokeemerald-expansion/pull/3437
|
||||
* Added missing Anger Shell tests by @DizzyEggg in https://github.com/rh-hideout/pokeemerald-expansion/pull/3508
|
||||
* Added missing White Herb tests by @AlexOn1ine in https://github.com/rh-hideout/pokeemerald-expansion/pull/3611
|
||||
* Added `SpeciesInfo` integrity tests by @mrgriffin in https://github.com/rh-hideout/pokeemerald-expansion/pull/3688
|
||||
### Changed
|
||||
* Moved battle tests off the heap by @mrgriffin in https://github.com/rh-hideout/pokeemerald-expansion/pull/3413
|
||||
* Automatic `ASSUMPTION_FAIL` in tests when used species are disabled.
|
||||
* Because of this, instances of `ASSUME(P_GEN_x_POKEMON == TRUE)` have been removed.
|
||||
* Updated Gen 9-mon-exclusive ability tests to use Gen 9 mon by @AsparagusEduardo in https://github.com/rh-hideout/pokeemerald-expansion/pull/3733
|
||||
### Fixed
|
||||
* Fixed VSCode error shenanigans when viewing tests by @AsparagusEduardo in https://github.com/rh-hideout/pokeemerald-expansion/pull/3383
|
||||
* Fixed broken move animations in test replays by @DizzyEggg in https://github.com/rh-hideout/pokeemerald-expansion/pull/3398
|
||||
* Performance improvement for test name matching by @jiangzhengwenjz in https://github.com/rh-hideout/pokeemerald-expansion/pull/3559
|
||||
* Fixed Ice Heal test name typo by @AtariDreams in https://github.com/rh-hideout/pokeemerald-expansion/pull/3676
|
||||
|
||||
## 📦 Pret merges 📦
|
||||
* 2023-10-02 by @AsparagusEduardo in https://github.com/rh-hideout/pokeemerald-expansion/pull/3372
|
||||
* Slight RTC documentation + Evolution times constants (https://github.com/pret/pokeemerald/pull/1925)
|
||||
* Add friendship evo threshold constant (https://github.com/pret/pokeemerald/pull/1928)
|
||||
* Solved a bunch of -Wall errors on modern (https://github.com/pret/pokeemerald/pull/1926)
|
||||
* 2023-10-27 by @AsparagusEduardo in https://github.com/rh-hideout/pokeemerald-expansion/pull/3471
|
||||
* Add some task/sprite data defines (https://github.com/pret/pokeemerald/pull/1915)
|
||||
* Fix mini_printf encoded string -Werror=pointer-sign warning (https://github.com/pret/pokeemerald/pull/1938)
|
||||
* Remove all trailing whitespace (https://github.com/pret/pokeemerald/pull/1937)
|
||||
* Use BUGFIX in assembly files (https://github.com/pret/pokeemerald/pull/1935)
|
||||
* 2023-12-10 by @AsparagusEduardo in https://github.com/rh-hideout/pokeemerald-expansion/pull/3675
|
||||
* Delete the redundant files generated after running build (https://github.com/pret/pokeemerald/pull/1944)
|
||||
* Rename `EGG_GROUP_UNDISCOVERED` egg group to `EGG_GROUP_NO_EGGS_DISCOVERED` (https://github.com/pret/pokeemerald/pull/1939)
|
||||
* Renamed `SendMonToPC` to `CopyMonToPC` (https://github.com/pret/pokeemerald/pull/1940)
|
||||
* Document `datahpupdate` (https://github.com/pret/pokeemerald/pull/1936)
|
||||
* Renamed `HITMARKER_IGNORE_SAFEGUARD` to `HITMARKER_STATUS_ABILITY_EFFECT` (https://github.com/pret/pokeemerald/pull/1959)
|
||||
* Moved files (https://github.com/pret/pokeemerald/pull/1953)
|
||||
* Spinda Spots
|
||||
* JP Fonts
|
||||
* `redyellowgreen_frame.bin`
|
||||
* [Build System Rewrite] Linkerscript now tracks RAM/ROM usage (https://github.com/pret/pokeemerald/pull/1952)
|
||||
* Fixed ld_script.ld artifact from a previous pret version by @AsparagusEduardo in https://github.com/rh-hideout/pokeemerald-expansion/pull/3731
|
||||
* Updated the size of the `struct InGameTrade`'s `otName` variable (https://github.com/pret/pokeemerald/pull/1962)
|
||||
|
||||
<!-- BELOW IS ALL THAT HASN'T BEEN SORTED-->
|
||||
|
||||
## New Contributors
|
||||
* @Petuuuhhh made their first contribution in https://github.com/rh-hideout/pokeemerald-expansion/pull/3387
|
||||
* @katykat5099 made their first contribution in https://github.com/rh-hideout/pokeemerald-expansion/pull/3426
|
||||
* @leo60228 made their first contribution in https://github.com/rh-hideout/pokeemerald-expansion/pull/3249
|
||||
* @hedara90 made their first contribution in https://github.com/rh-hideout/pokeemerald-expansion/pull/3527
|
||||
* @jiangzhengwenjz made their first contribution in https://github.com/rh-hideout/pokeemerald-expansion/pull/3559
|
||||
* @ravepossum made their first contribution in https://github.com/rh-hideout/pokeemerald-expansion/pull/3561
|
||||
* @RapidNutcracker made their first contribution in https://github.com/rh-hideout/pokeemerald-expansion/pull/3379
|
||||
* @GraionDilach made their first contribution in https://github.com/rh-hideout/pokeemerald-expansion/pull/3624
|
||||
* @AtariDreams made their first contribution in https://github.com/rh-hideout/pokeemerald-expansion/pull/3676
|
||||
|
||||
**Full Changelog**: https://github.com/rh-hideout/pokeemerald-expansion/compare/expansion/1.6.2...expansion/1.7.0
|
||||
|
||||
<!--Last PR: 3697-->
|
||||
@ -7,6 +7,8 @@
|
||||
static void *sHeapStart;
|
||||
static u32 sHeapSize;
|
||||
|
||||
EWRAM_DATA u8 gHeap[HEAP_SIZE] = {0};
|
||||
|
||||
void PutMemBlockHeader(void *block, struct MemBlock *prev, struct MemBlock *next, u32 size)
|
||||
{
|
||||
struct MemBlock *header = (struct MemBlock *)block;
|
||||
|
||||
@ -1,7 +1,6 @@
|
||||
#ifndef GUARD_ALLOC_H
|
||||
#define GUARD_ALLOC_H
|
||||
|
||||
#define HEAP_SIZE 0x1C000
|
||||
|
||||
#define FREE_AND_SET_NULL(ptr) \
|
||||
{ \
|
||||
@ -42,7 +41,8 @@ struct MemBlock
|
||||
u8 data[0];
|
||||
};
|
||||
|
||||
extern u8 gHeap[];
|
||||
#define HEAP_SIZE 0x1C000
|
||||
extern u8 gHeap[HEAP_SIZE];
|
||||
|
||||
#if TESTING || !defined(NDEBUG)
|
||||
|
||||
|
||||
@ -281,7 +281,7 @@ EWRAM_DATA static bool8 sShouldProcessSpriteCopyRequests = 0;
|
||||
EWRAM_DATA static u8 sSpriteCopyRequestCount = 0;
|
||||
EWRAM_DATA static struct SpriteCopyRequest sSpriteCopyRequests[MAX_SPRITES] = {0};
|
||||
EWRAM_DATA u8 gOamLimit = 0;
|
||||
static EWRAM_DATA u8 gOamDummyIndex = 0;
|
||||
static EWRAM_DATA u8 sOamDummyIndex = 0;
|
||||
EWRAM_DATA u16 gReservedSpriteTileCount = 0;
|
||||
EWRAM_DATA static u8 sSpriteTileAllocBitmap[128] = {0};
|
||||
EWRAM_DATA s16 gSpriteCoordOffsetX = 0;
|
||||
@ -292,7 +292,7 @@ EWRAM_DATA bool8 gAffineAnimsDisabled = FALSE;
|
||||
void ResetSpriteData(void)
|
||||
{
|
||||
ResetOamRange(0, 128);
|
||||
gOamDummyIndex = 0;
|
||||
sOamDummyIndex = 0;
|
||||
ResetAllSprites();
|
||||
ClearSpriteCopyRequests();
|
||||
ResetAffineAnimData();
|
||||
@ -405,9 +405,9 @@ void BuildOamBuffer(void)
|
||||
break;
|
||||
}
|
||||
|
||||
for (i = oamIndex; i < gOamDummyIndex; i++)
|
||||
for (i = oamIndex; i < sOamDummyIndex; i++)
|
||||
gMain.oamBuffer[i] = gDummyOamData;
|
||||
gOamDummyIndex = oamIndex;
|
||||
sOamDummyIndex = oamIndex;
|
||||
|
||||
for (i = 0; matrices != 0; i++, matrices >>= 1)
|
||||
{
|
||||
@ -751,9 +751,17 @@ void RequestSpriteFrameImageCopy(u16 index, u16 tileNum, const struct SpriteFram
|
||||
{
|
||||
if (sSpriteCopyRequestCount < MAX_SPRITE_COPY_REQUESTS)
|
||||
{
|
||||
sSpriteCopyRequests[sSpriteCopyRequestCount].src = images[index].data;
|
||||
if (!images[0].relativeFrames)
|
||||
{
|
||||
sSpriteCopyRequests[sSpriteCopyRequestCount].src = images[index].data;
|
||||
sSpriteCopyRequests[sSpriteCopyRequestCount].size = images[index].size;
|
||||
}
|
||||
else
|
||||
{
|
||||
sSpriteCopyRequests[sSpriteCopyRequestCount].src = images[0].data + images[0].size * index;
|
||||
sSpriteCopyRequests[sSpriteCopyRequestCount].size = images[0].size;
|
||||
}
|
||||
sSpriteCopyRequests[sSpriteCopyRequestCount].dest = (u8 *)OBJ_VRAM0 + TILE_SIZE_4BPP * tileNum;
|
||||
sSpriteCopyRequests[sSpriteCopyRequestCount].size = images[index].size;
|
||||
sSpriteCopyRequestCount++;
|
||||
}
|
||||
}
|
||||
|
||||
@ -26,11 +26,13 @@ struct SpriteFrameImage
|
||||
{
|
||||
const void *data;
|
||||
u16 size;
|
||||
bool8 relativeFrames;
|
||||
};
|
||||
|
||||
#define obj_frame_tiles(ptr) {.data = (u8 *)ptr, .size = sizeof ptr}
|
||||
|
||||
#define overworld_frame(ptr, width, height, frame) {.data = (u8 *)ptr + (width * height * frame * 64)/2, .size = (width * height * 64)/2}
|
||||
#define overworld_ascending_frames(ptr, width, height) {.data = (u8 *)ptr, .size = (width * height * 64)/2, .relativeFrames=TRUE}
|
||||
|
||||
struct SpritePalette
|
||||
{
|
||||
|
||||
BIN
graphics/battle_anims/backgrounds/rainbow.bin
Normal file
19
graphics/battle_anims/backgrounds/rainbow.pal
Normal file
@ -0,0 +1,19 @@
|
||||
JASC-PAL
|
||||
0100
|
||||
16
|
||||
109 92 75
|
||||
255 255 255
|
||||
255 107 122
|
||||
255 200 102
|
||||
255 255 107
|
||||
143 255 160
|
||||
107 255 255
|
||||
107 129 255
|
||||
220 114 255
|
||||
199 255 250
|
||||
232 240 248
|
||||
224 232 240
|
||||
208 224 240
|
||||
191 202 224
|
||||
183 189 202
|
||||
157 166 181
|
||||
BIN
graphics/battle_anims/backgrounds/rainbow.png
Normal file
|
After Width: | Height: | Size: 20 KiB |
BIN
graphics/field_effects/pics/emote_x.png
Normal file
|
After Width: | Height: | Size: 190 B |
BIN
graphics/field_effects/pics/emotion_double_exclamation.png
Normal file
|
After Width: | Height: | Size: 173 B |
|
Before Width: | Height: | Size: 4.4 KiB After Width: | Height: | Size: 4.4 KiB |
|
Before Width: | Height: | Size: 4.4 KiB After Width: | Height: | Size: 4.4 KiB |
|
Before Width: | Height: | Size: 5.3 KiB After Width: | Height: | Size: 5.3 KiB |
|
Before Width: | Height: | Size: 269 B After Width: | Height: | Size: 269 B |
|
Before Width: | Height: | Size: 773 B After Width: | Height: | Size: 760 B |
|
Before Width: | Height: | Size: 737 B After Width: | Height: | Size: 899 B |
|
Before Width: | Height: | Size: 841 B After Width: | Height: | Size: 891 B |
@ -1,19 +1,19 @@
|
||||
JASC-PAL
|
||||
0100
|
||||
16
|
||||
153 210 164
|
||||
147 50 48
|
||||
226 60 27
|
||||
255 119 178
|
||||
236 183 34
|
||||
237 230 62
|
||||
12 12 12
|
||||
84 40 41
|
||||
237 230 63
|
||||
54 52 52
|
||||
94 86 82
|
||||
150 91 14
|
||||
255 255 255
|
||||
226 60 28
|
||||
0 0 0
|
||||
0 0 0
|
||||
154 212 167
|
||||
148 46 44
|
||||
227 57 20
|
||||
242 131 165
|
||||
254 250 98
|
||||
241 163 41
|
||||
83 35 36
|
||||
18 25 27
|
||||
85 86 85
|
||||
53 46 43
|
||||
8 8 8
|
||||
253 251 0
|
||||
106 63 3
|
||||
255 252 199
|
||||
255 44 0
|
||||
198 120 27
|
||||
|
||||
@ -1,19 +1,19 @@
|
||||
JASC-PAL
|
||||
0100
|
||||
16
|
||||
153 210 164
|
||||
147 50 48
|
||||
226 60 27
|
||||
255 119 178
|
||||
236 183 34
|
||||
237 230 62
|
||||
12 12 12
|
||||
84 40 41
|
||||
33 174 217
|
||||
54 52 52
|
||||
94 86 82
|
||||
150 91 14
|
||||
255 255 255
|
||||
33 174 217
|
||||
0 0 0
|
||||
0 0 0
|
||||
154 212 167
|
||||
148 46 44
|
||||
227 57 20
|
||||
242 131 165
|
||||
254 250 98
|
||||
241 163 41
|
||||
83 35 36
|
||||
18 25 27
|
||||
85 86 85
|
||||
53 46 43
|
||||
8 8 8
|
||||
171 248 252
|
||||
106 63 3
|
||||
255 252 199
|
||||
54 109 231
|
||||
198 120 27
|
||||
|
||||
|
Before Width: | Height: | Size: 1.1 KiB After Width: | Height: | Size: 1.2 KiB |
@ -2,18 +2,18 @@ JASC-PAL
|
||||
0100
|
||||
16
|
||||
152 208 160
|
||||
48 80 144
|
||||
72 144 224
|
||||
112 184 248
|
||||
16 49 90
|
||||
8 98 172
|
||||
90 156 238
|
||||
16 16 16
|
||||
152 0 8
|
||||
200 40 0
|
||||
232 80 0
|
||||
80 176 240
|
||||
148 16 16
|
||||
189 41 49
|
||||
222 65 82
|
||||
49 131 197
|
||||
248 248 248
|
||||
168 48 32
|
||||
120 200 232
|
||||
232 128 120
|
||||
192 192 208
|
||||
216 224 248
|
||||
115 180 246
|
||||
222 65 82
|
||||
197 197 213
|
||||
213 222 246
|
||||
80 176 208
|
||||
|
||||
BIN
graphics/pokemon/basculegion/back.png
Executable file → Normal file
|
Before Width: | Height: | Size: 562 B After Width: | Height: | Size: 584 B |
BIN
graphics/pokemon/basculegion/female/back.png
Executable file → Normal file
|
Before Width: | Height: | Size: 562 B After Width: | Height: | Size: 565 B |
BIN
graphics/pokemon/basculegion/female/front.png
Executable file → Normal file
|
Before Width: | Height: | Size: 879 B After Width: | Height: | Size: 978 B |
33
graphics/pokemon/basculegion/female/normal.pal
Executable file → Normal file
@ -1,19 +1,18 @@
|
||||
JASC-PAL
|
||||
0100
|
||||
16
|
||||
152 208 160
|
||||
98 98 98
|
||||
16 16 16
|
||||
46 92 120
|
||||
171 222 224
|
||||
230 230 230
|
||||
227 242 239
|
||||
164 164 164
|
||||
122 168 175
|
||||
32 49 57
|
||||
65 82 82
|
||||
55 140 89
|
||||
21 64 34
|
||||
34 96 61
|
||||
16 16 18
|
||||
99 62 41
|
||||
15
|
||||
153 211 165
|
||||
90 125 133
|
||||
29 29 29
|
||||
209 237 237
|
||||
58 56 54
|
||||
142 188 193
|
||||
91 130 104
|
||||
45 57 51
|
||||
101 114 120
|
||||
73 95 84
|
||||
151 170 174
|
||||
223 233 231
|
||||
255 255 255
|
||||
91 51 39
|
||||
233 245 245
|
||||
|
||||
33
graphics/pokemon/basculegion/female/shiny.pal
Executable file → Normal file
@ -1,19 +1,18 @@
|
||||
JASC-PAL
|
||||
0100
|
||||
16
|
||||
152 208 160
|
||||
98 98 98
|
||||
16 16 16
|
||||
112 96 64
|
||||
216 208 112
|
||||
230 230 230
|
||||
248 236 160
|
||||
164 164 164
|
||||
160 152 72
|
||||
32 49 57
|
||||
64 80 80
|
||||
96 144 48
|
||||
21 64 34
|
||||
72 108 56
|
||||
16 16 18
|
||||
99 62 41
|
||||
15
|
||||
153 211 165
|
||||
157 114 49
|
||||
29 29 29
|
||||
255 239 106
|
||||
58 56 54
|
||||
213 179 74
|
||||
113 187 104
|
||||
45 57 51
|
||||
101 114 120
|
||||
71 120 74
|
||||
151 170 174
|
||||
223 233 231
|
||||
255 255 255
|
||||
91 51 39
|
||||
255 249 191
|
||||
|
||||
BIN
graphics/pokemon/basculegion/front.png
Executable file → Normal file
|
Before Width: | Height: | Size: 899 B After Width: | Height: | Size: 1.0 KiB |
33
graphics/pokemon/basculegion/normal.pal
Executable file → Normal file
@ -1,19 +1,18 @@
|
||||
JASC-PAL
|
||||
0100
|
||||
16
|
||||
152 208 160
|
||||
48 140 88
|
||||
192 52 80
|
||||
160 164 160
|
||||
16 64 32
|
||||
16 16 16
|
||||
120 24 24
|
||||
248 164 200
|
||||
96 60 40
|
||||
224 228 224
|
||||
64 80 80
|
||||
32 48 56
|
||||
32 96 56
|
||||
248 80 120
|
||||
96 96 96
|
||||
56 84 72
|
||||
15
|
||||
153 211 165
|
||||
107 33 60
|
||||
229 24 105
|
||||
167 50 91
|
||||
29 29 29
|
||||
58 56 54
|
||||
73 95 84
|
||||
91 130 104
|
||||
45 57 51
|
||||
101 114 120
|
||||
151 170 174
|
||||
223 233 231
|
||||
255 255 255
|
||||
94 36 46
|
||||
244 156 190
|
||||
|
||||
33
graphics/pokemon/basculegion/shiny.pal
Executable file → Normal file
@ -1,19 +1,18 @@
|
||||
JASC-PAL
|
||||
0100
|
||||
16
|
||||
152 208 160
|
||||
96 144 48
|
||||
144 72 176
|
||||
160 164 160
|
||||
16 64 32
|
||||
16 16 16
|
||||
88 36 112
|
||||
224 176 240
|
||||
96 60 40
|
||||
224 228 224
|
||||
60 82 76
|
||||
32 48 56
|
||||
72 108 56
|
||||
184 84 232
|
||||
96 96 96
|
||||
56 84 72
|
||||
15
|
||||
153 211 165
|
||||
107 33 60
|
||||
190 42 234
|
||||
128 41 165
|
||||
29 29 29
|
||||
58 56 54
|
||||
71 120 74
|
||||
113 187 104
|
||||
45 57 51
|
||||
101 114 120
|
||||
151 170 174
|
||||
223 233 231
|
||||
255 255 255
|
||||
94 36 46
|
||||
221 143 243
|
||||
|
||||
|
Before Width: | Height: | Size: 968 B After Width: | Height: | Size: 927 B |
|
Before Width: | Height: | Size: 634 B After Width: | Height: | Size: 558 B |
@ -13,7 +13,7 @@ JASC-PAL
|
||||
136 136 120
|
||||
200 192 192
|
||||
248 248 248
|
||||
80 40 16
|
||||
8 8 8
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
|
||||
@ -2,18 +2,18 @@ JASC-PAL
|
||||
0100
|
||||
16
|
||||
152 208 160
|
||||
80 80 96
|
||||
153 153 153
|
||||
230 230 230
|
||||
199 199 199
|
||||
8 8 8
|
||||
66 66 66
|
||||
125 125 125
|
||||
152 73 37
|
||||
214 111 60
|
||||
97 97 97
|
||||
186 186 186
|
||||
248 248 248
|
||||
200 200 200
|
||||
0 0 0
|
||||
56 56 56
|
||||
160 160 144
|
||||
144 104 80
|
||||
240 184 168
|
||||
120 120 112
|
||||
200 192 192
|
||||
248 248 248
|
||||
160 152 152
|
||||
88 24 32
|
||||
0 0 0
|
||||
0 0 0
|
||||
158 0 0
|
||||
255 0 255
|
||||
255 0 255
|
||||
255 0 255
|
||||
|
||||
|
Before Width: | Height: | Size: 466 B After Width: | Height: | Size: 451 B |
@ -11,7 +11,7 @@ JASC-PAL
|
||||
217 216 147
|
||||
104 97 60
|
||||
158 154 87
|
||||
144 196 144
|
||||
230 228 167
|
||||
40 48 40
|
||||
224 135 8
|
||||
66 115 147
|
||||
|
||||
|
Before Width: | Height: | Size: 854 B After Width: | Height: | Size: 790 B |
|
Before Width: | Height: | Size: 988 B After Width: | Height: | Size: 892 B |
@ -1,19 +1,18 @@
|
||||
JASC-PAL
|
||||
0100
|
||||
16
|
||||
153 210 164
|
||||
101 145 217
|
||||
201 134 218
|
||||
127 200 223
|
||||
169 160 226
|
||||
104 90 167
|
||||
49 49 105
|
||||
106 117 188
|
||||
38 32 35
|
||||
6 6 6
|
||||
52 105 191
|
||||
240 255 255
|
||||
67 67 140
|
||||
23 23 52
|
||||
70 59 65
|
||||
0 0 0
|
||||
15
|
||||
153 211 165
|
||||
198 90 222
|
||||
239 165 255
|
||||
132 156 222
|
||||
189 214 255
|
||||
57 99 189
|
||||
49 49 99
|
||||
66 66 140
|
||||
99 90 165
|
||||
57 49 41
|
||||
16 16 16
|
||||
82 82 82
|
||||
247 239 247
|
||||
24 24 49
|
||||
239 74 173
|
||||
|
||||
@ -1,19 +1,18 @@
|
||||
JASC-PAL
|
||||
0100
|
||||
16
|
||||
153 210 164
|
||||
101 145 217
|
||||
201 134 218
|
||||
127 200 223
|
||||
169 160 226
|
||||
104 90 167
|
||||
49 49 105
|
||||
106 117 188
|
||||
38 32 35
|
||||
6 6 6
|
||||
52 105 191
|
||||
255 242 0
|
||||
67 67 140
|
||||
23 23 52
|
||||
70 59 65
|
||||
0 0 0
|
||||
15
|
||||
153 211 165
|
||||
198 90 222
|
||||
239 165 255
|
||||
132 156 222
|
||||
189 214 255
|
||||
57 99 189
|
||||
49 49 99
|
||||
66 66 140
|
||||
99 90 165
|
||||
57 49 41
|
||||
16 16 16
|
||||
82 82 82
|
||||
255 255 0
|
||||
24 24 49
|
||||
255 24 74
|
||||
|
||||
|
Before Width: | Height: | Size: 1.0 KiB After Width: | Height: | Size: 1.1 KiB |
|
Before Width: | Height: | Size: 591 B After Width: | Height: | Size: 654 B |
@ -2,18 +2,18 @@ JASC-PAL
|
||||
0100
|
||||
16
|
||||
152 208 160
|
||||
230 123 131
|
||||
139 65 65
|
||||
255 230 230
|
||||
255 213 222
|
||||
139 65 65
|
||||
238 123 123
|
||||
246 164 156
|
||||
248 248 248
|
||||
16 16 16
|
||||
139 65 65
|
||||
246 164 180
|
||||
255 255 255
|
||||
230 222 189
|
||||
172 164 115
|
||||
115 106 74
|
||||
230 222 189
|
||||
0 0 0
|
||||
238 123 123
|
||||
225 96 96
|
||||
16 16 16
|
||||
139 65 65
|
||||
246 164 156
|
||||
238 123 123
|
||||
255 230 230
|
||||
255 213 222
|
||||
246 164 180
|
||||
230 123 131
|
||||
139 65 65
|
||||
|
||||
@ -1,19 +1,19 @@
|
||||
JASC-PAL
|
||||
0100
|
||||
16
|
||||
152 208 160
|
||||
192 160 88
|
||||
112 88 56
|
||||
248 240 224
|
||||
248 232 200
|
||||
80 112 56
|
||||
128 176 64
|
||||
152 216 72
|
||||
248 248 248
|
||||
152 160 208
|
||||
255 255 255
|
||||
230 222 189
|
||||
172 164 115
|
||||
115 106 74
|
||||
141 215 40
|
||||
106 164 32
|
||||
16 16 16
|
||||
80 112 56
|
||||
232 200 144
|
||||
168 160 112
|
||||
112 104 72
|
||||
224 216 184
|
||||
0 0 0
|
||||
88 128 64
|
||||
148 222 49
|
||||
106 164 32
|
||||
255 246 230
|
||||
255 238 205
|
||||
238 205 148
|
||||
213 172 90
|
||||
139 106 65
|
||||
|
||||
|
Before Width: | Height: | Size: 542 B After Width: | Height: | Size: 559 B |
|
Before Width: | Height: | Size: 546 B After Width: | Height: | Size: 548 B |
@ -14,6 +14,6 @@ JASC-PAL
|
||||
199 117 5
|
||||
255 255 255
|
||||
243 189 3
|
||||
153 211 165
|
||||
14 64 173
|
||||
238 13 36
|
||||
0 0 0
|
||||
16 88 254
|
||||
|
||||
@ -13,7 +13,7 @@ JASC-PAL
|
||||
27 33 35
|
||||
199 117 5
|
||||
255 255 255
|
||||
243 189 3
|
||||
153 211 165
|
||||
33 252 217
|
||||
14 64 173
|
||||
33 174 217
|
||||
0 0 0
|
||||
16 88 254
|
||||
|
||||
|
Before Width: | Height: | Size: 840 B After Width: | Height: | Size: 853 B |
|
Before Width: | Height: | Size: 543 B After Width: | Height: | Size: 590 B |
@ -1,7 +1,7 @@
|
||||
JASC-PAL
|
||||
0100
|
||||
16
|
||||
0 181 239
|
||||
152 208 160
|
||||
74 99 25
|
||||
16 16 16
|
||||
165 214 74
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
JASC-PAL
|
||||
0100
|
||||
16
|
||||
0 181 239
|
||||
152 208 160
|
||||
99 8 8
|
||||
16 16 16
|
||||
222 41 58
|
||||
|
||||
|
Before Width: | Height: | Size: 1.4 KiB After Width: | Height: | Size: 1.5 KiB |
|
Before Width: | Height: | Size: 752 B After Width: | Height: | Size: 803 B |
@ -2,18 +2,18 @@ JASC-PAL
|
||||
0100
|
||||
16
|
||||
152 208 160
|
||||
123 82 131
|
||||
213 189 238
|
||||
172 123 189
|
||||
148 98 180
|
||||
123 82 131
|
||||
74 32 82
|
||||
16 16 16
|
||||
197 197 197
|
||||
65 65 65
|
||||
248 248 248
|
||||
148 148 148
|
||||
98 98 98
|
||||
82 41 90
|
||||
164 123 189
|
||||
131 90 164
|
||||
106 65 131
|
||||
164 123 189
|
||||
120 96 176
|
||||
82 41 90
|
||||
197 197 197
|
||||
148 148 148
|
||||
98 98 98
|
||||
65 65 65
|
||||
16 16 16
|
||||
255 255 255
|
||||
|
||||
@ -2,18 +2,18 @@ JASC-PAL
|
||||
0100
|
||||
16
|
||||
152 208 160
|
||||
48 96 152
|
||||
152 200 248
|
||||
104 152 208
|
||||
16 64 112
|
||||
139 197 255
|
||||
90 156 230
|
||||
98 123 213
|
||||
41 98 172
|
||||
0 57 131
|
||||
164 123 189
|
||||
131 90 164
|
||||
106 65 131
|
||||
82 41 90
|
||||
197 197 197
|
||||
148 148 148
|
||||
98 98 98
|
||||
65 65 65
|
||||
16 16 16
|
||||
192 192 192
|
||||
64 64 64
|
||||
248 248 248
|
||||
144 144 144
|
||||
96 96 96
|
||||
80 40 88
|
||||
128 88 160
|
||||
104 64 128
|
||||
128 88 160
|
||||
96 120 208
|
||||
255 255 255
|
||||
|
||||
|
Before Width: | Height: | Size: 536 B After Width: | Height: | Size: 644 B |
|
Before Width: | Height: | Size: 696 B After Width: | Height: | Size: 788 B |
@ -1,19 +1,17 @@
|
||||
JASC-PAL
|
||||
0100
|
||||
16
|
||||
153 210 164
|
||||
255 60 60
|
||||
255 211 35
|
||||
255 247 222
|
||||
242 162 25
|
||||
255 153 10
|
||||
53 53 53
|
||||
173 145 135
|
||||
204 49 49
|
||||
118 39 25
|
||||
109 82 58
|
||||
79 79 79
|
||||
255 60 60
|
||||
10 10 10
|
||||
238 125 82
|
||||
0 0 0
|
||||
14
|
||||
153 211 165
|
||||
248 48 40
|
||||
248 208 56
|
||||
248 152 32
|
||||
248 248 216
|
||||
16 16 16
|
||||
96 80 56
|
||||
184 169 154
|
||||
64 64 64
|
||||
160 56 48
|
||||
216 160 40
|
||||
104 40 32
|
||||
232 56 56
|
||||
40 40 40
|
||||
|
||||
|
Before Width: | Height: | Size: 688 B |
@ -1,19 +1,17 @@
|
||||
JASC-PAL
|
||||
0100
|
||||
16
|
||||
153 210 164
|
||||
255 60 60
|
||||
255 211 35
|
||||
255 247 222
|
||||
242 162 25
|
||||
255 153 10
|
||||
104 33 45
|
||||
173 145 135
|
||||
204 51 135
|
||||
128 32 84
|
||||
109 82 58
|
||||
149 62 73
|
||||
255 64 168
|
||||
10 10 10
|
||||
238 125 82
|
||||
0 0 0
|
||||
14
|
||||
153 211 165
|
||||
248 48 40
|
||||
248 208 56
|
||||
248 152 32
|
||||
248 248 216
|
||||
16 16 16
|
||||
96 80 56
|
||||
184 169 154
|
||||
113 71 65
|
||||
164 108 135
|
||||
216 160 40
|
||||
114 71 91
|
||||
206 149 165
|
||||
80 50 55
|
||||
|
||||
|
Before Width: | Height: | Size: 835 B After Width: | Height: | Size: 924 B |
|
Before Width: | Height: | Size: 693 B After Width: | Height: | Size: 756 B |
@ -2,18 +2,18 @@ JASC-PAL
|
||||
0100
|
||||
16
|
||||
152 208 160
|
||||
139 131 106
|
||||
248 248 248
|
||||
41 41 41
|
||||
197 197 213
|
||||
82 82 57
|
||||
148 106 90
|
||||
222 189 106
|
||||
197 156 74
|
||||
148 106 90
|
||||
82 57 16
|
||||
200 168 136
|
||||
240 208 176
|
||||
224 224 232
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
255 255 255
|
||||
230 230 238
|
||||
197 197 213
|
||||
139 131 106
|
||||
82 82 57
|
||||
255 222 180
|
||||
246 213 180
|
||||
205 172 139
|
||||
255 0 255
|
||||
255 0 255
|
||||
16 16 16
|
||||
|
||||
@ -1,19 +1,19 @@
|
||||
JASC-PAL
|
||||
0100
|
||||
16
|
||||
152 208 160
|
||||
128 128 112
|
||||
248 248 248
|
||||
16 16 16
|
||||
200 184 184
|
||||
72 80 72
|
||||
80 104 48
|
||||
112 144 80
|
||||
32 56 8
|
||||
184 160 136
|
||||
224 208 176
|
||||
224 216 216
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
152 160 208
|
||||
156 172 106
|
||||
106 139 74
|
||||
74 98 49
|
||||
32 65 0
|
||||
255 255 255
|
||||
230 222 222
|
||||
205 189 189
|
||||
131 131 115
|
||||
74 82 74
|
||||
238 222 180
|
||||
230 213 180
|
||||
189 164 139
|
||||
255 0 255
|
||||
255 0 255
|
||||
41 41 41
|
||||
|
||||
|
Before Width: | Height: | Size: 610 B After Width: | Height: | Size: 570 B |
|
Before Width: | Height: | Size: 859 B After Width: | Height: | Size: 754 B |
@ -1,17 +1,19 @@
|
||||
JASC-PAL
|
||||
0100
|
||||
14
|
||||
64 100 181
|
||||
48 59 57
|
||||
33 37 33
|
||||
64 77 67
|
||||
93 121 106
|
||||
15 15 15
|
||||
230 112 62
|
||||
206 206 206
|
||||
127 167 133
|
||||
255 255 255
|
||||
16
|
||||
255 163 177
|
||||
56 74 53
|
||||
84 101 78
|
||||
28 41 22
|
||||
119 140 106
|
||||
16 16 16
|
||||
241 107 50
|
||||
185 183 179
|
||||
252 252 252
|
||||
96 125 109
|
||||
117 176 125
|
||||
34 35 40
|
||||
50 57 67
|
||||
52 69 61
|
||||
75 86 92
|
||||
93 121 107
|
||||
226 233 215
|
||||
|
||||
@ -1,17 +1,19 @@
|
||||
JASC-PAL
|
||||
0100
|
||||
14
|
||||
64 100 181
|
||||
48 59 57
|
||||
33 37 33
|
||||
16
|
||||
255 163 177
|
||||
167 163 122
|
||||
248 238 187
|
||||
97 95 71
|
||||
15 15 15
|
||||
64 63 48
|
||||
255 254 232
|
||||
16 16 16
|
||||
85 215 253
|
||||
206 206 206
|
||||
185 183 179
|
||||
252 252 252
|
||||
97 95 71
|
||||
138 138 112
|
||||
255 255 255
|
||||
34 35 40
|
||||
50 57 67
|
||||
64 62 47
|
||||
75 86 92
|
||||
250 241 235
|
||||
226 233 215
|
||||
|
||||
|
Before Width: | Height: | Size: 1.1 KiB After Width: | Height: | Size: 1.2 KiB |
|
Before Width: | Height: | Size: 497 B After Width: | Height: | Size: 572 B |
@ -2,18 +2,18 @@ JASC-PAL
|
||||
0100
|
||||
16
|
||||
153 210 164
|
||||
230 230 246
|
||||
213 205 238
|
||||
156 164 189
|
||||
106 123 164
|
||||
65 82 98
|
||||
156 164 189
|
||||
230 230 246
|
||||
16 16 16
|
||||
213 205 238
|
||||
255 255 255
|
||||
213 41 32
|
||||
156 0 0
|
||||
255 0 255
|
||||
255 0 255
|
||||
255 0 255
|
||||
255 0 255
|
||||
213 205 205
|
||||
131 123 123
|
||||
112 40 40
|
||||
232 128 120
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
16 16 16
|
||||
255 255 255
|
||||
|
||||
@ -2,18 +2,18 @@ JASC-PAL
|
||||
0100
|
||||
16
|
||||
153 210 164
|
||||
246 246 230
|
||||
213 213 197
|
||||
180 180 164
|
||||
148 148 115
|
||||
98 98 74
|
||||
180 180 164
|
||||
246 246 230
|
||||
16 16 16
|
||||
213 213 197
|
||||
255 255 255
|
||||
213 41 32
|
||||
156 0 0
|
||||
255 0 255
|
||||
255 0 255
|
||||
255 0 255
|
||||
255 0 255
|
||||
213 205 205
|
||||
131 123 123
|
||||
163 32 32
|
||||
219 83 78
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
0 0 0
|
||||
16 16 16
|
||||
255 255 255
|
||||
|
||||
|
Before Width: | Height: | Size: 555 B After Width: | Height: | Size: 538 B |
|
Before Width: | Height: | Size: 625 B After Width: | Height: | Size: 550 B |
@ -1,19 +1,17 @@
|
||||
JASC-PAL
|
||||
0100
|
||||
16
|
||||
115 197 164
|
||||
119 103 74
|
||||
196 173 122
|
||||
249 229 150
|
||||
237 206 93
|
||||
79 107 71
|
||||
104 140 84
|
||||
181 206 80
|
||||
130 173 84
|
||||
51 76 54
|
||||
0 0 0
|
||||
250 250 250
|
||||
94 9 13
|
||||
167 29 38
|
||||
220 109 82
|
||||
214 59 52
|
||||
14
|
||||
0 183 239
|
||||
43 97 14
|
||||
164 216 74
|
||||
16 16 16
|
||||
95 171 29
|
||||
241 201 80
|
||||
198 169 83
|
||||
254 254 254
|
||||
101 16 12
|
||||
157 24 17
|
||||
222 81 69
|
||||
249 164 162
|
||||
36 77 28
|
||||
75 133 61
|
||||
|
||||
@ -1,19 +1,17 @@
|
||||
JASC-PAL
|
||||
0100
|
||||
16
|
||||
115 197 164
|
||||
119 103 74
|
||||
196 173 122
|
||||
249 229 150
|
||||
237 206 93
|
||||
79 107 71
|
||||
104 140 84
|
||||
181 206 80
|
||||
130 173 84
|
||||
51 76 54
|
||||
0 0 0
|
||||
250 250 250
|
||||
94 9 13
|
||||
198 113 15
|
||||
237 206 93
|
||||
250 173 35
|
||||
14
|
||||
0 183 239
|
||||
43 97 14
|
||||
164 216 74
|
||||
16 16 16
|
||||
95 171 29
|
||||
241 201 80
|
||||
198 169 83
|
||||
254 254 254
|
||||
194 80 3
|
||||
221 143 0
|
||||
255 212 22
|
||||
249 164 162
|
||||
185 77 49
|
||||
255 118 66
|
||||
|
||||
|
Before Width: | Height: | Size: 1.5 KiB After Width: | Height: | Size: 1.7 KiB |
|
Before Width: | Height: | Size: 1.5 KiB After Width: | Height: | Size: 1.7 KiB |