pokerogue/src/phases
innerthunder 70295280da
[Move] Implement Substitute (#2559)
* Implement Substitute

Squashed commit from working branch

* Fix integration test imports

* Use Override Helper utils + Fix Baton Pass test

* Update src/test/moves/substitute.test.ts

Co-authored-by: Adrian T. <68144167+torranx@users.noreply.github.com>

* Fix test imports + nits

* Document RemoveAllSubstitutesAttr

* Fix some strict-null issues

* more strict-null fixes

* Fix baton pass test

* Reorganized Substitute translation keys

* Added checks for substitute in contact logic

* Clean up Unseen Fist contact logic

* Remove misleading comment in Download attr

* RIP phases.ts

* Fix imports post-phase migration

* Rewrite `move.canIgnoreSubstitute` to `move.hitsSubstitute`

* Also fixed interactions with Shell Trap and Beak Blast

* Removed some leftover `canIgnoreSubstitute`s

* fix issues after beta merge

* Status move effectiveness now accounts for substitute

* More edge case tests (Counter test failing)

* Fix Counter + Trap edge cases + add Fail messagesd

* Fix leftover nit

* Resolve leftover test issues

* Fix Sub offset carrying over to Trainer fights

* Hide substitute sprite during catch attempts

* Make substitutes baton-passable again

* Remove placeholder locale keys and SPLASH_ONLY

* Fix imports and other nits

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>

* ESLint

* Fix imports

* Fix incorrect `resetSprite` timing

* Fix substitute disappearing on hit (maybe?)

* More animation fixes (mostly for Roar)

---------

Co-authored-by: Adrian T. <68144167+torranx@users.noreply.github.com>
Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com>
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-09-13 12:46:22 -04:00
..
add-enemy-buff-modifier-phase.ts fix and optimize imports (#4061) 2024-09-07 21:37:37 -07:00
attempt-capture-phase.ts [Move] Implement Substitute (#2559) 2024-09-13 12:46:22 -04:00
attempt-run-phase.ts Fixed small RNG misusage (#4092) 2024-09-08 02:33:33 +01:00
battle-end-phase.ts fix and optimize imports (#4061) 2024-09-07 21:37:37 -07:00
battle-phase.ts fix and optimize imports (#4061) 2024-09-07 21:37:37 -07:00
berry-phase.ts fix and optimize imports (#4061) 2024-09-07 21:37:37 -07:00
check-switch-phase.ts fix and optimize imports (#4061) 2024-09-07 21:37:37 -07:00
command-phase.ts [Move] Use BattlerTag for move-disabling effects (#2051) 2024-09-05 08:44:22 +00:00
common-anim-phase.ts [Move] Implement Substitute (#2559) 2024-09-13 12:46:22 -04:00
damage-phase.ts [Move] Implement Substitute (#2559) 2024-09-13 12:46:22 -04:00
egg-hatch-phase.ts [Hotfix] Fix cases where hatched Pokemon don't get an egg move (#4102) 2024-09-08 02:45:30 -04:00
egg-lapse-phase.ts [Enhancement] Add option for egg skip to settings (#4193) 2024-09-12 10:33:36 -04:00
egg-summary-phase.ts [Hotfix] fix UI transition causing unusual freezes after egg summary shown (#4126) 2024-09-10 14:23:13 +01:00
encounter-phase.ts [Bug] Fix reloads causing RNG inconsistencies, Moody and Acupressure use seeded RNG now (#3952) 2024-09-03 09:14:45 -04:00
end-card-phase.ts fix and optimize imports (#4061) 2024-09-07 21:37:37 -07:00
end-evolution-phase.ts fix and optimize imports (#4061) 2024-09-07 21:37:37 -07:00
enemy-command-phase.ts [Test] Add forceEnemyMove Game Manager util (#3678) 2024-09-04 17:56:57 +00:00
enemy-party-member-pokemon-phase.ts fix and optimize imports (#4061) 2024-09-07 21:37:37 -07:00
evolution-phase.ts [Refactor][QoL] Game Audio + New Settings (#3527) 2024-08-25 17:40:14 +01:00
exp-phase.ts fix and optimize imports (#4061) 2024-09-07 21:37:37 -07:00
faint-phase.ts [Move] Implement Substitute (#2559) 2024-09-13 12:46:22 -04:00
field-phase.ts fix and optimize imports (#4061) 2024-09-07 21:37:37 -07:00
form-change-phase.ts [Refactor][QoL] Game Audio + New Settings (#3527) 2024-08-25 17:40:14 +01:00
game-over-modifier-reward-phase.ts fix and optimize imports (#4061) 2024-09-07 21:37:37 -07:00
game-over-phase.ts fix endless end dialogue (#4069) 2024-09-06 17:23:19 +00:00
hide-party-exp-bar-phase.ts fix and optimize imports (#4061) 2024-09-07 21:37:37 -07:00
learn-move-phase.ts Merge branch 'main' into beta 2024-09-11 07:29:18 -07:00
level-cap-phase.ts fix and optimize imports (#4061) 2024-09-07 21:37:37 -07:00
level-up-phase.ts fix and optimize imports (#4061) 2024-09-07 21:37:37 -07:00
login-phase.ts fix and optimize imports (#4061) 2024-09-07 21:37:37 -07:00
message-phase.ts fix and optimize imports (#4061) 2024-09-07 21:37:37 -07:00
modifier-reward-phase.ts fix and optimize imports (#4061) 2024-09-07 21:37:37 -07:00
money-reward-phase.ts fix and optimize imports (#4061) 2024-09-07 21:37:37 -07:00
move-anim-test-phase.ts [Move] Implement Substitute (#2559) 2024-09-13 12:46:22 -04:00
move-effect-phase.ts [Move] Implement Substitute (#2559) 2024-09-13 12:46:22 -04:00
move-end-phase.ts fix and optimize imports (#4061) 2024-09-07 21:37:37 -07:00
move-header-phase.ts fix and optimize imports (#4061) 2024-09-07 21:37:37 -07:00
move-phase.ts [Move] Implement Substitute (#2559) 2024-09-13 12:46:22 -04:00
new-battle-phase.ts Deleted phases.ts (#3618) 2024-08-19 03:23:52 +01:00
new-biome-encounter-phase.ts fix and optimize imports (#4061) 2024-09-07 21:37:37 -07:00
next-encounter-phase.ts fix and optimize imports (#4061) 2024-09-07 21:37:37 -07:00
obtain-status-effect-phase.ts [Move] Implement Substitute (#2559) 2024-09-13 12:46:22 -04:00
outdated-phase.ts fix and optimize imports (#4061) 2024-09-07 21:37:37 -07:00
party-heal-phase.ts fix and optimize imports (#4061) 2024-09-07 21:37:37 -07:00
party-member-pokemon-phase.ts fix and optimize imports (#4061) 2024-09-07 21:37:37 -07:00
party-status-cure-phase.ts fix and optimize imports (#4061) 2024-09-07 21:37:37 -07:00
player-party-member-pokemon-phase.ts fix and optimize imports (#4061) 2024-09-07 21:37:37 -07:00
pokemon-anim-phase.ts [Move] Implement Substitute (#2559) 2024-09-13 12:46:22 -04:00
pokemon-heal-phase.ts fix and optimize imports (#4061) 2024-09-07 21:37:37 -07:00
pokemon-phase.ts fix and optimize imports (#4061) 2024-09-07 21:37:37 -07:00
post-game-over-phase.ts fix and optimize imports (#4061) 2024-09-07 21:37:37 -07:00
post-summon-phase.ts fix and optimize imports (#4061) 2024-09-07 21:37:37 -07:00
post-turn-status-effect-phase.ts [Move] Implement Substitute (#2559) 2024-09-13 12:46:22 -04:00
quiet-form-change-phase.ts [P3 Bug] Fix Transform SFX not playing on quiet form changes (#4144) 2024-09-10 10:13:16 -04:00
reload-session-phase.ts fix and optimize imports (#4061) 2024-09-07 21:37:37 -07:00
return-phase.ts [Move] Implement Substitute (#2559) 2024-09-13 12:46:22 -04:00
ribbon-modifier-reward-phase.ts fix and optimize imports (#4061) 2024-09-07 21:37:37 -07:00
scan-ivs-phase.ts [Move] Implement Substitute (#2559) 2024-09-13 12:46:22 -04:00
select-biome-phase.ts fix and optimize imports (#4061) 2024-09-07 21:37:37 -07:00
select-challenge-phase.ts fix and optimize imports (#4061) 2024-09-07 21:37:37 -07:00
select-gender-phase.ts fix and optimize imports (#4061) 2024-09-07 21:37:37 -07:00
select-modifier-phase.ts fix and optimize imports (#4061) 2024-09-07 21:37:37 -07:00
select-starter-phase.ts fix and optimize imports (#4061) 2024-09-07 21:37:37 -07:00
select-target-phase.ts fix and optimize imports (#4061) 2024-09-07 21:37:37 -07:00
shiny-sparkle-phase.ts fix and optimize imports (#4061) 2024-09-07 21:37:37 -07:00
show-ability-phase.ts fix and optimize imports (#4061) 2024-09-07 21:37:37 -07:00
show-party-exp-bar-phase.ts fix and optimize imports (#4061) 2024-09-07 21:37:37 -07:00
show-trainer-phase.ts fix and optimize imports (#4061) 2024-09-07 21:37:37 -07:00
stat-stage-change-phase.ts [Refactor/Bug/Move] Overhaul Stats and Battle Items, Implement Several Stat Moves (#2699) 2024-09-02 22:12:34 -04:00
summon-missing-phase.ts fix and optimize imports (#4061) 2024-09-07 21:37:37 -07:00
summon-phase.ts fix and optimize imports (#4061) 2024-09-07 21:37:37 -07:00
switch-biome-phase.ts fix and optimize imports (#4061) 2024-09-07 21:37:37 -07:00
switch-phase.ts fix and optimize imports (#4061) 2024-09-07 21:37:37 -07:00
switch-summon-phase.ts [Move] Implement Substitute (#2559) 2024-09-13 12:46:22 -04:00
test-message-phase.ts fix and optimize imports (#4061) 2024-09-07 21:37:37 -07:00
title-phase.ts fix and optimize imports (#4061) 2024-09-07 21:37:37 -07:00
toggle-double-position-phase.ts fix and optimize imports (#4061) 2024-09-07 21:37:37 -07:00
trainer-message-test-phase.ts fix and optimize imports (#4061) 2024-09-07 21:37:37 -07:00
trainer-victory-phase.ts Merge branch 'main' into beta 2024-09-11 07:29:18 -07:00
turn-end-phase.ts fix and optimize imports (#4061) 2024-09-07 21:37:37 -07:00
turn-init-phase.ts fix and optimize imports (#4061) 2024-09-07 21:37:37 -07:00
turn-start-phase.ts [Refactor/Bug/Move] Overhaul Stats and Battle Items, Implement Several Stat Moves (#2699) 2024-09-02 22:12:34 -04:00
unavailable-phase.ts fix and optimize imports (#4061) 2024-09-07 21:37:37 -07:00
unlock-phase.ts fix and optimize imports (#4061) 2024-09-07 21:37:37 -07:00
victory-phase.ts fix and optimize imports (#4061) 2024-09-07 21:37:37 -07:00
weather-effect-phase.ts [Misc] eslint rule to prevent .js imports (#4160) 2024-09-10 22:34:50 +02:00