239 Commits

Author SHA1 Message Date
td76099
55423dd39d
Feature: Finish Magnet Pull and clauses for Arena Trap (#1193)
* Implements Magnet Pull and lets Levitate/Flying Pokemon ignore Arena Trap

* using isGrounded() instead of checking for Flying/Levitate

* MR feedback to use condtions for trapping instead of having it in the class

* Making Shadow Tag Pokemon immune to Shadow Tag

* Updated to make sure Tera Stellar Pokemon are checked against their original type as well
2024-05-29 14:47:16 -04:00
Xavion3
1b7b539d68
Implements Supreme Overlord and fixes Last Respects (#1219)
* Implements Supreme Overlord

Also fixes count for Last Respects

* Add comments
2024-05-29 11:07:59 -04:00
Ethan
4695d0617d
Download Ability Fix (#1119)
* Fixes Issue #993 by changing from base stats to include summonBattleStats

* Added TODO with Substitute

* Fix conflicts

* Unsure why true was put through for passive, probably just a mistake on my end

* !== fix

* Conflict fix

* Eslint Fix

* Implement Double Battle average to take in stats from both Pkmn
2024-05-28 15:32:52 -04:00
Dmitriy K
9893c21a7e
implement Cheek Pouch ability (#987)
* Partially implement Cheek Pouch ability

* add cheek pouch trigger to EatBerryAttr class

* Partially implement Cheek Pouch ability

* add cheek pouch trigger to EatBerryAttr class

* add cheek pouch trigger to new berry phase, remove partial tag

* run auto formatter because I forgot

* hotfix berries triggering before status effects

* Revert "hotfix berries triggering before status effects"

This reverts commit 3fbbc9a165b5244325851a08c4daa8415337834b.

* add partial tags to abilities that would be blocked by Heal Block
2024-05-28 13:19:03 -04:00
Frederico Santos
89f58961cb
Implement Zero to hero (#1131)
* 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
2024-05-28 06:11:04 -05:00
Madmadness65
b058e10713 Add missing summon text for As One abilities
Just a minor flavor text addition to mirror the canon games.
2024-05-27 23:54:56 -05:00
Elliott Simmonds
2edec7f95b
Partially implemented Steely Spirit (#1430) 2024-05-27 07:19:17 -05:00
ReneGV
bfe018ef65
Implement Comatose (#1423)
* Implement Comatose

* Lint

* Remove todo comment

* Remove partial
2024-05-27 06:01:03 -05:00
Upos1997
6e286257d3
Implemented Plus and Minus (#1155)
* Implemented Plus and Minus

* Merge branch 'pagefaultgames:main' into main
2024-05-26 04:03:27 -05:00
Jakub Hanko
caeb22c26b
Implement Honey Gather (#1360)
* Implement Honey Gather

* Updated Ability Description

---------

Co-authored-by: Benjamin Odom <bennybroseph@gmail.com>
2024-05-25 08:01:08 -05:00
LaukkaE
0da469d7a3
Fix Wind Rider (#607)
Fix Wind Rider
2024-05-25 05:32:32 -05:00
arColm
ae2928e1c9
Implement Poison Puppeteer (#320)
Co-authored-by: Benjamin Odom <bennybroseph@gmail.com>
2024-05-25 04:51:36 -05:00
YounesM
4277439a2d
Implemented Dancer Ability (#590)
* implemented Dancer Ability

* corrected target selection for double battles, improved ability detection

* Added TSDoc

* Enhanced TSDoc

* Corrected dancing StatusMove triggering

* Linter corrections
2024-05-24 23:00:58 -05:00
LaukkaE
0309fde7e8
Fix Aftermath not working (#1209) 2024-05-24 15:35:45 -05:00
Greenlamp2
622885767d
Enforce Consistent Spacing with ESLint's space-before-blocks and keyword-spacing Rules (#1308)
* added rule no-trailing-spaces

* added rule space-before-block

* added rule keyword spacing
2024-05-23 19:19:20 -05:00
Greenlamp2
e2be6ba002
added rule no-trailing-spaces (#1307) 2024-05-23 18:45:04 -05:00
Greenlamp2
bac6c22973
ESLint - The Essential Linter and Formatter for JavaScript and TypeScript (#1224)
* 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>
2024-05-23 11:03:10 -04:00
Dmitriy K
a601d4d39e
hotfix creating berry with undefined type (#1260) 2024-05-22 18:34:49 -05:00
Dmitriy K
cd7e818a01
Mostly implement the Harvest ability (#1081)
* add harvest ability, move berry phase before turn end phase

* readd removing berry from memory after harvest
2024-05-22 08:52:45 -04:00
td76099
fbd863a25c
Feature: Finish implementing Mind's Eye (#1060)
* Adds in the accuracy and evasion bypass for Mind's Eye

* Added comment to new IgnoreOpponentEvasionAbAttr class

* Added docs to apply so that it is actually complete
2024-05-21 23:11:42 -04:00
Sbug98
42e2be22bc
Implements bad dreams (#633)
* test commit

* de modified readme

* first implementation, needs testing with healer

* fixed beahviour if 2+ opponents are on field, also added message

* further fixed

* reset of overrides.ts before merge to main

* fixed grammar

Co-authored-by: Jonas Pinson <jonas.pinson@gmail.com>

* Implemented changes suggested by @bennybroseph and @TempsRay

* Added more docs to the class

* removed old comments

* fixed ability name in comments

* added translation and made message localized

* fixed ability name

* added missing bracket

---------

Co-authored-by: Jonas Pinson <jonas.pinson@gmail.com>
2024-05-21 02:26:01 -05:00
arColm
f649179e24
Implement Grassy Glide (#272) 2024-05-19 17:52:51 -05:00
td76099
1bc6fcf4de
Bugfix - Ghost types are no longer trapped by abilities like Shadow Tag or moves like Fire Spin (#731)
* Checks if Pokemon is Ghost type when determining if it is trapped

* Adding doc comments based on new standard

* Update ability.ts

---------

Co-authored-by: Benjamin Odom <bennybroseph@gmail.com>
2024-05-19 12:05:46 -05:00
Frederico Santos
3031cc1245
Implement Ball Fetch (#1129)
* 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>
2024-05-19 11:13:33 -05:00
NxKarim
1ae5847e49
Implements Merciless (#440)
* 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.
2024-05-19 09:06:58 -05:00
mbroll
d32dbddd48
Update ability.ts (#910)
Water bubble should double the damage of water moves. The current multiplier in-game is x1.
2024-05-15 09:21:52 -05:00
Flashfyre
58e59369ed Revert "Readded removed args, inverted 'simulated' instead of removing (#874)"
This reverts commit e89dbad5f1b0ac284a83fbe077f9e708ea850575.
2024-05-15 09:12:03 -04:00
notpatchmaybe
e89dbad5f1
Readded removed args, inverted 'simulated' instead of removing (#874) 2024-05-15 03:56:06 -05:00
Brandon Rodgers
06c3611d06
Ability Corrosion (#744)
* 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>
2024-05-14 13:00:37 -05:00
Douglas Marchione de Souza
de3ca08704
Fix Air_Lock ability to express when it is switched in (#765)
* Airlock ability now properly announces when it is
in field when the pokemon with it is switched in

* Set message as in the original games, also created
a new attribute for in switch messages to not have
the pokemon name required to be on it.

* Committing language changes (i18n function)

* Revert "Committing language changes (i18n function)"

This reverts commit 2a3152003b676d54d21c5b675796fd2220b55b1d.

* Changed message variable name
2024-05-13 20:09:46 -05:00
Benjamin Odom
1c56efc860
Added Ability Triggers Localization (#811)
Adds the base files needed to start translating Ability trigger messages. Provides one as an example.
2024-05-13 18:12:28 -05:00
Griffin Zody
ed87293867
Fix Zygarge Complete form changing back into 50% (#786) 2024-05-13 14:53:23 -05:00
Matt Ross
fa60e002e8
Fixes some variable damage moves not working with tinted lens (#759)
* 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>
2024-05-13 13:05:09 -05:00
alpaca
09287c22ba
implements telepathy (#307) 2024-05-13 05:59:39 -05:00
lucfd
b36c23fae1
Implemented Curious Medicine (#263)
* implemented supersweet syrup

* implemented curious medicine

* removed sneaky test overrides

* removed sneaky test overrides x2

* updated to new language-agnostic format, removed supersweet syrup

* fixed whitespace

* Update ability.ts

---------

Co-authored-by: Benjamin Odom <bennybroseph@gmail.com>
2024-05-13 04:57:17 -05:00
Tempoanon
e9c09070df
Stench should not trigger on status moves (#800) 2024-05-13 00:24:07 -05:00
Tempoanon
e61c63f6c8
Implement innards out (#569)
* Implement innards out

* remove log statement

* Some cleanup

* Added comment
2024-05-13 07:07:31 +10:00
Douglas Marchione de Souza
9e453c5b0f
Fix sturdy (#604)
* Fixes sturdy to stop popping up even if not used

* Made changes to better the code, also added
a check for wonder_guard 1hp

* Refined code, as requested by bennybroseph

* Made a small fix and added better comments in
relation to interaction with Wonder_guard ability
2024-05-12 14:53:54 -05:00
Madi Simpson
e1ef3c03de
ability: make technician respect variable power moves (#529) 2024-05-12 04:06:09 -05:00
Athebyne
2ab335a3c5
Implement Snipe Shot, and Propeller Tail/Stalwart (#661)
* Implemented Snipe Shot and Stalwart/Propeller Tail

* Remove Testing Overrides

I don't know why these got pushed, they are in the gitignore file.

* Snipe Shot also has a high crit rate

* Add Comment

* Add TsDoc documentation to BypassRedirectAttr

* Add ability pop-up for when Propeller Tail/Stalwart proc.

* Fix Formatting

* Tab align comment
2024-05-10 10:40:21 -05:00
Benjamin Odom
b231b887aa
Update ability.ts (#671) 2024-05-09 16:40:23 +10:00
alpaca
76ac86d2ae
Implements healer (#259)
* Implements healer

* adds an ally check to the condition

* done testing, changes chance back to 30%

* adds comment header for PostTurnResetStatusAbAttr

* adds override to resetStatus to not allow revive

* dont revive

* override revert
2024-05-08 20:21:55 -05:00
alpaca
aeab9d78ec
Implements cursed body (#227)
* implements cursed body

* 30 percent chance to proc

* check if max

* removes unimplemented tag

* bypasses faint

* un-disable message specifies pokemon name

* adds prefix to un-disable message

* space issue
2024-05-08 19:25:16 -05:00
alpaca
b5888b5472
Implements Cotton Down (#254)
* Implements Cotton Down

* activates on faint as well
2024-05-08 17:25:15 -05:00
Jeremy B
bb28d3599e
fix scrappy and mindseye working as passive ability (#567)
* fix scrappy and mindseye working as passive ability

* update apply for ignoretypeimmunityabattr

* simplify logic for ignoretypeimmunityabattr

---------

Co-authored-by: contra1337 <jpbastyr@gmail.com>
2024-05-08 00:32:38 -05:00
Benjamin Odom
bb6bb1e6c1
Fixed Crash Moves and Reckless (#609)
* Fixed Crash Moves and Reckless

Added a new MoveFlags flag 'RECKLESS_MOVE' to make crash and recoil moves in line with other move flag boosting attacks.

Modified how flags were defined so they are easier to maintain.

Added the appropriate flag to all mvoes listed as being affected by Reckless. Steel Beam and Mind Blown do not count according to source:
https://bulbapedia.bulbagarden.net/wiki/Reckless_(Ability)

* Update move.ts

* Update abilities.ts
2024-05-07 23:28:35 -05:00
Madmadness65
fd0f21943e Implement Supersweet Syrup ability
Uses the new once per battle condition.
2024-05-06 23:47:20 -05:00
Xavion3
2d740f1952 Implement once per battle restriction on abilities
Currently just Intrepid Sword and Dauntless Shield
2024-05-07 00:39:16 -04:00
Matthew Ross
f92b563baa Hunger switch shouldn't trigger if terastallized 2024-05-06 08:49:26 -04:00
Jeremy B
bc8cb51dc1
Add Scrappy ability handling (#473)
* partially implement scrappy

* add minds eye handling also

* remove unimplemented from minds eye

---------

Co-authored-by: jbastyr <jpbastyr@gmail.com>
Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com>
2024-05-06 00:27:56 -05:00