pokerogue
pokerogue copied to clipboard
[Bug] Moves copied by Dancer should not consume PP
What are the changes the user will see?
Dancer will no longer use PP when triggered.
Why am I making these changes?
Dancer is not supposed to consume PP.
What are the changes from a developer perspective?
The ignorePP
parameter is passed as true
to the MovePhase
created by the Dancer ability, and the ignorePP
parameter is made to actually function in MovePhase:start().domove()
.
How to test the changes?
Override the battle type to doubles, have a team of Oricorio + another Pokémon and add Swords Dance via the moves override. Use Swords Dance with the non-Oricorio Pokémon and have Oricorio use a different move. Example:
const overrides = {
MOVESET_OVERRIDE: [Moves.SPLASH, Moves.SWORDS_DANCE],
OPP_SPECIES_OVERRIDE: Species.MAGIKARP,
OPP_MOVESET_OVERRIDE: Array(4).fill(Moves.SPLASH),
BATTLE_TYPE_OVERRIDE: "double"
} satisfies Partial<InstanceType<typeof DefaultOverrides>>;
Screenshots/Videos
Before fix:
https://github.com/user-attachments/assets/50062eb6-ac79-44de-ad89-a115acb5f710
After fix:
https://github.com/user-attachments/assets/3fcf807a-9590-406b-94f9-48053b28d3c3
Checklist
- [x] I'm using
beta
as my base branch - [x] There is no overlap with another PR?
- [x] The PR is self-contained and cannot be split into smaller PRs?
- [x] Have I provided a clear explanation of the changes?
- [x] Have I considered writing automated tests for the issue?
- ~[ ] If I have text, did I add placeholders for them in locales?~
- [x] Have I tested the changes (manually)?
- [x] Are all unit tests still passing? (
npm run test
)
- [x] Are all unit tests still passing? (
- ~[ ] Are the changes visual?~
- [x] Have I provided screenshots/videos of the changes?