* Create getAttackDamage function
* Add ignoreAbility params to getBattleStat
* Rewrite Pokemon.apply
* renamed damage variables
* Add `ignoreSourceAbility` arg to `getAttackDamage`
* Enemy AI now searches for KO moves
* Add probabilistic test for KO search
* Add tests to `damage_calculation`
* "killMoves" --> "koMoves"
* Clean up `randomMultiplier`
* Clean up damage calculation test
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
* Fix stabMultiplier using base type for Tera bonus
* Restore simulation capabilities for Unaware
* move sourceTeraType closer to where it's used
* Add base damage test
* Exclude counter moves from KO search
---------
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
* Make `OPP_MOVESET_OVERRIDE` fully override the enemy's moveset
* Update tests with new override behavior
* Fix tests
* Fix another test
* Move overrides no longer required to be arrays
* Remove `SPLASH_ONLY` test utility variable
* Update moveset override helper functions
* Missed some tests
- remove any `.js` extension imports
- remove unncessary dynamic imports of `modifier.ts` file. The file was being imported statically & dynamically. Made it pure static
- increase vite chunk-size warning limit
Co-authored-by: Mumble <171087428+frutescens@users.noreply.github.com>
* fix damage calculations. add test code
* define toIntValue function to replace every repeatitive min floor function.
* revert unnecessary minimum boundary
* update function name `toIntValue` -> `toDmgValue`. update comments.
* add missing updates for changing function name
* Update src/utils.ts
Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com>
* remove redundant comment
* update import code for test with phase
---------
Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com>