* Added Confusion to be healed with Full Heals and Full Restores
* Semi-Colon oversight
* Changed resetStatus to have a condition whether to include confusion or not, defaults to false so you manually have to add
* Fixed spacing and semicolon
* Refactored the Lum Berry case
* Fix berry conflicts
* Update {}
* Fix PP Conflict
* Build fix?
* Fix Modifier
* Build Fix
* Fix
* Fix StatuHeal from eslint
* Fix revive (will show testing through everything again)
* Update documentation
---------
Co-authored-by: Ethan <hensley.ethan64@gmail.com>
Co-authored-by: Ethan <71776311+EvasiveAce@users.noreply.github.com>
* Add possibility to override whole user party
* Update species overriding
* Replace SPARTER_SPECIES_OVERRIDE with array
* Replace SPARTER_SPECIES_OVERRIDE with array
* Add possibility to override species forms
* Add possibility to override species forms
* Fix eslint styling
* Add possibility to override Abilities for party
* Override status, gender, moveset
* Add possibility to override shinies
* Fix CI
* add type inference to getAttrs methods and refactor accordingly
* Tests/infer types for get attrs methods (#1)
* #1633: add spec/tests for coverage
* move ability/move tests into /src/tests and rename to *.test.ts to match common naming patterns
* use None in test cases to remove ambiguity
* revert back to before test cases were merged
---------
Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com>
* Added Confusion to be healed with Full Heals and Full Restores
* Semi-Colon oversight
* Changed resetStatus to have a condition whether to include confusion or not, defaults to false so you manually have to add
* Fixed spacing and semicolon
* Refactored the Lum Berry case
* Fix berry conflicts
* Update {}
* Fix PP Conflict
* Build fix?
* Fix Modifier
* Build Fix
* Fix
* Fix StatuHeal from eslint
* Transferring item does not kick out of transfer menu
* Select simultaneously the item to transfer and the quantity
* eslint fix
* eslint fix
* Reset quantity on scroll
* Documentation
* eslint fix
* Initial Commit
* Update pbinfo_enemy_boss_stats.png
* Move to Separate Key
* Add Separate Mobile Control for Flyout
* Add Setting to Enable/Disable
* Add to the Tutorial
* Change to BUTTON.V
* Implemented Zero-To-Hero
* Zero to Hero documentation and form reset on summon
* Zero to Hero: form reset on biome/trainer
* Updated documentation on PreSwitchOutFormChangeAbAttr apply
* Faint bypass on canApplyAbility
* revert zygarde
* zero to hero post-merge
* Use getBattleStat instead of getStat in BattleStatRatioPowerAttr
* Change unnecessary let into const
* Refactor BattleStatRatioPowerAttr into two distinct classes
* Add TSDoc for the new classes
* Implementation of Destiny Bond
* Add TSDocs
* Make the move fail in boss battles
* Fix boss immunity and ally fainting
* Update docs
* Add doc of return value of tag lapse
* Fix ESLint
This change allows to move the box containing the battle info of the ennemy pokemons during double battle when the user has to choose a target. In addition to the pokemon opacity constantly changing, the battle info will also move up and down to indicate which Pokemon is targeted.
It exposes the BattleInfo object from the Pokemon object through an accessor method.
* 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 77a88e0895f7c3389cb223651b90d918af778fe9.
* 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>
This allows to skip the faint phase in the `#damage` method for physical and special moves, to ensure we first queue the messages for the effectiveness of the attack and the potential critical hit.
We then explicitly unshift the faint phase in this case.
* return a list of errors if something is wrong with the variant's sprite
* reformat
* added data in error message
* added read comfort + detection of missing json for existing variant
* fix an error of message display
* fix fetch color swap, missing a return
* Implemented Merciless
Attribute CritIfTargetIsPoisonedAbAttr
Fix BlockCritAbAttr
* Changed CritIfTargetPoisonedAbAttr to ConditionalCritAbAttr
Now any condition related to user, target or the move used can be applied to guarantee a critical hit.
* Fix Crashes when Sprites for Pokémon are missing
Fixes an issue where a missing sprite will cause the game to crash instead of using the base sprite or the Substitute sprite.
Failsafes were already in place to load these backups, this code just allows a graceful fail and a simple error message instead of a crash.
* Check Against OK status
* Implemented Power Split and Guard Split
* Update changeStat method to use summonData for Pokemon stats
This commit modifies the `changeStat` method in the `Pokemon` class to use the `summonData` object for updating Pokemon stats instead of directly modifying the `stats` object. This change ensures that the updated stats are correctly reflected in the `summonData` object, which is used for battle calculations and other related operations.
Refactor the `getStat` method to check if `summonData` exists and return the corresponding stat value from `summonData.stats` if it does. Otherwise, return the stat value from the `stats` object.
This change improves the accuracy of stat calculations during battles and ensures consistency between the `stats` and `summonData` objects.
* Added documentation for Power Split and Guard Split + linting
* removed incorrect files
* Removed incorrect folder
* removed unnecessary import
* Added documentation for getStat and changeSummonStat methods
* New description for getStat()
* Adjusting function descriptions
* adjusted descriptions according to guideline
---------
Co-authored-by: Frederico Santos <frederico.santos@fivedegrees.nl>
* added auto hit and 2x damage from certain moves when targetting a pokemon who used minimize
* review fixes and bad merge
* review fixes and bad merge v2
* changed to be double damage instead of power for the minimize condition
* added TSdocs for function]
* remove ability to add minimize tag to dynamax-mons
* status cannot be applied to max-mons, and falls off if they dynamax
* updated doccumentation
* Update move.ts
---------
Co-authored-by: Cae Rulius <cae@polywhack.com>
Co-authored-by: Benjamin Odom <bennybroseph@gmail.com>
* Made Sheer Cold not affect Ice Types, as well as implementing the Gen VII change of 20% for non ice types.
* Pushed accurancy change
* Updated and separated the accuracy attribute and the Ice no effect attribute
* Fixed the OHKO attribute (accidentally removed) and fixed multiplier
* Updated attribute names, as well as making the move cancelled instead of 0x multiplier
* Added TSDoc comments
* Updated accuracy logic
* Changed the text response for Sheer Cold immunity
* Added immune to the HitResult enum
* Ability Corrosion
Implemented Corrosion Partially.
Tested against:
- Poison Powder
- Toxic
- Dire Claw
- Sludge Bomb
- Psycho Shift
They all work as expected
Missing ability Magic Bounce to test against.
* Added TSDoc Documentation
Added documentation to the new IgnoreTypeStatusEffectImunnityAbAttr and added comments to the checks for this ability attribute.
* Added More Documentation
Add comment into Phases for what sourcePokemon is for.
Renamed source to sourcePokemon onto trySetStatus and canSetStatus.
Added TSDoc head for what sourcePokemon is and anything else I am aware of what they are used for.
* Removed unfinished TSDoc
Removed TSDoc headers due to not having enough understanding to fill out all of the parameters
* Fix Formatting and Reorder Parameters
* Update arena-tag.ts
* Update phases.ts
* Update ability.ts
Added access modifiers to my class and the class I compared to.
---------
Co-authored-by: Benjamin Odom <bennybroseph@gmail.com>
* Fixes some variable damage moves not working with abilities
* Rework as new ability attribute
* Update variable base power check to original location
* formatting
* Add tsdoc comments
* add floor for potential non int multipliers
* Update pokemon.ts
---------
Co-authored-by: Benjamin Odom <bennybroseph@gmail.com>