This introduces a new class, BattleActions, available as `battle.actions`,
moving all functions from `data/scripts.ts` to `sim/battle-actions.ts`.
This makes it so that "go to definition" will now work correctly for
functions previously in scripts; we no longer need UnimplementedError,
and there's now a clean conceptual separation between `battle` and
`battle-actions` (whereas the previous distinction between `battle` and
`scripts` was basically nonexistent).
This will be a difficult migration if you maintain a fork with custom
scripted mods. I'm sorry! Migration instructions are here:
https://github.com/smogon/pokemon-showdown/pull/8138
* Megas for All: Minor Ability polish
* Attribute Arena Rock to the proper source
* Don't always animate delayed moves when the user is KOed
* Add visual indicator of which Pokémon currently has Gravitational Pull
* Damage the correct Pokémon with Stealth Rock and G-Max Steelsurge through Gravitational Pull
* Megas for All: Minor Ability polish
* Don't animate delayed moves through Long Whip unless the user is active - it gets very weird if it tries when the user is absent, because most of the animations bring back the user and then it just hangs out indefinitely behind the other Pokémon and... it's very funny but also not correct
* Megas for All: Slate 30 and balance/bugfixes
Adding all four new Abilities from Slate 30 (Pool Floaties, Red Licorice, Stygian Shades and Long Whip), but also fixing issues with various other Abilities, including minor balance changes to Savage, Heavenly Techniques, Body of Water and Forgery, and bugfixes to Forgery (again), Seismic Scream and Settle.
* Megas for All: Slate 30 ability (Long Whip)
This is so convoluted, but it has to be able to stack with itself as many as five times over, so I hope this is okay. Let me know if there's a way to streamline this! (and same for Settle, for that matter)
* Megas for All: Slate 30
* Megas for All: Add slate 30 stones
* Megas for All: Update Court Change
* Megas for All: Add slate 30 Mega Evolutions
* Megas for All: Slate 30 and balance changes
Forgery can no longer fake a Z-Crystal, so the entire section dedicated to making that work is no longer necessary. However, there's a new form of non-groundedness that needs to be added (the new 'poolfloaties' volatile), and I also modified the damage section slightly because Settle and Body of Water have some weird interactions, and this was the best way I could find to handle them with perfect accuracy. (For reference, Settle is meant to use the user's physical Attack stat without actually becoming a physical move for any other intents or purposes, while Body of Water is now about halfway to the Body Press effect but keeps the user's offensive stat changes rather than its defensive ones.)
* Megas for All: Add two new move modifiers
* Megas for All: Add missing trailing comma
* Megas for All: Improve Red Licorice ability
* Update abilities.ts
Okay I do think this was at least part of the problem so I'm gonna address that first
* Update scripts.ts
* Megas for All: Fix Cinccino and Falinks
Just fixing two minor errors that came up since the last time I touched this patch
* Update data/mods/megasforall/abilities.ts
Co-authored-by: Annika <annika0uwu@gmail.com>
* Megas for All: Define bladeMoves only once
(okay I was so tired when I worked on this code and I'm actually very embarrassed to see that there are three of these in quick succession and I only changed two of them ._.
so uh! clearly Annika's suggestion not to define it three separate times in the first place is the right call XP)
* Update data/mods/megasforall/abilities.ts
Co-authored-by: Annika <annika0uwu@gmail.com>
* Update scripts.ts
* Megas for All: Abilities for slate 31 and bugfixes
* Revise some shortDescs so they can fit better
* Accommodate for Illusion in some messages (previously, they gave away the Pokémon's real name)
* Revise Forgery (again) - it can no longer copy Mega Stones, and it no longer wears off when the user is hit
* Improve the functionality of Clairvoyance (for consistency with Future Sight and other delayed moves)
* Preserve type change indicators for SOS and Stance Change (established convention is for every Mega in the mod to have these regardless of whether it has changed type, but they disappear when changing form)
* Make sure Sticky Gel doesn't ignite more than once at a time (has been happening)
* Add an activation message to Stygian Shades to reduce confusion
* Overhaul Long Whip (now compatible with the varying base powers of Triple Axel and Triple Kick; now decides accuracy at the start and guarantees that every subsequent hit will land; now persists after the source faints and behaves more similarly to other delayed moves)
* Add new Abilities from slate 31, the very over-the-top complicated Gravitational Pull and the refreshingly simple Chakra Lock
* Megas for All: Improve functionality of Long Whip
* Megas for All: Slate 31
* Megas for All: Slate 31 stones
* Megas for All: Slate 31 compatibility
Modify all entry hazards to account for Gravitational Pull and Triple Axel and Triple Kick to account for Long Whip
* Megas for All: Add slate 31 forms
Add Mega Torterra, Mega Infernape and Mega Empoleon and revise Mega Zoroark's stats
* Megas for All: Slate 31 moves and balance changes
* Megas for All: Minor Ability corrections
* Megas for All: longWhipBoost
* Update moves.ts
* Megas for All: Fix Long Whip
* Megas for All: Fix Alchemist
SHOOT sorry I skipped over this
Meant to do it in the same commit
That was just a copying error
* Apply suggestions from code review
Aaaaa thank you so much! ;u;
Co-authored-by: Kris Johnson <11083252+KrisXV@users.noreply.github.com>
* Megas for All: Condense Long Whip conditions
WOW this saves so much space I never knew you could do that
* Update conditions.ts
Co-authored-by: Annika <annika0uwu@gmail.com>
Co-authored-by: Kris Johnson <11083252+KrisXV@users.noreply.github.com>