* Initial challenge framework
* Add type localisation
* Change how challenges are tracked
Also fixes the difficulty total text
* MVP
Renames challenge types, temporarily hides difficulty, and implements challenge saving.
* Attempt to fix one legal pokemon in a double battle
* Make monotype ignore type changing effects
* Make isOfType correctly detect normal types
* Try to fix double battles again
* Make challenge function more like classic
* Add helper function for fainted or not allowed
* Add framework for fresh start challenge and improve comments
* Try to fix evolution issues
* Make form changing items only usable from rewards screen
* Update localisation
* Additional localisation change
* Add achievements for completing challenges
* Fix initialisation bug with challenge achievements
* Add support for gamemode specific fixed battles
Also make monogen challenges face the e4 of their generation
* Add better support for mobile in challenges
* Localise illegal evolution/form change message
* Update achievement names
* Make alternate forms count for monogen
* Update monotype achievement icons
* Add more comments
* Improve comments
* Fix mid battle form changes
* Reorder mode list
* Remove currently unused localisation entry
* Add type overrides for monotype challenges
Meloetta always counts for psychic and castform always counts for normal
* Change how form changes are handled
Now attempts a switch at the start of each turn instead of immediately
* Add start button to challenge select screen
* Make starter select back out to challenge screen if using challenges
* Fix daily runs
* Update tests to new game mode logic
* Add more legendary battle music; add music preference setting
* Replace BDSP tracks
"Souless", they say. Naysayers, I say.
* Update for settings menu refactor
* Remove unnecessary Reshiram/Zekrom music calls
The default legendary battle music is the Reshiram & Zekrom battle theme anyways, so removing these lines make it functionally identical.
* Update for settings menu refactor AGAIN
* move PlayerGender enum into src/data/enums/player-gender.ts
this is necessary to avoid circular dependencies which did crash tests in the past (in PRs)
* Update settings.ts
* Update game-data.ts
* Update summary-ui-handler.ts
* Update ui.ts
* move Passive & GameDataType enums into own files
This adds Partner Eevee and Partner Pikachu, as well as all Cosplay Pikachu variants. Also included are some minor trainer-related formatting clean ups.
• Partner Pikachu and Eevee have their boosted base stats from the Let's Go games, but are otherwise identical in function and appearance to their regular variants.
• Cosplay Pikachus have their special moves as "evolution" moves and can be relearned if desired.
• Unlike the canon games, Partner Pikachu and Eevee are able to evolve like normal.
* WIP: Adding the option to have named trainers be able to have a double battle together
* The team generation now works.
Also changed it so the special pools are now seperatly defined so we can access it for the team generation of the doubles.
They will happen at a 33% chance.
TODO: Option for seperate double dialogue (because for example the dialogue for tate and liza dont make sense since they reference their other sibling not beeing there...)
* Obviously didnt mean to push changes to battle.ts... (I made this change for a test)
* The doubles now have victory and encounter dialogue (the dialogue itself isnt THAT good since english isnt my first language)
* Changed signatureSpecies for the new galar elite 4
* Added Marnie & Piers as a double
* ESLint
---------
Co-authored-by: Benjamin Odom <bennybroseph@gmail.com>
* eslint config + packages
* updated eslint config
* fix the issue eslint adding ;;;; at interfaces
* first round with eslint --fix .
* removed config for unused export
* Revert "first round with eslint --fix ."
This reverts commit 77a88e0895.
* removed config for camelCase
* for real this time, first round of eslint --fix .
* halfway to manual eslint fix
* eslint done
* added "how to setup" the hook to eslint --fix each new file before commit (if wanted)
* removed eslintrc config file duplicat
* fix human error + ignore build folder + merge overrides
* added curly brace style + eslint
* applied double quote linter rule
* added lefthook
* test precommit
* test precommit
* test precommit
* test precommit
* test precommit
* test precommit
* test precommit
* github action to run eslint
* added node_modules to ignore eslint
* different action for typescript
* no need for different glob (default src)
* node 20
* node 20
* removed no longer needed install file
* remove hooks part from README
* eslint fixes
---------
Co-authored-by: Frederico Santos <frederico.f.santos@tecnico.ulisboa.pt>
* Implemented Ball Fetch
* Added once per battle condition
* Ability only functions on player side
* Update ability.ts
---------
Co-authored-by: SamuelHudson <samuel.hudson2017@gmail.com>
Co-authored-by: Benjamin Odom <bennybroseph@gmail.com>
This fix currently has the unintended side effect of making Champion Leon unable to be fought, but every other set of Elite Fours is now followed by the proper Champions as intended.