Commit Graph

1949 Commits

Author SHA1 Message Date
Scooom
ee6115f49d
[Challenge] Flip Stats Challenge (#5087)
* Implement Flip Stat Challange

* Add Achivement

* Update challenge code to block other challenges.

* Add Achievment Image

* Add FLIP_STAT to enum ChallengeType

* Fix comment for FlipStatChallenge

* Add applyFlipStat override to Challenge Class, and add override inside of FlipStatsChallenge

* Add ChallengeType.FLIP_STAT case to export function applyChallenges (Master Switch Function)

* Properly block other challange achviements

* Change the way achivements are blocked by challenge modes to a more flexible method

* Adjust the image for Flip Stat, and add an additional achivement for completing both Flip and Inverse

* Fix FLIP_INVERSE achivement to check ALL challanges are met, not SOME

* Remove outdated image

* Fix FlipStat applyChallenges inside calculateBaseStats

* Update locales

---------

Co-authored-by: Scooom <na@na.na>
Co-authored-by: Scooom <jerry@hosterslice.com>
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2025-01-15 01:55:14 -08:00
Jimmybald1
d624733565
[Bug] Fix #5034 removed unnecessary caught data block for certain forms (#5119)
Co-authored-by: Jimmybald1 <147992650+IBBCalc@users.noreply.github.com>
Co-authored-by: damocleas <damocleas25@gmail.com>
2025-01-15 02:12:50 -07:00
AJ Fontaine
e2c6bec418
[Bug] Fix Poltergeist message displaying before move use (#5040) 2025-01-15 00:53:16 -08:00
damocleas
d5f84cf3df
Change Archen HA from Emergency Exit to Wimp Out (#5124) 2025-01-14 19:07:09 -07:00
schmidtc1
001b61c1c7
[Bug][Move] Refactor moves that call a random move (#3380)
* Combine moveset from allies and uses it to get a move

* Clearer implementation of combining user and teammates' moves

* Refactor assist and sleep talk to use metronome's attribute for calling a move

* Refactor move filtering in RandomMovesetMoveAttr, creates arrays with invalid moves for assist/sleep talk

* Refactor RandomMoveAttr to set moveId in condition, places reused code in callMove in RandomMoveAttr

* Correct invalid move lists, adds Max/Z moves to metronome's list

* Remove ignoresVirtual from beta merge

* Remove Max/Z moves per frutescens' comment

* Fix bug with metronome/copycat/assist/sleep talk targeting ally

* Experimental async/await to be tested

* Refactor other attributes to extend CallMoveAttr

* Replace QueuedMove with TurnMove, refactor to attempt two-turn move fix for metronome

* Fix Swallow test due to TurnMove refactor

* Further fixes for TurnMove refactor

* Fix metronome two turn moves for enemy pokemon

* Replace nested ternary with if-else block per DayKev's comment

* Minor fixes

* Adjust command phase args handling

* Create metronome test, refactor RandomMoveAttr for easier testing

* Add unit test for recharge moves

* Refactor Copycat and Mirror Move, adjust move targeting

* Add unit test for ally targeting with Aromatic Mist

* Add tests for secondary effects and recharge moves for metronome

* Add test for Roar, remove test for Acupressure

* Create test for Assist

* Add test for assist failing

* Add sleep talk unit test coverage

* Adjust move-phase to better track last move for copycat, write and update unit tests for assist/copycat

* Create moveHistory in Battle to track all moves used, adjust mirror move to use this, writes unit tests

* Correct mirror move implementation, rewrite unit test to adjust

* Add docs to attrs, update assist to only grab allies sets

* Update assist unit test to match expected functionality

* Update metronome unit test to use getMoveOverride

* Update copycat unit test to use metronome getMoveOverride mock

* Fix phase interception

* Add docs from missed conversations

* Update assist tests to use manual moveset overrides

Minor fixes to other tests

* Remove `export` from `CallMoveAttr`

* Add missing `.unimplemented()` to some Max- and Z-Moves

---------

Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com>
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2025-01-14 15:26:35 -08:00
Jimmybald1
f1e500400a
[Balance][Bug] Fix off by one error in Generate random biome and Daily Mode now has its own function (#5121)
* [Balance] Allow Island and Laboratory in Generate Random Biome

* [Bug] Fix off by one error in Generate Random Biome

* [Balance] Daily Mode now has its own Generate Random Starting Biome

* [Misc] Filtering out Town and End specifically instead of assuming enum value stays consistent forever

---------

Co-authored-by: Jimmybald1 <147992650+IBBCalc@users.noreply.github.com>
2025-01-14 15:45:11 -07:00
NightKev
3a3ebfb783
[Balance] Multi-hit moves now use gen 5+ behavior (#5117) 2025-01-12 15:39:06 -08:00
NightKev
0107b1d47e
[Refactor] Create global scene variable (#4766)
* Replace various `scene` pass-arounds with global scene variable

* Modify tests

* Add scene back to `fade[in|out]()` calls

Co-authored-by: Moka <54149968+MokaStitcher@users.noreply.github.com>

* Fix Bug Superfan ME test

Co-authored-by: Moka <54149968+MokaStitcher@users.noreply.github.com>

* Re-enable fixed test

Co-authored-by: Moka <54149968+MokaStitcher@users.noreply.github.com>

* Rename `gScene` to `globalScene`

* Move `globalScene` to its own file to fix import/async issues

* Fix `SelectModifierPhase` tests

* Fix ME tests by removing `scene` from `expect()`s

* Resolve merge issues

* Remove tsdocs referencing `scene` params

Remove missed instances of `.scene`

* Remove unnecessary `globalScene` usage in `loading-scene.ts`

* Fix merge conflicts

* Attempt to fix circular import issue

* Found the source of the import issue

* Fix merge issues

---------

Co-authored-by: Moka <54149968+MokaStitcher@users.noreply.github.com>
2025-01-12 15:33:05 -08:00
Madmadness65
f83ab00ce4 Add missing 'unused' comment before Max Moves 2025-01-12 13:34:21 -06:00
Zain
b0c347e20d
[Bug] Fixed defog not removing the target's Safeguard and Mist (#5107)
* Fixed defog not removing the target's Safeguard and Mist

* Made requested changes and added unit test

* Remove stray newline

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2025-01-10 18:29:25 -06:00
AJ Fontaine
ec5dadb4f4
[Misc] Undo winter holiday event changes (#5068) 2025-01-03 16:42:06 -07:00
NightKev
206419c9f1
Merge pull request #5061 from pagefaultgames/main
Merge main (1.4.2) into beta
2024-12-31 02:38:07 -08:00
NightKev
14902cdb60
[Hotfix] Prevent Keldeo from changing forms in Daily Run (#5060)
* [Hotfix] Prevent Keldeo from changing forms in Daily Run

* Update patch version
2024-12-30 20:20:23 -08:00
NightKev
1b6374f469
[UI/UX] Change label for music settings (#5053)
Changes from "Consistent/Mixed" to "Gen V + PMD"/"All Gens"

Update `MusicPreferences` enum

* Update locales submodule
2024-12-30 18:55:28 -08:00
AJ Fontaine
8457fb96fe
[Hotfix] Fix off-by-one error for event encounters (#5022)
* Fix off-by-one error for event encounters

* Increment version to 1.4.1

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-12-20 18:41:07 -08:00
AJ Fontaine
82dad5568c
[Balance] Fix Annihilape Tera Blast TM Compatibility (#5016) 2024-12-20 14:14:16 -08:00
damocleas
e9d97db11b
Winter Holiday Event (#5015)
* Update trainer-victory-phase.ts

* Update starters.ts for event

* Update timed-event-manager.ts

* Event stuff

* Cleaning up

* Winter Holiday 2024 Banners

* Update timed-event-manager.ts

* Fix event banner

* Update trainer-config.ts

* FoF, BBound, weather changes

* Fix German Banner

* Add Iron Bundle to event encounters

* Update delibirdy-encounter.test.ts

* Update src/data/weather.ts

Co-authored-by: AJ Fontaine <36677462+Fontbane@users.noreply.github.com>

---------

Co-authored-by: AJ Fontaine <fontbane@gmail.com>
Co-authored-by: Lugiad <2070109+Adri1@users.noreply.github.com>
Co-authored-by: AJ Fontaine <36677462+Fontbane@users.noreply.github.com>
2024-12-20 14:11:06 -08:00
AJ Fontaine
bbb6b46801
[Balance] Change a few early gym teams (#4998)
* Change gyms accessible before wave 30

* Prevent wave 20 gym leader from evolving

* Check game mode for wave 20 trainer evo ban

* Add Whitney Girafarig Crasher Wake Magikarp
2024-12-20 14:10:38 -08:00
NightKev
29a079cfd3
Revert "[UI/UX] Refactor and enable seasonal splash messages (#5009)" (#5014)
This reverts commit 806585f1a6.
2024-12-19 16:04:12 -08:00
AJ Fontaine
806585f1a6
[UI/UX] Refactor and enable seasonal splash messages (#5009)
* Refactor and enable seasonal splash texts

* Update splash text test
2024-12-19 12:01:40 -08:00
NightKev
90c8c97437 Fix BattleBond Greninja moveset: Add Mat Block, remove duplicate move 2024-12-14 10:15:21 -08:00
PrabbyDD
5db3074e2c
[Move] Implement Lunar Dance (#4926)
* beginning immplementation of lunar dance

* adding tests

* changing in game message and making full hp message not display

* Reuse Healing Wish's move attr, update test

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-12-09 21:25:28 -06:00
damocleas
50a4669a26
[Balance] [Beta] Egg Move Fixes (#4965)
* Update egg-moves.ts

* Update egg-moves.ts
2024-12-03 21:22:38 +01:00
PigeonBar
dd72c5e189
[Move][Beta] Powder edge cases (#4960)
* [Move][Beta] Powder edge cases

* Fix Heavy Rain check to account for weather suppression

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

* "{Pokemon} used {Fire-type move}!" now displays before Powder activation

Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com>

* Make `showMoveText()` and `showFailedText()` public for now

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com>
2024-12-02 22:28:57 -08:00
damocleas
3ca0fdae6b
[Balance] December Starter Balance Changes (#4883)
* Update passives.ts

* Update egg-moves.ts

* Update egg-moves.ts

* Update species-egg-tiers.ts

* Update egg-moves.ts

* Update egg-moves.ts

* Update starters cost

* Update egg-moves.ts

* fixed mispell

* update egg tests to match latest species egg tier changes

* Update starters.ts - fixed placements and reduced Duraludon back to 5

* Update species-egg-tiers.ts fixed placements

* Kartana and Iron Valiant passive change

* Update passives.ts

* Update egg-moves.ts

* Update species-egg-tiers.ts

* Update starters.ts

* fix '

---------

Co-authored-by: Moka <millennium.stitcher@gmail.com>
Co-authored-by: Moka <54149968+MokaStitcher@users.noreply.github.com>
2024-12-02 14:59:02 -05:00
PigeonBar
2f377f26b7
[P1 Bug] Fix multi lens granting infinite Future Sight hits (#4961)
* [P1 Bug] Fix multi lens granting infinite Future Sight hits

* Updated `.partial()` tags

* Added corresponding TODO comments to tests
2024-12-02 12:40:59 -05:00
innerthunder
e930536efe
[Move] Implement Powder (with edge case) (#3662)
* Powder basic implementation

* Add Powder integration tests

* Fix thaw test

* Use new test utils and type check function

* More edge case tests

* Make Powder (P)

* Add locale keys

* Add placeholder common anim

* Use CommonAnimPhase instead of async animation

* Add comments with new English text

* Make Powder `edgeCase` instead

* ESLint

* Fix imports

* Add `moveName` key arg for other languages

* ESLint

* Update locales

* Fix pages issues

* Update Powder explosion animation

* Update common-powder.json

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

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

* Remove lingering TIMEOUTs

* More test cleanup

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-12-01 14:27:55 -08:00
Bertie690
1607a694c3
[Move] Partially Implement Instruct (#4857)
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com>
Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com>
2024-12-01 14:27:17 -08:00
Mumble
2b59a53285
[Bug][UI] Fixes to Run History Logging (#4716)
* new function

* weak attempt of documentation

* mysterious chest handled...? maybe.

* override comments

* one more instruction

* fixing up the logging lol

* lah

* fixing it up

* coommrent

* lalal

* run info fixes

* Addressed PigeonBar's comments

* Centered run info text + fixed trainer sprites.

* Fixed function name.

* Update tsdoc in `overrides.ts`

Co-authored-by: Moka <54149968+MokaStitcher@users.noreply.github.com>

* Fix tsdoc comment

* sligthly rewrite centering of biome and wave text in run info

---------

Co-authored-by: frutescens <info@laptop>
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
Co-authored-by: Moka <54149968+MokaStitcher@users.noreply.github.com>
Co-authored-by: Moka <millennium.stitcher@gmail.com>
2024-12-01 19:48:43 +01:00
Daniel Pochert
fad29ffc51
[P1 Bug] Prevent crash from missing pokemon sprite (#4821)
* catch Sprite.play() errors in egg hatch phase

* catch more Sprite.play() errors causing crashes if sprite missing

* Add changes suggested by PigeonBar

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
Co-authored-by: Moka <54149968+MokaStitcher@users.noreply.github.com>
2024-12-01 19:07:48 +01:00
AJ Fontaine
7b06314940
[Bug] Fix fusions learning moves of wrong component mon on evolution (#4921)
* Fix fusions learning moves of wrong component mon on evolution

* Apply suggestions from code review

Co-authored-by: Moka <54149968+MokaStitcher@users.noreply.github.com>

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
Co-authored-by: Moka <54149968+MokaStitcher@users.noreply.github.com>
2024-12-01 17:38:16 +01:00
Mumble
cef2f2adf7
[Ability] Fully implement Sheer Force (#4890)
* Added checks for Sheer Force interactions currently in the code.

* Test for Relic Song interaction

* Test for Shell Bell interaction

* Created new Modifier class MoveEffectModifier

* Applied new modifier class.

* Revert "Applied new modifier class."

This reverts commit 222bc8d428.

* Revert "Created new Modifier class MoveEffectModifier"

This reverts commit 0e57ed03ff.

* Added checks for Shell Bell, Scope Lens, Wide Lens, Leek, and Golden Punch

* Fixing function calls.

* Fixed getSecondaryChanceMultiplier to just look at sheer force.

* Rewrote old Sheer Force tests in accordance to current testing standards.

* Resetting modifiers.ts

* Update src/data/pokemon-forms.ts

Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com>

* Moved getSecondaryChanceMultiplier to FlinchChanceModifier and revised Serene Grace tests

* Adding an additional override to prevent test failures.

* Removed Serene Grace factor from modifier.

* Added forgotten conditional.

* Added comment

---------

Co-authored-by: frutescens <info@laptop>
Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com>
2024-11-30 18:40:05 -08:00
Moka
38d7a26053
[Sprite][Bug][ME] Fix ME Intro visuals for shinies and other shiny related fixes (#4827)
* [ME] Fix GTS Wonder Trade shiny not giving luck

* [ME] Shiny Magikarp from Pokemon Salesman can have any variant

* [ME] Shiny lock MEs with custom or special sprites

* [ME] GTS shows shiny sparkle for received Pokemon

* [ME] Shiny lock 'Slumbering Snorlax' and 'The Strong Stuff'

* [ME] Dancing Lessson: show shiny sparkle for Oricorio in intro

* [ME] Show shiny sparkles for Pokemon in ME intro

* fix tests

* Ensure shiny sparkle animation is initialized before playing it (Fixes #3924)

* make loading variant assets cleaner

* cleanup EnemyPokemon shiny initialization

* test fixes and final cleanup

* Make 'getSpeciesFilterRandomPartyMemberFunc' more readable

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-11-30 16:08:53 -08:00
muscode
5af2bcd5ec
[Bug] Prevent battle skip with Wimp Out (#4931)
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
Co-authored-by: Mumble <171087428+frutescens@users.noreply.github.com>
Co-authored-by: PigeonBar <56974298+PigeonBar@users.noreply.github.com>
Co-authored-by: Moka <54149968+MokaStitcher@users.noreply.github.com>
2024-11-30 11:44:06 -08:00
star-krieg
d1294caeb6
[Balance] Candy friendship changes (#4947)
Changes:

- Increase default value for friendship gain from winning a battle (from 2 to 3)
- Increase Classic candy friendship multiplier (from 2 to 3)
- Increase Rare Candy friendship gain (from 5 to 6)
- Decrease value for friendship decrease from losing a battle (from 10 to 5)
- Update Candy friendship thresholds for getting candy for some starter costs.
- Change Soothe Bell from Rogue to Great (Weight: 2 in Great)
- Adjust Map weight to account for change (Weight: 1 to 2)
- Clowning around ME: When shuffling items, soothe bells will get replaced by a random Ultra Tier item
- Clowning around ME: When shuffling items, no item will get replaced by a Soothe Bell

Commit history: 

* Candy friendship changes

Update default value for friendship gain from battle and adjust Soothe Bell tier to Great

* Update modifier-type.ts

* Update friendship constants

* Clowning around encounter no longer consider soothe bell rogue tier

* Expert Breeder ME test will no longer fail if candy gain per battle is changed

---------

Co-authored-by: Starkrieg <starkieg.art@gmail.com>
Co-authored-by: damocleas <damocleas25@gmail.com>
Co-authored-by: Moka <millennium.stitcher@gmail.com>
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-11-30 20:28:29 +01:00
NightKev
eef0183761
[Bug] Stakeout should trigger if the enemy switches with U-Turn/etc (#4918) 2024-11-30 02:28:31 -08:00
PrabbyDD
b70bf0f4aa
[Bug] Fix for Octolock bypasses Ghost Invulnerability to lower Stats (#4923)
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com>
2024-11-30 02:06:09 -08:00
PigeonBar
75af359154
[Bug][Beta] Fix phazing moves forcing switches into fainted/ineligible Pokemon (#4951) 2024-11-30 01:48:20 -08:00
Bertie690
5fed690187
[Bug] Fixed Super Fang interaction with Multi Lens (#4914)
Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com>
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-11-30 01:47:47 -08:00
PigeonBar
3bf2059aaf
[Balance] Safeguard to prevent Paradox Pokemon spawning in ME's (#4915) 2024-11-29 22:02:29 -08:00
NightKev
9bc046fd64
[Bug] Honey Gather and Pickup will only activate if the battle was won (#4903)
* Honey Gather and Pickup will only activate if the battle was won

* Add tests for Honey Gather

* Moves `highestEndlessWave` and `battles` stats outside of victory condition
2024-11-29 13:29:54 -08:00
muscode
6725164918
[Bug] Fixed First Turn Move + Wimp Out interaction (#4928)
* fix first turn move + wimpoout

* Add comment about edge case issue

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-11-29 13:23:55 -08:00
Ethan
de0d97739e
[Move] Implement True Force Switch (Roar, Whirlwind, Circle Throw, Dragon Tail) (#4881)
* Force switch implemenation

* Fix conditionals checking `SwitchType`

Use `prependToPhase()` instead of `unshiftPhase()`

* Update comments slightly, replace `||` chain with `.includes()`

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-11-28 22:43:12 -08:00
Moka
48dc5d0ee7
[Balance] 'Breeders in Space' cheevo unlocks for normal and expert breeders (#4911)
* 'Breeders in Space' cheevo unlocks for normal and expert breeders

* Reduce breeder in space achievement points
2024-11-28 17:21:25 -08:00
NightKev
03b073f21f
[Bug] Analytic should only increase damage if the user moves last (#4917)
* Analytic only increases damage if the user moves last

* Return `isNullOrUndefined()` instead of `if` chain

---------

Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com>
2024-11-28 17:20:54 -08:00
NightKev
2b64ef6fc9
Mark Rage Fist as partial in line with similar moves/abilities (#4894) 2024-11-28 17:17:18 -08:00
innerthunder
c86b6352bc
Remove Supersweet Syrup's once-per-battle condition (#4906) 2024-11-27 23:53:37 -08:00
PigeonBar
2d6dfc45a0
[Documentation] Remove obsolete .edgeCase() from Gulp Missile (#4909) 2024-11-18 21:44:49 -05:00
Blitzy
b293797c99
[Balance] Make Intrepid Sword / Dauntless Shield their Generation 8 Implementation (#4902) 2024-11-18 17:47:11 -08:00
NightKev
c584dfafb7
[Balance] Remove reduced weight for regional species from egg pulls (#4882) 2024-11-18 17:46:52 -08:00
Mumble
e825e308f9
[Test] Update wimp out test and comment (#4900)
* Changed conditional to actually consider the wave index.

* Added PigeonBar's test

* Added check for MEs + Documentation

* Apply suggestions from code review

Co-authored-by: PigeonBar <56974298+PigeonBar@users.noreply.github.com>

---------

Co-authored-by: frutescens <info@laptop>
Co-authored-by: PigeonBar <56974298+PigeonBar@users.noreply.github.com>
2024-11-17 16:22:11 -05:00
Mumble
6b58d51ea2
Changed conditional to actually consider the wave index. (#4899)
Co-authored-by: frutescens <info@laptop>
2024-11-17 20:19:23 +00:00
Moka
ae8efeedf8
[UI] Make ME text legible when using the legacy UI theme (#4847) 2024-11-16 23:34:14 +00:00
Daniel Pochert
7dc4210f71
[Bug] fix training session encounter not applying nature correctly (#4801)
* fix training session encounter not applying nature correctly

* implement pokemon.setCustomNature + nature unlock utility method(s)

* update doc

---------

Co-authored-by: Moka <54149968+MokaStitcher@users.noreply.github.com>
2024-11-16 23:33:14 +00:00
innerthunder
360a897ed2
[Balance] Endure Tokens only endure one hit (#4875)
* Endure Tokens only endure one hit

* Add tests for Endure

* Update docs

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-11-15 21:11:46 +01:00
AJ Fontaine
5e7d44abfd
[Balance] Fix Liquidation, Double-Edge, Body Press compatibility (#4879) 2024-11-15 14:07:02 -05:00
Mumble
eb3c0d731a
[P2] Lunar Blessing / Jungle Healing now heal Freeze (#4877)
* Added Freeze to statuses healed by Jungle Healing / Lunar Blessing

* Fixed up documentation.

---------

Co-authored-by: frutescens <info@laptop>
2024-11-15 12:17:46 -05:00
pom-eranian
5ca1fd5cfd
[Sprite] Set default fps to 10 instead of 12 on pokemon animations (#4842)
* Set default fps to 10 instead of 12 for pokemon sprites

* [Sprite] Set pokemon animation framerate to 10 where assigned
2024-11-15 11:58:50 -05:00
AJ Fontaine
ef7d860166
[Balance] Remove from trainers: Pika/Eevee forms before 30, BB Greninja, Rival starter HA (#4863)
* Remove Pika/Eevee forms from Trainers before wave 30, and BB Gren

* Fix `egg` test

* Ban hidden ability from Rival starter

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-11-15 11:57:02 -05:00
innerthunder
9273b4930d
[Beta][P1] Fix crash when resetting Commanded Dondozo before Trainer battles (#4873)
* Add failsafe to Commander remove anim

* Commanded tag saves Tatsu form on reload
2024-11-15 11:56:05 -05:00
NightKev
8326e3556b
Remove .edgeCase() from fully implemented moves (#4876)
This includes Sunsteel Strike, Moongeist Beam and Photon Geyser
2024-11-15 08:29:52 -08:00
PigeonBar
b1138c1d70
[P2][Beta] Freeze-dry Re-implementation (#4874) 2024-11-14 21:07:19 -08:00
Mumble
58912db8f1
[P2] Telekinesis now sets FloatingTag to 3 turns instead of 5 turns (#4869)
Co-authored-by: frutescens <info@laptop>
2024-11-14 16:16:05 -05:00
Mumble
d0d9eb78da
Set the IVs of default starters to 15. (#4861)
Co-authored-by: frutescens <info@laptop>
2024-11-14 11:35:13 -08:00
geeilhan
0c521bbe08
[Move] Implement Freeze Dry type-changed interactions (#4840)
* Full implementation of freeze-dry including edge cases such as Normalize and Electrify plus tests

* Update comments

* renamed WaterSuperEffectTypeMultiplierAttr to FreezeDryAttr

* Added test case for freeze dry during inverse battles

* cleaned up code making it more general

* Added some more documentation

* implementing reviewed changes

* used getMoveType() instead of move.type

* added additional test cases to freeze dry

* Revert "used getMoveType() instead of move.type"

This reverts commit 03445dfab4.

* added reviewed changes without changing public/locales

---------

Co-authored-by: ga27lok <geeil.han@tum.de>
2024-11-13 10:41:39 -05:00
PigeonBar
6f3fd0f138
[Beta][P3] Fix failed charge moves not displaying failed text (#4853) 2024-11-12 06:29:37 -05:00
innerthunder
8e26db944d
[Balance][Beta] Revert Spread Move Restriction on Multi-Lens (#4851)
* Multi-Lens now applies to spread moves

* Fix Multi-Lens applying to both damage and power
2024-11-11 21:13:37 -08:00
innerthunder
cebedd220b
[Balance] Rework Multi-Lens (#4831)
* Rework Multi-Lens

* Multi-Lens integration tests

* Apply suggestions from code review

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

* Fix obsolete tests related to Multi-Lens

* Fix flaky unburden tests

* maybe fix flaky ceaseless edge test?

* Fixed Multi-Lens apply comment

* Fix ceaseless edge test for real this time

* Update locales

* Another locale update

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-11-11 14:56:16 -08:00
Mumble
6feb63484c
[P3] Added failIfSingleBattle condtion to Doubles-only moves and display failure message when used in singles (#4839)
* Added failIfSingleBattle condtion to Helping Hand

* Added failIfSingleBattle conditions to Doubles-Only moves

* Adjusted canMove failure condition.

* Updated moves that failIfSingleBattle

* Fixed condtional.

---------

Co-authored-by: frutescens <info@laptop>
2024-11-11 12:29:20 -05:00
chaosgrimmon
f2a2281ff1
[Sprite] Implement female icon assets for Meganium and Doduo + Torchic lines (#4841)
* [Sprite] Implement more female icons

* [Sprite] Add female Doduo/Dodrio icons

* [Sprite] Add female Meganium icons

* [Sprite] Add female Torchic line icons

* [Sprite] Add female Meganium icons

* [Sprite] Add female Torchic line icons

Identical to male counterpart icons
2024-11-10 14:37:21 -05:00
PigeonBar
63ffab027d
[Beta][P2] Several Unburden bug fixes (#4820)
* [P2][Beta] Several Unburden bug fixes

* Unburden test adjustments

* Some further test cleanup

* Add suggested `.bypassFaint()` to Unburden

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-11-10 14:21:29 -05:00
NightKev
2968059814
[P1] Transform and Imposter will now fail when either Pokemon is fused (#4824)
* Transform and Imposter will now fail when either Pokemon is fused

* Prevent Ditto from being randomly generated as part of a fusion
2024-11-10 00:39:05 -05:00
Moka
44a68a91ba
[P1] Fix crash when newly aquired Pokemon are sent in battle (#4835) 2024-11-10 00:35:49 -05:00
Payton Rogers
265b3cb938
[P3] Fix visual bug with level text remaining the same when pokemon levels are reduced in weird dream ME (#4837) 2024-11-10 00:35:16 -05:00
PigeonBar
2bf8acea06
[Beta][P2] Fix Sketch failing to sketch moves that call other moves virtually (#4823)
* [P2][Beta] Fix Sketch failing to sketch Metronome et al

* Suggested changes to `getLastXMoves()`

* Renamed turnCount to moveCount
2024-11-09 13:15:24 -05:00
AJ Fontaine
de4ec5e1cb
[Feature] [Item] Add Catching Charm item (#4811)
* Add catching charm item

* Add Catching Charm item

* Disable catching charm in item pool when dex isn't full enough

* Replace catching charm icon

---------

Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com>
2024-11-09 14:38:45 +08:00
NightKev
00f7fd47df
[Refactor] Remove unnecessary re-exports (#4818)
* Remove unnecessary re-exports

* Move `Type` enum to `src/enums/type.ts`

* Remove import style change from `modifier-type.ts`
2024-11-08 17:44:34 -05:00
Mumble
58d40b905a
[Bug] Fixing Encore's interactions with other Move Restriction moves (#4805)
* Converted EncoreTag into a MoveRestrictionBattlerTag

* Wrote test and added documentation

* Added documentation describing EncoreTag as a whole

* Added PRE_MOVE lapse code to handle early tag expiration from PP-less encored move

* Replaced PRE_MOVE with CUSTOM for lapsing Encore in situations where the encored move has 0 PP

* Add encore tests

* fix overrides

* Apply suggestions from code review

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

* Update command-phase.ts

* Addressed failing eslint test

---------

Co-authored-by: frutescens <info@laptop>
Co-authored-by: innerthunder <brandonerickson98@gmail.com>
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-11-08 09:35:33 -08:00
innerthunder
625b98a6fe
[Move][Refactor] Create Move.getPriority + Fully Implement Upper Hand (#4789)
* Fully Implement Upper Hand

* doc for UpperHandCondition

* New Upper Hand tests + some nit fixes

* Use Fake Out over mocked Tackle in test
2024-11-08 10:50:23 -05:00
Mumble
4821df68f2
[P1] Prevents crash from using Sketch against a lost turn (#4806)
* Added check to make sure that Sketch does not copy a failed move.

* Added check for Struggle.

* Added a revised check.

* Added test + change to valid move finding conditional.

* Made revision to .find target

* Reverting previous commit, whoops.

* Add moveset checks to Sketch tests

---------

Co-authored-by: frutescens <info@laptop>
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-11-07 23:10:46 -05:00
AJ Fontaine
b2fdb9fcd1
[P2] Fix Cosmoem requirng an evolution level (#4812) 2024-11-07 16:33:25 -05:00
Mumble
4c5b83612b
[P2] END biome transition now properly uses seeded RNG (#4809)
Co-authored-by: frutescens <info@laptop>
2024-11-07 10:36:25 -05:00
AJ Fontaine
1f6dab069d
[Feature][Balance] Add critical captures, update shake probability to match gen 6 (#4791)
* Change shake probability to match Gen 6

* Add critical captures, update shake probability to gen 6

* Change IntegerHolder to NumberHolder

* Adjust dex count thresholds for multiplier

* Disable critical captures in fresh start runs

* Skip first shake check for critical captures

* Move shake check for crit captures to after first shake

* Use less insane catch formula

* Integer to number in bounceanim signature

* Use max crit catch dex multiplier in daily runs

* Adjust crit capture animation

---------

Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com>
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-11-06 18:25:27 -08:00
Mumble
6b7efb444b
[Ability] Fully implement Synchronize (#4785)
Co-authored-by: frutescens <info@laptop>
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-11-06 11:29:24 -05:00
Mumble
4f733796c5
[Move] Implement Grudge (#4794)
* some work

* slay dnr

* Fixed up move mechanics

* bahhh

* yawn

* updated lapse type to correctness

* Test + documentation

* yattt

* Remove some redundant code

* Apply suggestions from code review

Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com>

* Update battler-tags.ts

* Fix `PokemonAnimPhase`

---------

Co-authored-by: frutescens <info@laptop>
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com>
2024-11-05 21:32:07 -05:00
innerthunder
eb32545772
[Balance][Beta] Commander now increases double battle chance (#4803) 2024-11-05 11:23:22 -08:00
Moka
b79b643b31
[P2][ME] Fix GTS not getting proper item tier when trading items (#4802) 2024-11-05 12:42:04 -05:00
geeilhan
198d3ce2a6
[P2] Fixing Incorrect Freeze Dry Interaction With Soaked Wonder Guard Target (#4798)
* [Bug] fixed interaction between freeze dry and soaked wonder guard target

* added automated test for freeze dry interaction with soaked wonder guard target

* using parameter instead of function to get typeMultiplier
2024-11-05 12:37:47 -05:00
innerthunder
6fd3ba284c
[Move][Ability] Implement Commander and Order Up (#4670)
* Implement Order Up (mostly untested)

* Commander unit tests + bug fixes

* Implement Order Up (misnamed the other commit...)

* Order Up unit tests

* applying Temp's suggestions + other bugfixes

* add TODO comment

* Reviver Seed reapplies Commander

* ESLint woes

* Some animation fixes

* Update locales

* Order Up now uses attr option

* Prevent semi-invulnerability lapsing out while Commanding

* semi-invulnerability test

* Add `edgeCase`
2024-11-05 12:35:43 -05:00
Adrian T.
88789c685e
[Documentation] Flag Gulp Missile with edge case (#4800) 2024-11-05 11:08:55 -05:00
NightKev
ab6d15ee8a
[Move] Improve Future Sight & Doom Desire (still partial) (#4545)
* Fix behavior of Future Sight and Doom Desire

Add test for Future Sight

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

* Prevent crash if Future Sight target is missing

Co-authored-by: PigeonBar <56974298+PigeonBar@users.noreply.github.com>

* Add `partial()` comments, update `DelayedAttackAttr` return

---------

Co-authored-by: Gianluca Fuoco <gianluca_1227@hotmail.com>
Co-authored-by: PigeonBar <56974298+PigeonBar@users.noreply.github.com>
Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com>
2024-11-04 21:31:40 -05:00
flx-sta
7a0c88e661
[Refactor] Pokerogue API client (#4583)
* start migrating Utils.apiFetch to api class

* move dailyranking to api

* use api in title-ui-handler

* remove: Utils.apiFetch

* migrate `updateSystemSavedata` to api

* migrate clear session savedata to api

* migrate updateAllSavedata to api

* migrate `updateSessionSavedata` to api

* rename `api` to `pokerogue-api`

* migrate unlink discord to pokerogue-api

* migrate unlink google to pokerogue-api

* update pokerogue-api login

* migrate register account to pokerogue-api

* remove Utils.apiPost

* reset overrides.ts

* chore: cleanup

* fix env.development

* fix circular dependencies with api

* fix gamedata verify missing await

* fix daily api calls in daily-run-scorebard

* fix discord-link request body being empty

there was a double `toUrlSearchParams()` call involved

* add pokerogue-api test coverge

* add test-utils `getApiBaseUrl()` method

* add pokerogue-admin-api test coverage

* add pokerogue-account-api test coverage

* add pokerogue-daily-api test coverage

* add pokerogue-savedata-api test coverage

* fix some test describes

* add pokerogue-session-savedata-api test coverage

* add pokerogue-system-savedata-api test coverage

* fix tests

* fix tryExportData

thanks @MokaStitcher

* chore: fix menu-ui-handlers.ts

* fix admin-ui-handler (types)

* extend test-coverage for admin-api

* remove outdated code

* skip some clowning-around-encounter tests if events are active

this is not a permanent solution

* Update src/system/game-data.ts

Co-authored-by: PigeonBar <56974298+PigeonBar@users.noreply.github.com>

* Revert "skip some clowning-around-encounter tests if events are active"

This reverts commit a97dafe8b2.

* mark `localServerUrl` and `apiUrl` as deprecated

in `utils.ts`

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
Co-authored-by: PigeonBar <56974298+PigeonBar@users.noreply.github.com>
2024-11-04 15:57:21 -05:00
Mumble
3a767ed38a
[Refactor] Another Audio clean up (#4077)
* Cleaned up how cry keys were retrieved

* Legendary Pokemon Changes + Cry Cleanup

* Spelling mistake

* Fixed settings.

* correcting typedocs

* eslint

* eslint cleanup

* music pref

* gdfafa

* Music

* Apply suggestions from code review

Co-authored-by: PigeonBar <56974298+PigeonBar@users.noreply.github.com>

* Update src/battle.ts

Co-authored-by: PigeonBar <56974298+PigeonBar@users.noreply.github.com>

* Update src/battle.ts

Co-authored-by: PigeonBar <56974298+PigeonBar@users.noreply.github.com>

* fixed default

* Apply suggestions from code review

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

* Added changes

* Update src/battle-scene.ts

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

* Fix variable usage

* Fix `getFormSpriteKey()` and `.concat()` usage

Co-authored-by: PigeonBar <56974298+PigeonBar@users.noreply.github.com>

* asdsafafaf

* i need to do the dishes ughhh

---------

Co-authored-by: frutescens <info@laptop>
Co-authored-by: PigeonBar <56974298+PigeonBar@users.noreply.github.com>
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
Co-authored-by: Adrian T. <68144167+torranx@users.noreply.github.com>
Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com>
2024-11-03 22:31:07 -05:00
NightKev
770f388c45
[Refactor] Miscellaneous code cleanup (#4596)
* Miscellaneous code cleanup:

- Update `overrides.ts` imports

- Add missing comment and `;` in `eslint.config.js`

- `field/pokemon.ts`:

Rename `generateVariant` to `generateShinyVariant`

Mark some functions as `public`/etc

Update various tsdocs/comments, add tsdocs to `isOfType`

Turn an unreadable 450+ character line into a
readable block of code

- `utils.ts`:

Remove unused function `randSeedEasedWeightedItem`

Mark `IntegerHolder` and `FixedInt` as deprecated

Update some tsdocs/comments

* Convert to inline anonymous function

* Fix indentation in `move-effect-phase.ts`

Rename `getTarget` to `getFirstTarget` for clarity

Convert namespace import to named imports

Add `public`/etc to methods

* Rename `verifyLang` to `hasAllLocalizedSprite` and update tsdoc

* update locale submodule

* Put missing `null` guards around some uses of `getUserPokemon()`

* Fix locales

* Fix Unburden test

---------

Co-authored-by: Moka <millennium.stitcher@gmail.com>
Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com>
2024-11-03 22:23:51 -05:00
innerthunder
c3d832aaca
[Move] Fully Implement Round (#4783) 2024-11-03 21:59:55 -05:00
muscode
3f97c9e39f
[Ability] Implement Unburden (#4534)
* unburden implemented

* Used tag instead of stat changes for Unburden

* added documentation and neutralizing gas test

* accounted for unburden in getEffectiveStat

* fixed doubling speed in two places

* merge conflict resolve

* changed documentation wording, added test for stuff cheeks

* refactor unburden

* merge

* remove console logs

* Update src/data/ability.ts

Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com>

* add neut gas check

Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com>

* Added test for NeutGas user entering while unburden activated

* add spaces to tests, removed passive and [] from applyPostItemLostAbAttrs

* added line breaks after test cases

---------

Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com>
2024-11-03 21:58:12 -05:00
muscode
1619d512cf
[Move] Implement Fairy Lock (#4736)
* inital wip

* wip set isTrapped to true and removed timedtrap

* implement fairy lock

* whitespace fix

* added documentation for tag

* added more suggested tests

* give tests breathing room

Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com>

* give tests breathing room

Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com>

* give tests breathing room

Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com>

* updated nested ternary, changed test name

---------

Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com>
Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com>
2024-11-03 21:56:54 -05:00
NightKev
af473ba4ff
[Refactor] Clean up various methods in battle-scene.ts and pokemon.ts (#4412)
* Update `battle-scene.ts` and `data/field/pokemon.ts`

`battle-scene.ts` changes:
- `getParty()` renamed to `getPlayerParty()` for clarity
- `getNonSwitchedXPokemon()` consolidated into `getXPokemon()`
- Some tsdocs were added/updated for
`getXParty()`, `getXField()` and `getXPokemon()`;
and those functions were explicitly marked as `public`
- Helper function `getPokemonAllowedInBattle()` added

`pokemon.ts` changes:
- `isAllowed()` renamed to `isAllowedInChallenge()` for clarity
- A redundant check for an active scene is removed in `isActive()`
- Some tsdocs were added/updated for `isFainted()`,
`isAllowedInChallenge()`, `isAllowedInBattle()` and `isActive()`;
and those functions were explicitly marked as `public`
- `isFainted()` now checks for `hp <= 0` instead of `!hp`

Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com>

* Backport eslint change to reduce merge conflicts

* Fix merge issues

---------

Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com>
Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com>
2024-11-03 21:53:52 -05:00
Tempoanon
87b7122b60
[P2] Illuminate ignores evasion (#4781) 2024-11-03 21:47:07 -05:00
NightKev
5e2dfa975a
Rename PokemonTurnData's damageDealt and currDamageDealt (#4784) 2024-11-03 14:09:28 -08:00
muscode
f0ae36de6c
[Ability] Implement Wimp Out and Emergency Exit (#4701)
* implement Wimp Out/Emergency Exit

* fixed test

* fixed weather bug

* Added nightmare interaction to Wimp Out following bug fix

* refactored and added postdamageattr

* bug fixes

* added confusion test back (skipped)

* updated applyPostDamageAbAttrs to applyPostDamage

* fix external func name

* fixed syntax inconsistency

* updated PostDamageForceSwitchAttr -> PostDamageForceSwitchAbAttr

* Modify `wimp_out.test.ts`

* remove extra comment

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

* remove extra comment

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

* Update tsdocs

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

* remove comment

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

* remove comment

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

* fix tsdocs

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

* fix tsdocs

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

* fix tsdocs

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

* fix tsdocs

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

* fix whitespace

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

* make getFailedText public

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

* make switchOutLogic public

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

* make getSwitchOutCondition public

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

* make getFailedText public

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

* make applyPostDamage public

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

* simplify if statement

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

* add public override to applyPostDamage

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

* fixed nested if issue, remove trapped tag removal

* add fix for multi hit move

* added multi-lens logic

* moved applyPostDamageAbAttrs to pokemon.damage, added check for multi lens in pokemon.apply

* added source to damageAndUpdate and applyPostDamageAbAttrs, added Parental Bond logic + test, put applyPostDamageAbAttrs back in damageAndUpdate

* simplify multi hit check

Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com>

* Minor formatting changes

* Update src/data/ability.ts

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

* moved and renamed shouldPreventSwitchOut, rewrote tests to account for U-turn changes, fix syntax error

* Move comment slightly

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com>
2024-11-03 01:04:20 -05:00
Mumble
f16309fd06
[P2] Plus, Minus, Beads/Sword of Ruin not ignorable. Shield Dust and Armoa Veil ignorable (#4778)
Co-authored-by: frutescens <info@laptop>
2024-11-03 01:22:40 -04:00
Mumble
70ddc29e86
[Refactor] Refactor data/pokemon-species.ts (#4054)
* Setting species-variables to read only

* set generations to protected

* formIndex set to protected

* quick fix

* typedocs fixes

* get / set generation

* wait

* Use get/set for formIndex too

* Fix misplaced line

* Replace a couple `!!` with default params

---------

Co-authored-by: frutescens <info@laptop>
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com>
2024-11-02 23:11:24 -04:00
innerthunder
1474f8cf14
[Refactor] Add options param interface for MoveEffectAttr (#4710)
* Optional parameter interfaces for `MoveEffectAttr` and `StatStageChangeAttr`

* Update docs + Diamond Storm typo

* Apply suggestions from code review

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

* Make move effect trigger specification optional

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-11-02 13:05:33 -04:00
Mumble
1659f57262
[P2] Camouflage now considers Terrains first (#4761)
* the fix... will maybe write a test later

* ughh

* made a test

* moved aorund function

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

Co-authored-by: PigeonBar <56974298+PigeonBar@users.noreply.github.com>

* lalal

---------

Co-authored-by: frutescens <info@laptop>
Co-authored-by: PigeonBar <56974298+PigeonBar@users.noreply.github.com>
2024-11-02 12:48:10 -04:00
innerthunder
80a8c659ee
[P2] Add "no switch-in" fail condition for Shed Tail and Baton Pass (#4777) 2024-11-02 12:47:08 -04:00
Moka
c2d24d6e93
[Bug] Take weight into account when getting the tier of a modifier (#4775)
* disable timed events in tests

* Take weight into account when getting the tier of modifiers

* Apply suggestions from code review

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

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
Co-authored-by: PigeonBar <56974298+PigeonBar@users.noreply.github.com>
2024-11-02 11:55:22 -04:00
AJ Fontaine
8169760e1e
[Bug] Prevent wild mons fleeing with U-turn, Flip Turn, Volt Switch (#4643)
* Wild mons can't flee with U-turn

* Update src/data/move.ts

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

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-11-01 21:21:45 -07:00
PigeonBar
5b9dfe17ad
[P2] Fix Own Tempo Rockruff not being able to evolve (#4762) 2024-10-30 13:15:11 -04:00
PrabbyDD
afe6d2900d
[P2] Fix for Speed Boost is Activated on the Turn a Pokemon is Switched In, and When a Pokemon Fails to Escape #4353 (#4676)
* fixing speed boost for pokemon being switched in and for if failed escape

* adding unit tests

* adding failed run away test case

* adding failed run away test case modification

* refactoring solution to be more consistent with coding style

* more fixes for consistency

* more fixes for consistency

* adding new AbAttr in abiliity.ts for posterity

* removing uneccesary variables

* fixing a merge conflict
2024-10-29 17:38:33 -04:00
innerthunder
fd1aa41d09
[P2] Fix AI targeting allies with status effect moves (#4717) 2024-10-29 17:32:07 -04:00
NightKev
921d4fa18c
[P2] Chloroblast & Struggle should not recoil if the move failed (#4719)
* Chloroblast & Struggle should not recoil if no damage was dealt

* Protect against missing move entry

Co-authored-by: PigeonBar <56974298+PigeonBar@users.noreply.github.com>

---------

Co-authored-by: PigeonBar <56974298+PigeonBar@users.noreply.github.com>
2024-10-29 17:31:37 -04:00
AJ Fontaine
f9fe59239e
[TMs] Remove Sacred Sword, add Secret Power TM, fix Reflect compatibility (#4713) 2024-10-29 17:31:02 -04:00
Blitzy
65269f935f
[Balance] Change Bouncy Bubble's Attributes (#4757)
* Change Bouncy Bubble's Healing

* Move comment to what is custom about Bouncy Bubble

---------

Co-authored-by: damocleas <damocleas25@gmail.com>
2024-10-29 16:19:42 -04:00
NightKev
13ff80fb95
Mark Last Respects as partial (#4749) 2024-10-29 18:59:28 +01:00
Mumble
fb2d3e45d6
[Move][Ability] Fully Implement Forest's Curse / Trick Or Treat / Mimicry (#4682)
* addedType variable

* basic mimicry implementation

* eslint

* rage

* quick change

* made files

* added mimicry activation message

* test for moves done

* hahahhaha

* done? for now?

* laklhaflhasd

* Apply suggestions from code review

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

* time to start... ughhh

* reflect type

* Added new message

* Update src/field/pokemon.ts

Co-authored-by: PigeonBar <56974298+PigeonBar@users.noreply.github.com>

* Update src/data/ability.ts

Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com>

* added overrides

* some checks

* removed comments

* Apply suggestions from code review

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

---------

Co-authored-by: frutescens <info@laptop>
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
Co-authored-by: PigeonBar <56974298+PigeonBar@users.noreply.github.com>
Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com>
2024-10-29 10:10:37 -07:00
PrabbyDD
3241332a3c
[Ability] Implementing Friend Guard (#4718)
* implementing friend guard ability

* Update src/data/ability.ts

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

* Update src/data/ability.ts

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

* Update src/data/ability.ts

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

* Update src/test/abilities/friend_guard.test.ts

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

* Update src/field/pokemon.ts

Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com>

* more tests and fixing other issues

* more tests and fixing other issues

* Update Friend Guard test with damage mocks

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com>
Co-authored-by: innerthunder <brandonerickson98@gmail.com>
2024-10-28 13:49:04 -07:00
innerthunder
b4cc9d7892
[Hotfix] Fix crash when Mist would block a stat drop (#4746)
* Fix crash when Mist would block a stat drop

* Bump version

* Bump version (again)
2024-10-28 14:02:10 +01:00
PigeonBar
dfb42e44a6
[Hotfix] Fix Eternatus egg tier (#4734) 2024-10-27 04:04:57 +00:00
Frederico Santos
51b2a4d7fe
Something (#4728)
* [Feature] Add event-based friendship multiplier and update TrainerConfig for event modifiers

* [UI][Dev] Improve event banner placement (#4726)

* [ui] automatically place event banner and timer in the title screen

* add new event banner

* ugh

* [Refactor] Clean up TrainerConfig and remove unused timed event

---------

Co-authored-by: Moka <54149968+MokaStitcher@users.noreply.github.com>
2024-10-26 17:14:17 +01:00
Smewkie
61cf937cab
[Balance] Ferroseed HA
Ferroseed HA
2024-10-26 00:38:12 +01:00
PigeonBar
f87ac116fa
[Beta] Stop Transform giving copied moves negative fractional ppUp (#4722)
* [Beta] Stop Transform giving copied moves negative fractional `ppUp`

* Remove some bangs/etc

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-10-25 19:34:40 -04:00
innerthunder
414e0a5447
[Balance] Change Tyrogue to move-based evolutions (#4694) 2024-10-23 23:17:55 -07:00
Moka
a13550ec44
[Balance][ME] Various ME Balance changes (#4700)
* balance changes and updates to various MEs

* fix import to new item

* fix import to new item

* Update src/data/mystery-encounters/utils/encounter-pokemon-utils.ts

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

* Update src/phases/select-modifier-phase.ts

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

* Update src/modifier/modifier.ts

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

* Update src/modifier/modifier.ts

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

* revert item atlas changes

* eslint

* revert 'revert item atlas'

* update locale repo to latest commit

* Fix fiery fallout missing argument

* [balance] Training session ME does not update Seen/Defeated GameStats

* [balance] update Weird Dream ME maximum spawn wave

* [ME] update CombinationRequirements to allow AND or OR combinations

* refactor: CombinationPokemonRequirement `.Some()` and `Every()`

* chore: rename `orRequirements` to `requirements`

* fix: returns of `Some()` and `Any()`

* apply `Some()` / `Any()` pattern to `CombinationSceneRequirement` too

* revert 'offer you can't refuse' giving Silver Pokeball'

* Apply code review suggestions

* [me] Weird Dream: apply same old gateau logic to team in options 1 and 2

---------

Co-authored-by: ImperialSympathizer <imperialsympathizer@gmail.com>
Co-authored-by: ImperialSympathizer <110984302+ben-lear@users.noreply.github.com>
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com>
Co-authored-by: innerthunder <brandonerickson98@gmail.com>
2024-10-23 21:46:57 +02:00
schmidtc1
958d79140c
[P2] Fixes Transform/Imposter not updating type/battle stat changes immediately; set move PP to 5 when transforming (#3462)
* Adds updateInfo to transform move/ability, mirrors Transform functionality in Imposter

* Implements functionality for reducing pp to 5 or less for each move when transforming

* Refactors to async/await pattern, adds back removed anims/sounds from last commit

* Eslint fix attempt

* Update src/data/ability.ts

per DayKev's suggestion

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

* Merge and fix conflicts

* Adds unit tests for pp-change with transform/imposter

* Updates to consistency in syntax/deprecated code

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-10-23 11:12:53 -04:00
innerthunder
03025b2674
[P2] Fix various charge move bugs (#4595)
* Add charge move classes and phase

* Integrate `MoveChargePhase` in battle phase sequence

* Fix Protean + charge move interaction

* Fix effect chance applying to semi-invulnerability

* Remove `ChargeAttr` and fix ChargeAnim loading

* Restore move history entry for charge phases

* Gravity now cancels Fly, etc. after charge turn

* Dig integration tests

* Fly integration tests

* Dive integration test + fix Dive in Harsh Sun bug

* Solar Beam integration tests + `CHARGING` tag fixes

* Fix dive test

* Electro Shot integration tests

* fix import in MoveChargePhase

* Electro Shot Multi Lens test

* Geomancy integration tests

* Fix duplicate move queue

* Update import

* Docs + Fix Meteor Beam being boosted by Sheer Force

* Fix volt absorb test

* Apply PigeonBar's suggested move-phase changes

Co-authored-by: PigeonBar <56974298+PigeonBar@users.noreply.github.com>

* Make Electro Shot Sheer Force boosted again

* Apply PigeonBar's feedback pt. 2

* Apply suggestions from code review

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

* Fix mistimed/dupe showMoveText and leftover TODO

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
Co-authored-by: PigeonBar <56974298+PigeonBar@users.noreply.github.com>
2024-10-23 11:08:40 -04:00
bjparker1226
a0baf89297
[P2] Fix dark deal reducing transformed Pokemon's held item stack to 1 (#4707) 2024-10-23 11:04:37 -04:00
Blitzy
0fe57b44b5
[Balance] Add Exclusive Moves from Prior Evolutions via Memory Mushroom (#4681) 2024-10-22 18:13:10 -07:00
damocleas
96e5f2d763
Starmobile Stat Adjustments (#4704)
Co-authored-by: Adrian T. <68144167+torranx@users.noreply.github.com>
2024-10-22 18:07:28 -07:00
NightKev
181f59882a
[P2] Fix Early Bird (#4632)
* Fix Early Bird, add tests

* Update tsdocs for Early Bird's `AbAttr`

Rename `turnCount` to `toxicTurnCount` and
`turnsRemaining` to `sleepTurnsRemaining` in `status-effect.ts`

* Fix Toxic Orb test

* Redundant code :despair:

* Fix status override to set the number of sleep turns
2024-10-22 12:37:13 -04:00
Mason S
7066a15ceb
[Refactor] Added BattlerTagLapseType.AFTER_HIT (#3655)
* [Refactor] Added ON_GET_HIT BattlerTagLapseType

Adjusted BeakBlastChargingTag and ShellTrapTag to use new lapse type

Adjusted MoveEffectPhase to now lapse all tags with the ON_GET_HIT lapse type

* [Refactor] Added ON_GET_HIT BattlerTagLapseType

Adjusted BeakBlastChargingTag and ShellTrapTag to use new lapse type

Adjusted MoveEffectPhase to now lapse all tags with the ON_GET_HIT lapse type

* Fix nits

* Rename `ON_GET_HIT` to `AFTER_HIT`

Change `isOpponentTo` to `isOpponent`

* Fix a couple minor nits

* Remove single-use function

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-10-21 23:53:00 -07:00
innerthunder
c2eb9de9df
[Ability] Partially Implement Infiltrator (does not work with mist) (#4636)
* Implement Infiltrator

* Integration tests + Infiltrator is (P) again

* Fix screen tests

* Fix `hitsSubstitute`

* docs for Infiltrator attr
2024-10-21 21:41:25 -04:00
PrabbyDD
467841d167
[P2] Nightmare triggers at turn end instead of after move (#4702) 2024-10-21 21:33:41 -04:00
NightKev
f7797603a1
[P2] Fix oversight where hazards cannnot affect Pokemon that set it (#4693)
Fixes #935
2024-10-21 11:03:12 -04:00
MokaStitcher
e6c06d57be
[P All][Bug] Various ME bugfixes (copy) (#4695)
* Mystery Encounter bugfixes

* more ME bug fixes

* update allowed pokemon in ME requirements

* some unit test cleanup and general tidying

* fix null exception on isBattleMysteryEncounter

* clean up tsdocs and fix pokemon hasAbility check

* fix double battle crash in challenge mode with a single eligible pokemon

* apply suggestions from PR#4619's code reviews

* revert fix for Keldeo crashes + implement fix suggestion from PR #4619

* fix session migration for PokemonCustomData

* prevent test failure due to keldeo fix

---------

Co-authored-by: ImperialSympathizer <imperialsympathizer@gmail.com>
2024-10-20 22:55:07 +01:00
NightKev
39abac65be
Add eslint rule to enforce indenting of case statements (#4692) 2024-10-20 02:44:36 +01:00
Mumble
2f212f52eb
fixed effectChanceOVerrride location + removed ability tags (#4677)
Co-authored-by: frutescens <info@laptop>
2024-10-16 23:31:30 -07:00
Madmadness65
afebecd43c
[P2 Bug] Fix pool entry for Jynx not using baby species (#4675) 2024-10-16 17:16:10 -05:00
NightKev
d92d63e81f
[Misc] Restore info comment that was accidentally removed (#4674) 2024-10-16 16:10:19 -04:00
AJ Fontaine
d5fee37868
[Refactor] Add friendship related constants (#4657)
* Add constants for friendship

* Absolute path in battle-scene.ts

* Address nits

* Apply negative to constant
2024-10-16 14:55:23 -04:00
PigeonBar
72c08e5cfd
[Refactor] Clean up commented safari zone code from #4661 (#4671) 2024-10-16 11:09:48 -04:00
Mumble
2caa09f246
[Move] Fully Implement Secret Power (#4647)
* initial work

* move go

* biomes for damo

* more cleanup

* added effect for space

* test

* balance change 1

* i'm silly

* fixed effect cahnce

* secret power atr

* Apply suggestions from code review

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

* got tests to work + added final balance biomes

* added documentation

* Apply suggestions from code review

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

* Update src/data/move.ts

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

---------

Co-authored-by: frutescens <info@laptop>
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-10-16 10:38:12 -04:00
PigeonBar
c6ec01958c
[Bug] Fix for Expert Breeder's Pokemon being invisible and IV scanner in safari zone (#4661)
* [Bug] Potential fix for Expert Breeder's Pokemon being invisible

* PR Feedback

* Consistency with await
2024-10-16 10:31:32 -04:00
PigeonBar
50ff6e703a
[P1 Bug] Fix several Destiny Bond crashes (#4665)
* [P1 Bug] Fix several Destiny Bond crashes

* PR Feedback
2024-10-16 10:30:38 -04:00
Madmadness65
c04d81bd65
[Ability] Allow Power Construct to transform 10% PC Zygardes (#4626)
* Allow Power Construct to transform 10% PC Zygarde

* Add additional test for 10% PC Zygarde
2024-10-15 15:02:30 -04:00
innerthunder
1966335627
[Refactor] Add type inference and support for simulated calls to ArenaTag.apply (#4659)
* Add simulated support for Arena Tag application

* Add type inference to ArenaTag.apply

* Fix screen tests

* back to `any` again lol

* fix missing spread syntax (maybe)

* updated docs

* named imports for `Utils`
2024-10-15 13:13:54 -04:00
Blitzy
bb98bc2f8e
[Balance] Evil Team Update / Penny Adjustments (#4577)
* Update trainer-config.ts

* Update trainer-config.ts

* Update trainer-config.ts

* Fixed Flare Grunt's having Noivern > Noibat

* Revert Inkay change, Change Penny

* Give Admin aces canonical genders

* Update trainer-config.ts

* Update trainer-config.ts

---------

Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com>
Co-authored-by: damocleas <damocleas25@gmail.com>
2024-10-15 02:17:20 -07:00
cadi
e7a4d4055f
[Move] Implement Power Trick (#2658)
* add `PowerTrickTag`

* modify getStat() with PowerTrickTag

* implement `PowerTrickAttr`

* add unit test

* enhance docs and tag apply logic

---------

Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr>
Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br>
Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com>
Co-authored-by: Enoch <enoch.jwsong@gmail.com>
Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com>
Co-authored-by: Amani H. <109637146+xsn34kzx@users.noreply.github.com>
Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com>
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-10-14 12:39:34 -07:00
PigeonBar
e340abe75d
[P1 Bug] Fix softlock when a phazing attack activates a reviver seed (#4654)
* [P1 Bug] Fix softlock when a phazing attack activates a reviver seed

* Polishing tests

* Change approach to respect Parting Shot's targeting

* Tests: Added checks for correct number of Pokemon on field
2024-10-13 20:08:47 -04:00
Mumble
8a355d500a
[Bug] Move Restriction Battler Tag bugs (#4536)
* Added fixes

* Revert "Added fixes"

This reverts commit 3feccd792d.

* Added loadTag functions

* Fixes

* typeodcs

* Torment

* yawn

* hsldklahdlhalhdlahldhlah

* Imprison Fixes

* Fixed imprison not interrupting PRE_MOVE

* just kidding

* Apply suggestions from code review

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

* Fixing what broke

* added scp[es

* missed a scope

* Update src/data/battler-tags.ts

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

* good tp go

* merge

* battler tags

* Apply suggestions from code review

* Changed function names

* publics

---------

Co-authored-by: frutescens <info@laptop>
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-10-13 03:30:04 -04:00
Tempoanon
391f38c3c8
[Documentation] Document all (P) abilities (#4649)
* Document partial abilities

* Fix typo

* Address comments

* Fix typo Terapagos -> Ogerpon

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-10-13 00:45:38 -04:00
damocleas
8e7aea0f89
Fixed Charizard and Kingler BST, fixed ability indexing for gmax forms (#4652) 2024-10-13 04:51:14 +01:00
Tempoanon
caf29e2ce3
[Documentation] Document all (P) moves (#4650)
* Document all (P) moves

* Fix some typos

* Fix more typos

* Address innerthunder comments

* Add circle throw and dragon tail (P)
2024-10-12 23:42:20 -04:00
Mumble
cfb92b4e08
[Move] Telekinesis + [Bug] Ingrain (#4506)
* some early set up

* localization

* Added Wiglett family to restrictions

* Added Smack Down + 1000 Arrows Interactions

* Added checks for certain tags

* Gravity removes telekinesis from all pokemon on the field

* need to check something else real quick

* mmmmmm

* think this is fine?

* ingrain fixes

* more ingrain

* Telekinesis Test + Move Fix

* Test Name change

* another day another try...

* Test Cleanup

* fsfdsfds

* Revert "fsfdsfds"

This reverts commit cb7abcfd9f.

* whoops

* Apply suggestions from code review

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

* Missed one

* Update src/data/move.ts

Co-authored-by: PigeonBar <56974298+PigeonBar@users.noreply.github.com>

* Apply suggestions from code review

Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com>

* Add separate battler tags in move attr

* Update src/data/battler-tags.ts

Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com>

* removed onRemove

* Documentation

* Update src/data/battler-tags.ts

---------

Co-authored-by: frutescens <info@laptop>
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
Co-authored-by: PigeonBar <56974298+PigeonBar@users.noreply.github.com>
Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com>
2024-10-11 17:44:16 -04:00
innerthunder
7645d5042d
[P3] Fix "falsex" type hint for Sheer Cold against ice types (#4638)
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-10-11 16:09:15 -04:00
Mason S
70b9a43c8b
[P2] Fix first-turn status damage and arena hazards (#3528)
* [Bug] Toxic Spikes implementation issues fixed

Adjusted MoveEffectPhase.start() so that ENEMY_SIDE targeted moves no longer occur twice per use in double battles.

Updated Toxic Orb test to no longer expect a tick of damage turn 1.

Fixed Toxic/Poison dealing damage immediately when applied.

Fixed Hazards not persisting through save

Added unit tests

Fixed flyout not displaying correct number of Spikes/Toxic Spikes after a refresh

* Update Toxic Orb test

* Updates Toxic Spikes tests

* Apply suggestions from code review

* Fix merge issues

Replace `integer` with `number` in `arena-tag.ts`

* Remove partial Magic Bounce implementation

* Remove stray newline

* Remove extra change in safeguard test

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-10-11 10:41:54 -04:00
NightKev
5d0b361320
[P2] Syrup Bomb effect is removed when user leaves the field (#4606)
* Syrup Bomb's effect expires when the move user leaves the field

* Add test

* Remove check for the affected pokemon being switched out
2024-10-10 13:19:05 -04:00
ImperialSympathizer
6ad5ba972c
[Enhancement] Refactor Starter Species to use separate EggTier map (#4591)
* creates table for tracking species egg tiers

* creates table for tracking species egg tiers

* rename EggTier enum values

* replace clamp util function with Phaser function

---------

Co-authored-by: ImperialSympathizer <imperialsympathizer@gmail.com>
2024-10-10 09:29:26 -07:00
NightKev
ba7e26152e
[Bug] Fix substitute interactions with PostDefendAbAttrs (#4570)
* Fixes some Substitute interactions

Specifically with Disguise/Ice Face and Gulp Missile

* Add tests

* Fix linting

* Add `hitsSubstitute()` checks to all `PostDefendAbAttr`s

Also fix comment indentation in `MoveEffectPhase`

* Revert `move-effect-phase.ts` changes
2024-10-10 11:45:02 -04:00
PigeonBar
64147e4414
[P2] Fix Battle Bond continuing to affect Water Shuriken after Greninja returns to base form (#4602)
* [Bug] Fix Battle Bond continuing to buff Water Shuriken after Greninja returns to base form

* Test cleanup

* PR feedback

* Update test to use getMultiHitType()

* PR Feedback
2024-10-10 11:40:14 -04:00
Mumble
51894d46c2
[P2] Pollen Puff ally behavior fixed (#4615)
* pollen puff fix

* bcvbvcbfd

* integerholder to numberholder

* moved it back

---------

Co-authored-by: frutescens <info@laptop>
2024-10-10 11:38:17 -04:00
Mumble
e9906ea229
[P2] Obstruct/Kings Shield/etc no longer reduce stats through Clear Body/etc (#4627)
* bug fix

* Add test

---------

Co-authored-by: frutescens <info@laptop>
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-10-10 11:31:10 -04:00
Mumble
ffe941d235
[Feature][UI] Save Preview (#4410)
* Making 3 Option UI real

* idk anymore

* Revert "Making 3 Option UI real"

This reverts commit beaad44c1e.

* Let's see

* Current issues - scrolling upwards and correct cursor landing

* argh

* Fixed reactive scrolling

* Adding ME handling

* set up descriptions

* Cleaned up UI i think

* stupid alder

* Added double trainer handling + changed enum name

* Apply suggestions from code review

Thank you Moka!

Co-authored-by: MokaStitcher <54149968+MokaStitcher@users.noreply.github.com>

* Arrow Visibility now depends on Session Slot hasData

* documentation

* Simplified calls to revertSessionSlot + changed function name per feedback

* Fixed scrollCursor issue.

* added comment

* Update src/ui/save-slot-select-ui-handler.ts

Co-authored-by: MokaStitcher <54149968+MokaStitcher@users.noreply.github.com>

* Fixed sound played + added better conditional

* Balance Team....

* ME related changes

* Apply suggestions from code review

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

* Update src/data/mystery-encounters/mystery-encounter.ts

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

* Update src/data/mystery-encounters/mystery-encounter.ts

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

* Sending Doubles-fix

* eslint..

---------

Co-authored-by: frutescens <info@laptop>
Co-authored-by: MokaStitcher <54149968+MokaStitcher@users.noreply.github.com>
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-10-09 15:04:13 -04:00
NightKev
a1ca7e632b
[Move] Triple Arrows effect chance for stat change is now 50% (#4543)
* Triple Arrows effect chance for stat change is now properly 50%

* Add tsdocs to `StatStageChangeAttr`

* Add test for Serene Grace interaction

* Fix linting

---------

Co-authored-by: Mumble <171087428+frutescens@users.noreply.github.com>
2024-10-08 05:32:51 -07:00
Xavion3
f562a76332
Make repeat abilities not stack (#4588)
If due to fusions you have the same ability as both passive and normal, it'll no longer stack with itself.
2024-10-05 15:10:32 +08:00
innerthunder
c99df9712a
[Move] Implement Ion Deluge (#4579) 2024-10-04 17:23:20 -04:00
NightKev
d362456501
[P2] Diamond Storm should only trigger once when hitting multiple pokemon (#4544)
* Diamond Storm should only trigger once when hitting multiple pokemon

* Also fix Clangorous Soulblaze just in case

* Fix linting

* Fix linting

Oops missed this one
2024-10-04 16:29:20 -04:00
innerthunder
27537286b9
[Move] Implement Electrify (#4569)
* Implement Electrify

* ESLint

* Fix docs
2024-10-04 16:24:52 -04:00
innerthunder
0bd4d6c86b
[Move] Fully Implement the Pledge Moves (#4511)
* Implement Fire/Grass Pledge combo

* Add other Pledge combo effects (untested)

* Fix missing enums

* Pledge moves integration tests

* Add turn order manipulation + more tests

* Safeguarding against weird Instruct interactions

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

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

* Fix style issues

* Delete arena-tag.json

* Update package-lock.json

* Use `instanceof` for all arg type inference

* Add Pledge Move sleep test

* Fix linting

* Fix linting

Apparently GitHub has a limit on how many errors it will show

* Pledges now only bypass redirection from abilities

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-10-04 16:20:37 -04:00
AJ Fontaine
75bd730c04
[Balance] Fix TM compatibility on forms, Tera Blast on Indigo Disk mons (#4568)
* Fix TM compatibility on forms, Tera Blast on Indigo Disk mons

* Additional single strike moves

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-10-04 10:55:37 -04:00
torranx
644c078a6c add new lint rules....again 2024-10-04 13:08:31 +08:00
Acelynn Zhang
9c56c15a6c
[P3] Fix persisting sleep animation when sprite is already loaded (#4562)
Ensure that a Pokémon's animation speed is reset properly after saving
and quitting. Previously, if a Pokémon was put to sleep, which slows
its framerate, saving and quitting would result in the slower framerate
persisting even though the Pokémon was no longer asleep. This fix adds
an else condition to reset the frameRate to 12 if the sprite is already
loaded upon resuming the game.

Fixes #4465
2024-10-03 17:23:04 -04:00
Mumble
af51c1f2f0
[Move] Unique message for heal block, taunt, torment, and imprison (#4530)
Co-authored-by: frutescens <info@laptop>
2024-10-03 14:56:35 -04:00
Adrian T.
76e25a6d6f
[Move] Update Tera Starstorm (still Partial), Readd Partial tag to Tera Blast (#4549)
* fully implement tera starstorm

* add docs

* add tests

* add override keyword

* account for fusion

* swap party positions

* add partial tag to tera blast

* address comments
2024-10-03 12:58:21 -04:00
schmidtc1
c58b5e943b
[P2] Fixes party status cure moves only curing the player's pokemon, even when used by enemy pokemon (#3369)
* Fixes bug with Status Cure moves only curing player pokemon, refactors PartyStatusCureAttr, removes PartyStatusCurePhase

* Adds check for user ID, since user always cures its own status regardless of ability

* Adds unit tests for sparkly swirl

* Merge and fix conflicts

* Fix conflicts with SPLASH_ONLY

* Fix failing sparkly swirl test due to splash_only

* Adds unit tests for heal bell and aromatherapy

* Update src/data/move.ts

---------

Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com>
2024-10-03 11:49:33 -04:00
AJ Fontaine
ea9e0c7909
[Move] Implement Scale Shot (#4551)
* Scale Shot

* Docstrings for StatStageChangeAttr

* Add test for scale shot
2024-10-03 11:17:51 -04:00
NightKev
f634b7c044
[Misc] Disable some leftover debug code (#4546)
* Disable i18n debug in `.env` files

* Disable leftover ME debug code
2024-10-02 13:13:16 -04:00
AJ Fontaine
8a2900ad29
[Refactor] Move some relevant files, tables etc to new balance folder (#4510)
* Move biomes.ts

* Move starter costs, passives, friendship, starter-candy to starters.ts

* Change relative imports to absolute imports

* Add docstrings, passives.ts

* Constants in rates.ts for egg pity, egg tier rates, hatch waves, variant chances

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com>
2024-10-02 06:20:19 -07:00
innerthunder
7473c31c77
[P2] Fix Tera Shell to apply to all hits of multi-strike moves (#4541)
* Apply Tera Shell to all hits for multi-hit moves

* fix undefined property error

* ugh

* Remove obsolete bangs
2024-10-01 21:58:56 -04:00
flx-sta
95386861bb
[Qol][Refactor] i18n lazy-loading (#4327)
* move: locales files to `/public` (from `/src`)

* install: i18next-http-backend module

* implement: i18next language lazy-loading

* remove: all `config.ts` files (for locales)

* disable: enConfig import in i18next.d.ts

* remove: console.log from utils.camelCaseToKebabCase()

* remove localization tests

we don't need to test if i18next is working.
This is the job of i18next itself

* mock i18next for tests

* fix: tests that have to use the i18next key now

instead of the english translation

* fix: absolute-avarice-encounter test

* fix: loading mystery-encounter translations

with lazy-load

* fix: 2 mystery encounter translation loading

* replace: i18next mocks any vi.fn() calls

* fix: new namespace usage in ME tests

now using "mysteryEncounters/..."

* fix: delibirdy encounter not being language specific

the encounter was checking if the modifier name includes `Berry` which is only true for english. Instead it has to check if the modifier is an instance of BerryModifier

* fix: the-expert-pokemon-breeder

the new i18n pattern requires a different namespacing which has been adopted

* fix: GTS encounter tests

* add: `MockText.on()`

* fix: berries abound test

* chore: apply review suggestion

from @DayKev

* update i18next.d.ts

* chore: fix i18next.d.ts

* fix: `dialogue-misc` switchup between `en` and `ja`

* move: `SpeciesFormKey` into enum

there was an issue with circular dependencies

* replace: `#app/enums/` with `#enums/` for `SpeciesFormKey` imports

* re-sync locales from `beta`

* rename: `ca_ES` -> `ca-ES`

* rename: `pt_BR` -> `pt-BR`

* rename: `zh_CN` -> `zh-CN`

* rename: `zh_TW` -> `zh-TW`

* fix loading Species-Form-Key in poemon-evo.

* update: i18next `supporterLngs` ...

and remove `nonExplicitSupportedLngs`

* fix: `${namespace}.` -> `${namespace}:`

thanks @MokaStitcher
2024-10-01 21:55:16 +01:00
DustinLin
45f6b23309
[P2] Chilly Reception's Snow is called during Enemy AI Move Selection (#4528)
* fixing weather check in getCondition()

* adding enemy tests
2024-09-30 23:23:29 -04:00
innerthunder
145b80f491
[P2] Fix Substitute blocking field effects (#4504)
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-09-30 13:14:38 -04:00
NightKev
8a8adad7fe
[Refactor] Clean up some TODOs from the strict-null refactor (#4267) 2024-09-30 13:11:45 -04:00
NightKev
e9ee2c1179
[Refactor] Remove unused parameters in move flag functions (#4516)
Also fix tsdocs for these functions
2024-09-30 13:10:00 -04:00
Blitzy
de9fdc5b9c
[Balance] Increase Minimum BST Filter for Elite 4 / Champion Teams (#4501)
* Increase Champion BST

* Slight E4 BST increase

* Update trainer-config.ts

* Move E4/Champion minimum BST values to consts

* Update tsdocs for new consts

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-09-30 13:05:02 -04:00
NightKev
7d2df53c51
Add waveTurnCount to PokemonBattleData (#4168)
Swap `FirstMoveCondition` to use the new `waveTurnCount` field
2024-09-29 23:45:44 -07:00
NightKev
3d3460888a
Add scoring for the Glaive Rush BattlerTags (#4514) 2024-09-29 23:04:32 -07:00
innerthunder
1bae87fa56
[Move] Fully Implement Plasma Fists (#4446)
* Implement Plasma Fists

* Update arena-tag.json

* Update arena-tag.json

* Update arena-tag.json

* Update arena-tag.json

* Update arena-tag.json

* Update arena-tag.json

* Update arena-tag.json

* Update arena-tag.json

* Update arena-tag.json

* Update arena-tag.json

---------

Co-authored-by: Lugiad <adrien.grivel@hotmail.fr>
2024-09-29 22:30:33 -04:00
Adrian T.
4c327e9e63
[Ability] Refactor Gulp Missile and make it trigger when Cramorant faints (#4428)
* reimplement gulp missile

* cleanup + docs

* more cleanup

* add override

* update paths
2024-09-29 21:57:50 -04:00
innerthunder
7339facae1
[Ability] Remove (P) from Super Luck (#4498) 2024-09-29 21:54:49 -04:00
Mumble
bcec819fa9
[Move] Fully Implement Syrup Bomb (#4441)
* Syrup Bomb + Tests

* Fix typo on import

* Documentation

* Apply suggestions from code review

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

* Removed unnecessary overlap check

* Removed obsolete comment

* learned how forceHit works

* added custom lapse message

---------

Co-authored-by: frutescens <info@laptop>
Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com>
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-09-29 21:50:11 -04:00
innerthunder
d0600125dd
[P2] Fix Zippy Zap being boosted by Sheer Force (#4469) 2024-09-29 21:49:37 -04:00
NightKev
6187830de7
[Hotfix] Fix crash in GTS ME: replace pokemon with tradePokemon (#4503) 2024-09-29 03:47:45 -04:00
ImperialSympathizer
3e8b3930a8
[Hotfix] Change early exit on Dark Deal species calc (#4500)
Co-authored-by: ImperialSympathizer <imperialsympathizer@gmail.com>
2024-09-28 22:59:23 -04:00
AJ Fontaine
7bb49a3199
[Hotfix] Fix Gimmighoul evolution (#4473)
* Fix Gimmighoul evolution

* Fix counter

* Stack text fix

* Fix Treasure tracker not saving

* Apply suggestions from code review

Co-authored-by: NightKev <34855794+DayKev@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-28 22:11:02 -04:00
Blitzy
357056ebeb
[Balance] Change Kyogre / Pichu eggmoves (#4491) 2024-09-28 14:18:21 -04:00
NightKev
3def9fc15d
[Hotfix] Swap force switch out check from isBoss to wave % 10 (#4484) 2024-09-27 22:51:32 -04:00
NightKev
7eb755ca9c
Prevent the last valid pokemon from being forced to switch (#4481) 2024-09-28 03:07:42 +01:00
NightKev
c9664b66d3
[Hotfix] Prevent bosses from being forced to flee by Dragon Tail/etc (#4478) 2024-09-27 21:26:19 -04:00
ImperialSympathizer
2e7f6a2f4f
[Hotfix] hotfix for expert breeder ME crashing if player loses with queued enemy stat changes (#4476)
Co-authored-by: ImperialSympathizer <imperialsympathizer@gmail.com>
2024-09-27 20:07:47 -04:00
Xavion3
4364ab36b9
Revert "[Bug] [Balance] Gimmighoul evolution adjustments/fixes (#4463)" (#4472)
This reverts commit 1a19065a45.
2024-09-27 23:35:26 +02:00
AJ Fontaine
1a19065a45
[Bug] [Balance] Gimmighoul evolution adjustments/fixes (#4463)
* Fix Gimmighoul evolution

* Fix counter

* Less janky maxStack check

---------

Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com>
2024-09-27 16:57:46 -04:00
ImperialSympathizer
b2df7d785b
fix bug-type superfan's team on waves 160+ (#4459)
Co-authored-by: ImperialSympathizer <imperialsympathizer@gmail.com>
2024-09-26 21:49:12 -07:00
NightKev
933309cd00
Fix Meloetta-related bugs in mono-type challenges (#4460)
Remove Meloetta from the `TYPE_OVERRIDES` array so wrong-form
Meloetta can't be sent into battle.
This was missed when Meloetta was changed in a previous PR

Also disallow Meloetta from being added to the party in
starter select if it's in the wrong form
for the current mono-type challenge
2024-09-26 21:48:57 -07:00
AJ Fontaine
c7f00d0a4d
Reinstate temporary evolution delay fix (#4458) 2024-09-26 19:13:15 -07:00
ImperialSympathizer
5997744aa2
[Beta][Bug] Major/minor ME bug fixes (#4451)
* major/minor ME bug fixes

* potential fix for failed save with rental pokemon

* Update src/system/game-data.ts

Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com>

* Update src/system/game-data.ts

Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com>

* more bug fix cleanup and PR feedback

* fix Uncommon Breed ME crash

* real fix to Fun and Games force switch issues

* add isBattleMysteryEncounter() helper function

* add isBattleMysteryEncounter() helper function

* fix unintentional replace all errors

* fix catches not updating dex

---------

Co-authored-by: ImperialSympathizer <imperialsympathizer@gmail.com>
Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com>
2024-09-26 18:43:28 -04:00
Blitzy
6e18c76e25
[Balance] [Fix] Fix accidental Jirachi revert / Update Spritzee (#4455)
* Fix Jirachi / Change Spritzee

* Update egg-moves.ts
2024-09-26 17:35:38 -05:00
damocleas
69cac23421
[Balance] Various Pokemon and Move Balance Changes, labels for E-Floette and Ursaluna-BM (#4414)
* Gmax Changes for Venusaur, Blastoise, Lapras, Regenerator Mega Audino, Darkrai and Cosmog upped 6 -> 7 cost

* Changed Heal Order to 5pp to match other Recovery options

* Updated Ursaluna-BM and Eternal-Floette to Sub-Legend for easier handling, Adjust catchrates to Metagross to match Baxcalibur line, and Iron Leaves/Walking Wake catchrate to match the other paradox legends

* Actually updated catchrate for Iron Leaves and Walking Wake

* Added comments for all changes

* part 2 passive changes for the update, Pidgey, Lickitung, Stantler, Regigigas, Frillish, Litten, Chien Pao

* fix space

* Updated Meloetta Cost, Updated Krabby Passive
2024-09-26 23:07:27 +01:00
Madmadness65
2aeacc6de9
September egg move changes (#4453) 2024-09-26 17:00:25 -05:00
innerthunder
029d26b4c9
[Beta][P2 Bug] Fix Sappy Seed applying its secondary effect against targets with Substitute (#4430)
* Fix Sappy Seed applying Leech Seed through Substitutes

* Add docs
2024-09-25 22:32:20 -04:00
Mumble
8b9dc79e20
fixed torment lapse condition (#4440)
Co-authored-by: frutescens <info@laptop>
2024-09-26 10:34:16 +09:00
innerthunder
a6a61b2984
[Move] Implement Shed Tail (#4382)
* Implement Shed Tail

* Fix leftover batonPass reference in docs

* Fix ChillyReceptionAttr

* oops

* Remove unneeded default arg in ReturnPhase

* Fix imports per Kev's suggestions

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

* Docs and Shed Tail on-add message

* Remove mixin attribute

* Update battler-tags.json

* Update battler-tags.json

* Update battler-tags.json

* Update battler-tags.json

* Update battler-tags.json

* Update battler-tags.json

* Update battler-tags.json

* Update battler-tags.json

* Update battler-tags.json

* Update battler-tags.json

* Fix indents

* More nit fixes

* Make Switch[Summon]Phase params readonly

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
Co-authored-by: Lugiad <adrien.grivel@hotmail.fr>
Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com>
2024-09-25 17:17:46 -07:00
Mumble
57f39efdae
[Moves][Ability] Implement Torment / Taunt / Imprison + Aroma Veil (#4378)
* Torment

* Taunt and Imprison

* ability immunities

* Aroma Veil

* Imprison

* Test Files

* Added exceptions for Rollout and check for active ability

* adding tests so that git doesn't auto-fail

* Blah

* please

* some documentation

* Removed random newlines

* Added check for ability's presence mid battle

* Changed BattlerTagImmunityAbAttr to look at lists instead

* Work?

* Imprison and Taunt Tests

* Tests

* Final tests before documentation

* documentation blah

* Imports

* Flx Change

* flx - adding overrides

* Update src/data/arena-tag.ts

Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com>

* flx fixes

* quick docs

* privated retrieveField

* Handling undefined

* Update src/data/arena-tag.ts

Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com>

* forget to remove partials for heal block

* Apply suggestions from code review

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

* Marked Torment as partial

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

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

* tsdocs

* Prevents test pokemon from being immune to torment

* Update src/data/arena-tag.ts

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

* Apply suggestions from code review

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

* Torranx Fixes

* Check for this.source

* why

* lighting things with my mind on fire

* aRHGHSHDKSHD

---------

Co-authored-by: frutescens <info@laptop>
Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com>
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
Co-authored-by: Adrian T. <68144167+torranx@users.noreply.github.com>
2024-09-25 14:52:48 -07:00
Enoch
83c18af50f
[Localization] localize reward gain with hard-coded numBerries(item count) in ME. (#4379)
* localize hard-coded numBerries

* Update src/locales/zh_CN/battle.json

Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com>

* Update src/locales/zh_TW/battle.json

Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com>

* change 'rewardCount' to 'count' (flx's review)

* Apply suggestions from code review - count

Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com>

* Revert "Apply suggestions from code review - count"

This reverts commit 3ce0805a5c.

* Apply suggestions from code review

Co-authored-by: ImperialSympathizer <110984302+ben-lear@users.noreply.github.com>

* change count to parameter in trash-to-treasure

* change key

---------

Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com>
Co-authored-by: Lugiad <adrien.grivel@hotmail.fr>
Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com>
Co-authored-by: ImperialSympathizer <110984302+ben-lear@users.noreply.github.com>
2024-09-25 20:02:38 +02:00
Snailman11
9a63a68d25
[P3] [Localization] Added Snow Worker Keys and Dialogue for En, Es, It, Fr, De, Ko, / Suppressed Female (#4373)
* Added Snow Worker Dialogue Keys and Dialogue

Includes en, fr, it, es, de, ko
-placeholders for ja, pt_br, zh_cn, and zh_tw

* Update dialogue.json

* Added \n$ in Spanish and German so the textboxes don't overflow

* Fixed "defeat" Formatting for Singles and Doubles English, and Doubles Korean, Italian, French, Japanese, and German

* Fixed Formatting for English Singles "defeat", and Japanese Doubles "defeat"

* Update src/locales/ko/dialogue.json

Turns the periods into ellipses for Korean Snow worker Doubles

Co-authored-by: returntoice <171243264+returntoice@users.noreply.github.com>

* Update src/locales/ko/dialogue.json

Adds a period to Korean Singles Defeat

Co-authored-by: returntoice <171243264+returntoice@users.noreply.github.com>

* Update dialogue.json

* Update src/locales/ko/dialogue.json

Adds a space on line 310

Co-authored-by: returntoice <171243264+returntoice@users.noreply.github.com>

* Update src/locales/ja/dialogue.json

Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com>

* Update src/locales/zh_TW/dialogue.json

Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com>

* Update src/locales/zh_CN/dialogue.json

Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com>

* Update src/locales/pt_BR/dialogue.json

Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com>

---------

Co-authored-by: Lugiad <adrien.grivel@hotmail.fr>
Co-authored-by: returntoice <171243264+returntoice@users.noreply.github.com>
Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com>
2024-09-25 19:20:32 +02:00
damocleas
ed10152fb4
[Enhancement] Add New Splash Text (#4358)
* Splash Text Changes 1

* fix some commas, adjust two halloween texts

* adjustments

* Capitalization / Grammar from English

* fixes

* Update splash-messages.ts to match

---------

Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com>
Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com>
2024-09-25 16:13:22 +02:00
flx-sta
9af89414b9
[Refactor][Localization] Better handling for StatusEffect.NONE with i18n (#4405)
* remove: `StatusEffect.NONE` from displaying any messages

even thougn this case will never occur, by code definition it should be covered

* remove: obsolete `statusEffect:none.` translation keys

* fix: status-effect test

* chore: undo overrides commit (whops)
2024-09-24 14:15:18 -07:00
ImperialSympathizer
d52f691d43 account for undefined egg moves 2024-09-24 14:06:59 -04:00
ImperialSympathizer
219215f54c fix getEggMoves() helper function 2024-09-24 13:51:02 -04:00
ImperialSympathizer
a1d1de2c0d more ME dialogue cleanup 2024-09-24 13:41:00 -04:00
ImperialSympathizer
24bbb0931c change return type of isNullOrUndefined 2024-09-24 13:15:18 -04:00
ImperialSympathizer
6dc1aedb8e more ME balance changes and bug fixes 2024-09-24 11:34:42 -04:00
ImperialSympathizer
c172fe1838 Merge branch 'mystery-encounter-fixes' of https://github.com/ben-lear/pokerogue into mystery-encounter-fixes 2024-09-24 11:32:49 -04:00
ImperialSympathizer
1513f2a57d more ME balance changes and bug fixes 2024-09-24 11:32:22 -04:00
ImperialSympathizer
e77595ebb8
Update src/data/mystery-encounters/encounters/global-trade-system-encounter.ts
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-09-24 09:29:40 -04:00
ImperialSympathizer
ff256f78dd can no longer go above max rev seed stacks 2024-09-23 19:29:32 -04:00
ImperialSympathizer
4d8d605c02 merge from beta 2024-09-23 19:25:13 -04:00
ImperialSympathizer
05b9e74729 balance adjustments to certain ME battles 2024-09-23 19:23:46 -04:00
Tempoanon
eb264cffee
[Beta] Revert "[Enhancement] Set Appropriate Evil Team on Monogen Challenges (#4355)" (#4395)
This reverts commit 35cd615363.
2024-09-23 17:34:06 -04:00
PrabbyDD
3d4eadbc3e
[Bug] Flash Fire/etc now trigger even if the attack would miss (#4337)
* adding immunity check

* making tests

* modifying and adding tests

* making tests more rigorous

* changing hitcheck return to be what it was originally, no significant effect

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-09-23 15:37:21 -04:00
flx-sta
c4f81c55b0
[Tests][Mystery-Encounter] Fix The Strong Stuff flakyness (#4394)
* extend: log in encounter phase for better debugging

* fix: `the storng stuff` test flakiness

The enemy pokemon could get contrary or other abilities that cause the expected values to be ... not as expected

* remove accidental it.each

tests were being executed 30-100 times. This is a debugging tool but was never supposed to make it to merge.
2024-09-23 15:32:07 -04:00
Tempoanon
342bd5c726
[Beta][Bug] Fix out of bounds Genesect form in Ghetsis_2 causing crash (#4389) 2024-09-23 12:05:49 -04:00
NightKev
554d4f0a95
[P2 Bug] Dragon Tail now properly respects abilities like Suction Cups (#4252)
Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com>
2024-09-23 11:50:42 -04:00
Tempoanon
b9b69ad834
[Move] Implement autotomization weight effects (#4228)
* Implement Autotomize

* Another linting

* Fix unit tests

* Add nonnull after checking for null

* Update autotomize test

---------

Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com>
2024-09-23 11:42:17 -04:00
Opaque02
6626df27ba
[QoL] Adding challenge arrows (#4048)
Arrows allow for dynamic placement based on language

---------

Co-authored-by: MokaStitcher <54149968+MokaStitcher@users.noreply.github.com>
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com>
2024-09-22 23:34:41 -07:00
DustinLin
c387f498c8
[Bug] Fix move Chilly Reception (#3198)
Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr>
Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com>
Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br>
Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com>
Co-authored-by: returntoice <dieandbecome@gmail.com>
Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com>
Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com>
Co-authored-by: protimita <protimitajp@gmail.com>
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
Co-authored-by: Chapybara-jp <charlie.beer@hotmail.com>
2024-09-22 20:09:51 -07:00
Yiling Kang
b9b2491f95
[Ability] (Partially) Implement synchronize ability with old psycho shift interaction (#2746)
* Initial changes for Synchronize ability

* Fix psycho shift interaction causing buggy behaviour

* Update to show ability even if opponent pokemon does not get statused

* Fix some spacing

* Update tests

* Formatting change

* Remove impossible `if` statement

* Add `simulated` support

* Apply suggestions from code review

Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com>

* Don't need those comments

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com>
Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com>
2024-09-22 19:38:09 -07:00
Blitzy
107a7497a9
[Balance] Further Minor Adjustments to Evil Teams (#4376)
* Update trainer-config.ts

* Update Abilities on certain Mons

* Update trainer-config.ts
2024-09-22 21:34:27 -04:00
NightKev
59f28efa1d
Fix crash when using enemy move override (#4352)
Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com>
2024-09-22 18:06:53 -07:00
ImperialSympathizer
cf80abe33f small locales fixes 2024-09-22 19:04:56 -04:00
ImperialSympathizer
eb0e8ccca7 possible Pokemon Salesman shiny fix 2024-09-22 14:19:47 -04:00
innerthunder
3ef02c9bbd
[Balance] Remove Species Locks from Aura Wheel and Poison Puppeteer (#4330)
* Remove non-form-change species locks

* Fix typo in localization

* Mark descriptions that need changes

* Update ability.json

* Update move.json

* Update ability.json

* Update src/locales/pt_BR/ability.json

* Update src/locales/pt_BR/move.json

* KO translations

Co-authored-by: Enoch <enoch.jwsong@gmail.com>

* Update src/locales/de/ability.json

* Update src/locales/de/move.json

* Update src/locales/de/move.json

* Update ability.json

* Update move.json

* Update src/locales/it/move.json

* Update src/locales/it/ability.json

* Update src/locales/ja/move.json

Co-authored-by: Chapybara-jp <charlie.beer@hotmail.com>

* Update src/locales/ja/ability.json

Co-authored-by: Chapybara-jp <charlie.beer@hotmail.com>

* Update src/locales/es/ability.json

Co-authored-by: DanStevensonx <114961842+DanStevensonx@users.noreply.github.com>

* Update move.json

* Update src/locales/zh_CN/ability.json

Co-authored-by: btsrkex <34084904+btsrkex@users.noreply.github.com>

* Apply suggestions from code review

Co-authored-by: btsrkex <34084904+btsrkex@users.noreply.github.com>

---------

Co-authored-by: Lugiad <adrien.grivel@hotmail.fr>
Co-authored-by: José Ricardo <josefleury@discente.ufg.br>
Co-authored-by: Enoch <enoch.jwsong@gmail.com>
Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com>
Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com>
Co-authored-by: Chapybara-jp <charlie.beer@hotmail.com>
Co-authored-by: DanStevensonx <114961842+DanStevensonx@users.noreply.github.com>
Co-authored-by: btsrkex <34084904+btsrkex@users.noreply.github.com>
2024-09-22 20:07:35 +02:00
ImperialSympathizer
32741835fd more Mystery Encounter bug fixes 2024-09-22 13:53:18 -04:00
ImperialSympathizer
1c87532e64
[Bugs/Balance] Fix various ME bugs and small balance adjustments (#4369)
* various bug fixes for MEs

* various bug fixes for MEs

* fix final isTransferable rename that was missed

* change Trainer's test vouchers for second option

* change unit test skips

* cut down excess ME track length and loop properly

* ME bug fix cleanup

* updating AI for Slumbering Snorlax ME, and small ME balance changes

* fix ts error

* fix bug type superfan dialogue discrepancy

* ME bug fixes PR feedback

* ME PR nits and fixes

* update naming convention of sprites

* ME balance changes and bug fixes

* fix tests

* fix An Offer You Can't Refuse ME requirements

* clean up post-battle logic for Breeder ME

* party size requirement cleanup

* clean up challenge requirements for disabling certain MEs

---------

Co-authored-by: ImperialSympathizer <imperialsympathizer@gmail.com>
2024-09-22 05:47:32 +02:00
Amani H.
612dcc5f27
[Balance] Adjust Relevant Abilities to Match Lures (#4231)
* [Balance] Adjust Relevant Abilities to Match Lures

* Add Relevant Unit Tests
2024-09-21 21:40:47 -04:00
ImperialSympathizer
0518cfd9d6
Merge pull request #4363 from PigeonBar/gts-infinite-loop
[Bug] [Beta] Fix game freeze from GTS infinite loop
2024-09-21 17:24:20 -04:00
Mumble
4fb76fd117
[Move] Implement Heal Block (#4120)
* Heal Block on new branch

* Add/update code from previous PR

* Re-add i18n from previous PR

Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr>
Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br>
Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com>
Co-authored-by: Asdar <asdargmng@gmail.com>

* Disabling Moves

* Still need to update tests and write docs

* removing partial tags from abilities to feel better

* Pollen Puff works now

* Implemented Psychic Noise

* typedocs

* Documentation

* Update src/data/battler-tags.ts

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

* Update src/data/battler-tags.ts

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

* Update src/data/battler-tags.ts

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

* Turns out the old condition wasn't buggy. Probably mixed up another change I made.

* changed array clear

---------

Co-authored-by: frutescens <info@laptop>
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr>
Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br>
Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com>
Co-authored-by: Asdar <asdargmng@gmail.com>
2024-09-21 13:15:32 -07:00
Jannik Tappert
1e70cb92d1
[BUG] Add enough keys in dialogue.ts for team star (#4362) 2024-09-21 12:39:44 -07:00
Blitzy
ba5e89cf61
Swap Order in Trainer Config (#4367) 2024-09-21 14:15:02 -05:00
Michael Li
5a24435047 [Bug] Fix game freeze from GTS infinite loop 2024-09-21 11:52:54 -04:00