Commit Graph

523 Commits

Author SHA1 Message Date
innerthunder
3b3b9e39af
[Move] Implement Follow Me, Rage Powder, and Spotlight (#1834)
* Implement "Center of Attention" battler tag + moves

* Powder immunity logic for Rage Powder

* Center of Attention unit tests
2024-06-17 18:05:21 -04:00
Matthew
d70dd16f8c
[Refactor] I18n Cleaning (#2348)
* I18n Cleaning

* pr comments

* appease typedoc

* moved types into src
2024-06-17 17:05:33 -04:00
schmidtc1
d5ec5c371b
[Move] Fix bug for Spite and fully implement Eerie Spell (#2244)
* Bug fixes for spite, creates class to extend spite for eerie spell

* Comments for clarity, creates class to extend ReducePpMoveAttr

* Resolve reference error with AttackReducePpMoveAttr

* Shows move failed in a clearer way with showMoveText

* Localization of pp reduction moves

* Fixes issue of eerie spell reducing pp when ratio is 0

* Removes unnecessary phase replacement

* Remove partial implementation from eerie spell

* Adds locale entry for ppReduced to other languages
2024-06-17 15:05:23 -04:00
Frisk17
89eba349c9
[Move] Implemented Magnet Rise (#2081)
* Partially implemented Magnet Rise

* Implemented Magnet Rise

* Changed pokemon.ts so all TypeImmune tags work instead of just
MagnetRisen

* Magnet Risen is now removed when Gravity is used.

* Magnet Rise is ignored by Thousand Arrows
and Smack Down.

* Fixed a bug where status ground type moves
would also be ignored by Magnet Rise

* Added a message when Magnet Rise is removed

* Inserted TypeImmuneTag check in
getAttackMoveEffectiveness() for the AI

* Created a magnetRiseCondition separately

* Created a test for Magnet Rise

* Bug Fix in Magnet Rise test

* Created Magnet Rise test with Gravity

* Shifted the code from getAttackMoveEffectiveness
and apply into getAttackTypeEffectiveness instead

* Replaced onNextPrompt with doAttack

* Removed redundant runFrom(Phase)

* Replaced magnetRiseCondition with
battlerTags.every anonymous function

* Fixed import errors

* Added an undefined check for summonData
for TypeImmuneTag in getAttackTypeEffectiveness

* Replaced undefined-check with optional chaining
2024-06-17 17:35:06 +02:00
chaosgrimmon
1396aaaa57
[Move] Sappy Seed shouldn't be Making Contact (#2303)
https://bulbapedia.bulbagarden.net/wiki/Sappy_Seed_(move)
2024-06-16 18:48:42 -04:00
chaosgrimmon
90f6ae7e6d
[Bug] Friendship-based moves have Base Power -1 when Pokemon is wild (#2291)
Affects RETURN, FRUSTRATION, PIKA_POW, and VEEVEE_VOLLEY.
2024-06-16 18:40:47 -04:00
Arxalc
2d254bab96
[Move] Implemented Incinerate and Knock Off (#1671)
* Implemented Incinerate and Knock Off

* Ran linter

* Removed unnecessary code
2024-06-15 22:26:54 -04:00
Philippe
bf7eb52f85
[Move] Implement poltergeist (#1726)
* implement poltergeist

* add comments

* use string interpolation
2024-06-15 22:24:38 -04:00
innerthunder
01435ed0e0
[Ability] Implement Unseen Fist (#1776)
* Implement Unseen Fist

* Add unit tests for Unseen Fist

* Fix unit test imports
2024-06-15 22:14:49 -04:00
Matthew
dc30dd33b2
[QoL] Reorganize Enum Locations (#2185)
* moving enums

* import updates

* fix tsconfig paths importing (#2184)

* reverse index.ts addition

---------

Co-authored-by: Devin Korb <meepdarknessmeep@gmail.com>
2024-06-13 18:44:23 -04:00
schmidtc1
fd3261d8ce
[Move] Partial implementation of Stuff Cheeks (#2183)
* Partially implements stuff cheeks

* Comment for clarity on partial implementation

Explains why the move is still partially implemented.
2024-06-13 16:24:32 -04:00
Zach Day
f8c8605710
[Move] Fix multi-hit moves activating type-immunity abilities multiple times (#2165)
* Force multi-hit moves to hit once if they are against an immune type

* Add test for multi-hit attacks against immune types

* Document MultiHitAttr

* Tiny change

* Wording fix

* Use shortcut methods in unit tests

* Fix leftover modifications from METRONOME testing

* Reorganize SAP SIPPER tests

* Fix extra imports
2024-06-13 14:23:13 -04:00
Matthew Olker
e6c24dceab Revert "[QoL] Reorganize Enum Locations (#2142)"
This reverts commit cf06ff3b8d.
2024-06-13 11:30:47 -04:00
Matthew
cf06ff3b8d
[QoL] Reorganize Enum Locations (#2142)
* moving enums
2024-06-13 11:11:12 -04:00
Seung Ho Jang
0e7498f9ef
[Bug] Fix move 'Hyperspace Fury' to non-contact (#2132) 2024-06-12 09:21:16 -04:00
Zach Day
5762409b17
[Move] Implement Core Enforcer (#2024)
* [Move] Implement Core Enforcer

* Documentation

* Documentation
2024-06-10 21:17:28 -04:00
Madmadness65
32d222c9cd
Implement Arceus Plates and Silvally Memories (#1195)
* Implement Arceus Plates and Silvally Memories

* German localization for items

* Run linter on changes, add items to zh_TW localization

* linter cleanup

* Finish localization for other languages

Names for items sourced from Bulbapedia. Names for the items in Portuguese could not be reliably sourced, so they were as directly translated as possible.

* Add custom Blank Memory item

Currently does nothing, but the idea is that it would be used if the all-in-one form change item idea is followed through.

* Update item atlas

* Use move.type instead of type.value

The type effectiveness now works again.

* Update comments

* Fix type changing affecting only Silvally

* Condense switch cases down to a single line

As per Brain Frog's suggestion.
2024-06-10 09:58:34 -04:00
Charlie Giang
c746d0723f
[Move] fix for sparkly swirl apply check (#1059)
fix for sparkly swirl apply check

Update move.ts

Co-authored-by: Temps Ray <temps.ray@gmail.com>
2024-06-09 16:08:33 -04:00
td76099
8a0eaa0009
[Bug] Fixing multi-hit drain moves so they heal based on individual hit and not total turn damage (#1974) 2024-06-08 23:53:03 -04:00
Xavion3
8e0e8952da
Fix switching moves in challenge mode (#1972) 2024-06-09 01:05:18 +02:00
NightKev
ff7429f240
[Bug] Update Sweet Scent to reduce evasion by 2 (#1910)
cf https://bulbapedia.bulbagarden.net/wiki/Sweet_Scent_(move)
2024-06-07 21:42:17 -04:00
td76099
0a17c2495a
Bugfix: Abilities check final move type instead of default move type (#1440)
* Added check for move changing type before determining if defending is immune to it because of an ability

* Remove duplicate Ability change class and added getType() function under a move

* Reworking how moves get passed into hit calc

* Fixing exceptions and overreaching changes

* reverting forwarn and dancing move back to original since they are not being changed

* fixing some small move related bugs

* Fixing file permissions after testing

* Fixing move type not resetting after individual MoveEffectPhase

* Fixing move.ts permissions (again)

* Addressing some MR feedback and adding some documentation for PokemonMove class
2024-06-07 16:57:57 -04:00
MutenYoshii
f17a4ff3f2
[Move] Implemented Court Change (#1799)
* [Move] Implemented Court Change

* Returned overides to normal

* Added recommended changes

* Removed an unnecessary if statement for swaparenatagsattr

* Move the swaptags array to the call as well as changes to the quiet boolean

---------

Co-authored-by: Juan <jmora279@fiu.edu>
2024-06-07 09:27:11 -05:00
DustinLin
ffdbdc1139
fix sleep talk targeting (#1813) 2024-06-07 13:38:22 +01:00
DustinLin
a815b73d96
[Documentation] documentation of move.ts (#1828)
* starting documentation of move.ts

* more docs

* fixing comments

* updating comments
2024-06-06 20:11:14 -05:00
Raidette
209a69d098
[Move] Rototiller implementation (#1885)
* rototiller implementation

* attack now fails if no eligible grass type pokémon is fielded
2024-06-06 17:22:04 -04:00
Philippe
763d2bfeeb
[Move] Implement pollen puff (#1732) 2024-06-03 16:26:15 -04:00
td76099
06ba63dd7d
[Bug] Liquid Ooze hurts move user instead of one with ability (#1301)
* Fixing Liquid Ooze to turn move user and not one with the ability as well as converted strength sap to use same logic instead of making it a separate class

* Replaced "undefined" with "null"

* Updated based on feedback + fix file permissions

* Fixing file permission on battler-tags

* Adding localization for drain message

* Apparently this file is 755 unlike the others

* Removed ability for custom message in exchange for getting to pass Pokemon name

* Once again changing moves from 644 to 755 like it is in repo right now :)

* putting ability back to 755 (why are file permissions all over the place)
2024-06-01 15:53:32 -04:00
Dmitriy K
d052d444b6
[QoL] Add type inference to getAttrs methods and refactor accordingly (#1633)
* 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>
2024-05-31 19:50:30 -05:00
dielle000
bda3013c19
Allow selection of item quantity when transferring items (fixes #723) (#1394)
* 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
2024-05-30 16:58:10 -05:00
Ethan
d70ab3eaf6
[Move] Implement Punishment (#1610)
* Implement Punishment and reopen pull request 373

* Fix console log and ()
2024-05-30 17:01:42 -04:00
Dmitriy K
329c9619f6
Add unthaw logic to Steam Eruption, Scorching Sands, Matcha Gotcha and all Damaging Fire moves (#940)
* Add unthaw to moves that are missing it

* Add unthaw to all damaging fire moves

* Add Status Effect overrides for easier testing

* clean up comments and readd status cure prefaint

* use helper instead of accessing attrs directly

* remove status overrides
2024-05-30 15:04:50 -05:00
Benjamin Odom
8d3c334e50
Fix move.ts Errors (#1564) 2024-05-29 11:54:33 -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
Amani H
47d39388ac
Implement Triple Kick/Triple Axel/Population Bomb (#1341)
* Implement Triple Kick/Triple Axel/Population Bomb

* Add maximum allowed base power increments

* Add documentation

* Fix Population Bomb, Account for Skill Link

* Change multi-hit power increment behavior

* Fix Typo
2024-05-29 00:07:35 +01: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 3fbbc9a165.

* add partial tags to abilities that would be blocked by Heal Block
2024-05-28 13:19:03 -04:00
ReneGV
bfe018ef65
Implement Comatose (#1423)
* Implement Comatose

* Lint

* Remove todo comment

* Remove partial
2024-05-27 06:01:03 -05:00
td76099
c4c4774528
Beat Up checks the user's party instead of always checking player's party (#1268) 2024-05-25 06:31:04 -05:00
innerthunder
4ffff8e1ee
Implement Quick Guard and other conditional team protection moves (#1275)
* Implement conditional protection arena tag

Affected moves:
- Quick Guard
- Wide Guard
- Mat Block
- Crafty Shield
- Feint (updated)

* Add support for moves that ignore Protect to conditional protection moves

* Comments for protect arena tags

* ESLint

---------

Co-authored-by: Benjamin Odom <bennybroseph@gmail.com>
2024-05-25 06:22:10 -05:00
ReneGV
5c327e347a
Implement Purify (#1291)
* Implement purify

* Code review fixes

* Remove vitest import

* Update status-effect.ts

* Update status-effect.ts

---------

Co-authored-by: Benjamin Odom <bennybroseph@gmail.com>
2024-05-25 06:01:23 -05:00
arColm
ae2928e1c9
Implement Poison Puppeteer (#320)
Co-authored-by: Benjamin Odom <bennybroseph@gmail.com>
2024-05-25 04:51:36 -05:00
Douglas Marchione de Souza
0d6145263f
Acrobatics does not treat vitamins as held items (#718)
* Changed the move Acrobatics so it doesn't include
non-held items on it's damage calculations

* Changed exception so it includes within_party
items, and updated the move description

* Small typo e_e'

* Change Description of Move

---------

Co-authored-by: Benjamin Odom <bennybroseph@gmail.com>
2024-05-24 15:49:23 -05:00
Jakub Hanko
a48ba9864d
Implement Destiny Bond move (#1104)
* 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
2024-05-24 15:23:23 -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 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>
2024-05-23 11:03:10 -04:00
Vance Ehrlich
45415a87bb
Disable tera-blast to prevent its use while there is not an animation (#1270)
* Disable tera-blast to prevent its use while there is not an animation

* Update TERA_BLAST to be unimplemented rather than partial
2024-05-22 23:37:23 -05:00
Ethan
ecc17c5342
Fixes Issue #805, the TODO was for a bug and was fixed in Platinum (#1238) 2024-05-22 09:59:29 -05:00
arColm
80f6b62d1b
Implement Revival Blessing (#343) 2024-05-19 18:02:17 -05:00
rayanzmn
f1394307f4
Fixes recoil damage calculation (#1063)
Recoil damage previously used the total damage dealt by the user instead of using the damage dealt in the current turn.
2024-05-19 17:54:17 -05:00
arColm
f649179e24
Implement Grassy Glide (#272) 2024-05-19 17:52:51 -05:00
lucfd
9f699537bc
Implemented Bug Bite, Pluck, Teatime (#232)
* implemented pluck, bug bite

* steal blocked by sticky hold

* implemented teatime

* added stuff cheeks

* added berry pouch support

* fixed StealEatBerryAttr sometimes eating 2 stacks of a berry

* added comments & documentation

* added more comments

* added comment on stuff cheeks condition

* fixed 0 stack berry modifier  not disappearing

* stuff cheeks bug fix

* fix leppa berry logic

* removed stuff cheeks
2024-05-19 17:47:30 -05:00
hayuna
840dba79cc
Implement Trump Card move (#816)
* Implement Trump Card move

* Add docs, rearrange order of conditions

* Add Pressure consequences

* Remove additional reducing PP if pressure

* Update comments to adjust ways of working
2024-05-19 13:17:58 -05:00
Jaime
df7cb209f7
Fix Curse targeting for non ghost types (#782) 2024-05-19 12:40:56 -05:00
Alvin Zou
608a968db4
Implement Beat Up (#593) 2024-05-19 09:22:37 -05:00
Matt Ross
e8c1098b91
Mostly implements upper hand (#433) 2024-05-19 09:04:19 -05:00
lucfd
78c8e8164d
Implemented Terrain Pulse & Misty Explosion (#235)
* implemented Terrain Pulse

* type only changes when grounded

* Implement Misty Explosion

* fixed grounded check

* added tsdoc

* Update move.ts

---------

Co-authored-by: Benjamin Odom <bennybroseph@gmail.com>
2024-05-19 08:31:13 -05:00
Benjamin Odom
4a9664c04c
Fix Entry Hazard Miss (#984)
* Fix Entry Hazard Miss

Made Entry Hazards bypass the accuracy check as they cannot miss a target. There's still one more bug to fix with this but it requires way more code changes. This change needed to be done as well, so I'm getting it out early.

* Update move.ts
2024-05-17 21:20:02 -04:00
Madmadness65
1f1c243415 Revert "Fix sparkly swirl cure status (#1051)"
This reverts commit 6bcf4e008a.
2024-05-17 15:37:34 -05:00
Charlie Giang
6bcf4e008a
Fix sparkly swirl cure status (#1051) 2024-05-17 15:03:55 -05:00
Jakub Hanko
b4f643f0fa
Use getBattleStat instead of getStat in BattleStatRatioPowerAttr (#742)
* Use getBattleStat instead of getStat in BattleStatRatioPowerAttr

* Change unnecessary let into const

* Refactor BattleStatRatioPowerAttr into two distinct classes

* Add TSDoc for the new classes
2024-05-17 01:42:43 -04:00
Tempoanon
f2b5a1b6f4
Fix some Pokemon classifications (#857) 2024-05-16 22:11:53 -05:00
Benjamin Odom
ff086ca492 Adjust all Existing Comments to Match
Adjusted all existing comments on move.ts to match
2024-05-16 08:38:27 -04:00
Ice
b9d48e9138
Change seed flare stat drop to 2 stages (#943) 2024-05-16 00:12:19 -05:00
Flashfyre
3c8d919ef8 Revert "Implemented Power Split and Guard Split (#699)"
This reverts commit 0b75a5210a.
2024-05-15 10:13:29 -04:00
Frederico Santos
0b75a5210a
Implemented Power Split and Guard Split (#699)
* 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>
2024-05-15 07:41:40 -05:00
andrew-wilcox
1f5b2726b5
added auto hit and 2x damage from certain moves when targeting a pokemon that used minimize (#824)
* 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>
2024-05-15 07:36:34 -05:00
Jannik Tappert
512016faef
Sacrifical Moves (that dont require a target like explosion or self d… (#691)
* Sacrifical Moves (that dont require a target like explosion or self destruct) now also work if the target is flying, diving etc.

There is also a new catagorie of moves. "SacrificalMovesOnHit" for all moves that need to hit for them to be sacrifical like MEMENTO

* Added comments, added (what i think is TSDoc) to functions and classes. Removed empty lines i introduced

* .

* Added fixes for the Review by TempsRay.

* Added missing *

* Remove Target Requirement of SacrificialAttr

* Update move.ts

---------

Co-authored-by: Benjamin Odom <bennybroseph@gmail.com>
2024-05-15 04:10:20 -05:00
Benjamin Odom
835b00d457
Added Comments to Base Classes (#860) 2024-05-14 23:19:12 -05:00
Ethan
7d3cf577a6
Implented Gen VII Sheer Cold Changes (#349)
* 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
2024-05-14 13:01:37 -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
Madmadness65
4e279224c5 Update Let's Go moves to their Gen 8 functionality
This primarily just affects Zippy Zap, as it loses its always crit attribute for an evasion increase (Associated localization strings will need updating). Also implemented Sparkly Swirl's status curing attribute.

Also included is a wild evolution delay for some stone evolution Pokémon that was previously overlooked.
2024-05-13 20:59:38 -05:00
LaukkaE
1d29ca7974
Fix Comeuppance (#781) 2024-05-13 18:48:22 -05:00
Matt Ross
4e6cf2a6ac
Facade should ignore burn damage reduction (#530)
* Facade should ignore burn damage reduction

* update order of burn conditions

* remove unnecessary space

* undo facade check in apply

* Rework facade bypassing burn as move attribute

* Only check ability attribute if move attribute was false

* Add missing semicolon

* Add tsdoc comment

* Add comment to burn damage reduction class

* Added changes from Discord thread

---------

Co-authored-by: Benjamin Odom <bennybroseph@gmail.com>
2024-05-13 13:06:15 -05:00
Marcos
3cc990f5d2
Fully implemented floral healing (#250)
* Created BoostedHealAttr and implemented Floral Healing

* Update move.ts

---------

Co-authored-by: Benjamin Odom <bennybroseph@gmail.com>
2024-05-13 04:27:38 -05:00
Frederico Santos
e4afdf1d45
Add ignoresProtect to life dew (#758)
Co-authored-by: Frederico Santos <frederico.santos@fivedegrees.nl>
2024-05-12 02:18:23 -05:00
notpatchmaybe
ea459826d0
Heart Swap implementation. (#712)
* Heart Swap implementation.

 Simply switches the values in 3 arrays.

* Fixed missing space

* Removed some lines.

Removed a for loop.

* Removed an unneccesary line

* TSDoc commentation added

* Changed message method to be more descriptive

* Adjusted message line to be consistent with Pokemon Showdown

* Adjusted priorBoostArray to priorBoost integer

Only one values is relevant at a time, so the array was pointless, woops.
2024-05-11 09:42:57 -05:00
Madmadness65
b13a563dad Update passive abilities for starters and pseudos
The latest changes from the balancing team. These changes will take immediate effect in any existing runs, so do keep that in mind.
2024-05-10 18:46:10 -05:00
td76099
acb61d6fb7
Fixes Tidy Up so it clears hazards from both sides (#717) 2024-05-10 11:31:27 -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
AJ Fontaine
7219556e77
Hydro Steam (#231)
* Hydro Steam, Spirit Shackle, U-turn fix

Match formatting to project style

Co-authored-by: Samuel H <flashfireex@gmail.com>

* Fix Hydro Steam power up in Sun, even harsh sun if type changes

* Fix issue with Hydro Steam outside sun

* Add comments to IgnoreWeatherTypeDebuffAttr for documentation

* Move U-turn fix to another PR

---------

Co-authored-by: Samuel H <flashfireex@gmail.com>
2024-05-09 21:21:57 -04:00
alpaca
1d7d8b1ac7
Implement Heal Bell + Aromatherapy (#238)
* adds frame for StatusCureAttr

* heal bell and aromatherapy functioning as intended

* refactor attr to solely handle party cure, party interaction unique enough to justify

* adds header to PartyStatusCureAttr

* code comment

* comment formatting improvement

* checks for passives as well

* code comment

* shows ability bar if immune
2024-05-09 14:15:56 -05:00
Xavion3
aba97c6ddc
Make max and z moves unable to be chosen with metronome (#641) 2024-05-09 00:38:46 -05:00
Tempoanon
d16cb1202f
Fix charge (#614)
* Fix charge

* Remove console logs
2024-05-08 23:37:50 -05:00
Elliott Simmonds
cb24faa12e
Small fixes to burning bulwark and alluring voice (#651) 2024-05-08 13:39:22 -05:00
Gray
b6692e42b2
Fix Flare Blitz in Gravity (#637)
This condition is out of place since Flare Blitz is not supposed to fail if used in Gravity.
2024-05-08 10:25:47 -05:00
Procyonae
118c57ba75
Add fell stingers effect (#202)
* Add Fell Stinger Effect

* Update src/phases.ts
2024-05-07 23:44:55 -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
1c9b65125d Fix Bouncy Bubble targeting & Hau encounter dialogue 2024-05-07 23:01:54 -05:00
kenniky
52b546c924
add hazard removal for Rapid Spin, Defog, Tidy Up, Mortal Spin (#248)
* add hazard removal for Rapid Spin, Defog, Tidy Up, Mortal Spin

* Updated templating and fixed some errors

support for either pokemon using it
added better templating

* revert logic, and remove partial tags

---------

Co-authored-by: kenwang <kenwang@umich.edu>
Co-authored-by: Gwen Valentine <gwenvalentine@starshine.dev>
2024-05-06 22:00:31 -05:00
Tempoanon
78ae7c9f0a
Minor TM learn fixes and make glacial lance non contact (#553)
* Make curse target

* Minor TM learn set changes and make glacial lance non contact
2024-05-06 12:00:51 -04:00
lucfd
80b6001c77
Implemented Revelation Dance (#166)
* implemented Revelation Dance

* fixed steam engine activating on all water moves

* implemented typeless

* stellar handling for revelation dance

* removed testing lines

* changed to UNKNOWN implementation

* removed UNKNOWN RGB

* removed print debug + unnecessary logic

* simplified test condition further
2024-05-06 10:24:37 -05: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
Temps Ray
77b6ad47d0 Make curse target 2024-05-05 18:40:21 -04:00
Benjamin Odom
e6fd331931 Fix HalfSacrificialAttr
Mind Blown targets all users and was triggering recoil every time it hit. Changed so that it only applies once after all targets take damage by adding a new MoveEffectTrigger, POST_TARGET. This also fixes an issue where dying to recoil stopped the rest of the damage from hitting the remaining targets.

This change also applies fixes for Steel Beam since they are have the same effect but is single target.

Also added missing messages for Damp and Recoil. All messaging is in line with Pokémon Showdown.
2024-05-05 17:46:15 -04:00
Tempoanon
9b72dfbd71
Implement curse (#510)
* Implement curse

* self targeting is always true if not ghost type
2024-05-05 17:45:20 -04:00
Madi Simpson
f7f235cdec move: handle some aspects of custom fail text a bit better 2024-05-05 14:28:06 -04:00
lucfd
4aad37a758
Implement Take Heart Sleep Talk edge case (#508)
* removed take heart condition, added sleep talk edge case

* removed freeze heal

* removed testing stuff
2024-05-05 13:04:19 -05:00
LaukkaE
697f2a3a42 fix-takeHeart 2024-05-05 13:36:52 -04:00
Madi Simpson
b6603e2c6c move: fix issue with self switch moves causing softlocks 2024-05-05 12:22:03 -04:00