Commit Graph

278 Commits

Author SHA1 Message Date
Brandon Lourenco
89e4f30867
Roost suppresses the user's Flying-type rather than remove and re-add it. Added tests for EFFECT_ROOST. (#3258)
* Fixed Roost clearing type3 when used by a pure Flying-type. (Gen 5+)

* Created a test file for Roost.

* Marked tests as TODO for now.

* Added more tests for HP healed and type changing.

* Created a function to handle Roost's Flying suppression when getting a battler's type. Added more tests.

* Added test for not-yet-aquired Flying-type. Fixed/rewrote some other tests.

* Now using GetBattlerType() in most relevant places. Fixed some tests.

* Added tests for interactions between Roost and Delta Stream, type-changing effects, Grassy Terrain healing, Levitate, Air Balloon, Magnet Rise, and Telekinesis.

* Added test for interaction between Roost and Reflect Type.

* Gen 4 tests merged with Gen 5+ tests.

* Removed errant space.

Co-authored-by: LOuroboros <lunosouroboros@gmail.com>

---------

Co-authored-by: LOuroboros <lunosouroboros@gmail.com>
2023-10-05 09:19:29 +02:00
DizzyEggg
74fd561759 merge with upcoming 2023-09-17 11:27:18 +02:00
Alex
a073e7bd59
Adds Gigaton Hammer and Salt Cure (#3297) 2023-09-15 11:18:47 -03:00
DizzyEggg
bb9501449c final ai optimizations 2023-09-14 11:05:00 +02:00
DizzyEggg
5ea66f3c0c more optimizations 2023-09-14 00:07:41 +02:00
DizzyEggg
38dcb3c66c ai weather optimization 2023-09-13 17:28:26 +02:00
DizzyEggg
1a64938c9b optimize dmg move result and ai who is faster 2023-09-13 13:23:19 +02:00
DizzyEggg
406209f738 score to s32 2023-09-13 09:27:49 +02:00
DizzyEggg
9778587935 optimize battle util and item functions by setting u32 variables 2023-09-13 00:02:26 +02:00
DizzyEggg
44bd830d2a optimize dmg calc and ai dmg calc to reduce lag 2023-09-12 23:20:09 +02:00
psf
75d06bb599
Generation 6 Experience Share (#3276) 2023-09-07 23:18:18 -03:00
Eduardo Quezada
820113d883 Merge branch 'RHH/master' into RHH/upcoming
# Conflicts:
#	data/battle_anim_scripts.s
#	data/battle_scripts_1.s
#	include/battle_scripts.h
#	include/battle_util.h
#	src/battle_script_commands.c
#	src/battle_util.c
2023-09-07 15:13:06 -03:00
DizzyEggg
cfd802423b
Fling fixes and tests (#3191)
* begin fling tests

* fling fixes and tests

* Update test/move_effect_fling.c

Co-authored-by: Eduardo Quezada D'Ottone <eduardo602002@gmail.com>

* Update test/move_effect_fling.c

Co-authored-by: Eduardo Quezada D'Ottone <eduardo602002@gmail.com>

* Update test/move_effect_fling.c

Co-authored-by: Eduardo Quezada D'Ottone <eduardo602002@gmail.com>

* Update test/move_effect_fling.c

Co-authored-by: Eduardo Quezada D'Ottone <eduardo602002@gmail.com>

* Update test/move_effect_fling.c

Co-authored-by: Eduardo Quezada D'Ottone <eduardo602002@gmail.com>

* Update test/move_effect_fling.c

Co-authored-by: Eduardo Quezada D'Ottone <eduardo602002@gmail.com>

* Update test/move_effect_fling.c

Co-authored-by: Eduardo Quezada D'Ottone <eduardo602002@gmail.com>

* Update test/move_effect_fling.c

Co-authored-by: Eduardo Quezada D'Ottone <eduardo602002@gmail.com>

* scripts names change

* fix fling's test file

---------

Co-authored-by: Eduardo Quezada D'Ottone <eduardo602002@gmail.com>
2023-09-05 06:56:36 -03:00
ghoulslash
675aa5db41
fix GetBattleAnimMoveTargets logic (#3278)
* fix GetBattleAnimMoveTargets logic

* more efficient GetBattleAnimMoveTargets

---------

Co-authored-by: ghoulslash <pokevoyager0@gmail.com>
2023-09-05 09:21:14 +02:00
DizzyEggg
493c330cbd merge with upcoming 2023-08-30 13:23:55 +02:00
DizzyEggg
4683783a92 remove active battler from other files 2023-08-30 10:18:31 +02:00
kittenchilly
5e8caa8d45 Merge branch 'upcoming' into ultraburst 2023-08-12 12:36:11 -05:00
Philipp AUER
59da940283
Refactor damage formula to match Gen5+ (#3196)
* [battle, damage] refactor damage formula to match gen5+

* [test] use exact values for dry skin, swarm tests

* fixup: assume stats for dry-skin, swarm tests

---------

Co-authored-by: sbird <sbird@no.tld>
2023-08-11 16:28:38 -04:00
kittenchilly
c3e31af5f3 Ultra burst trigger 2023-08-09 22:12:26 -05:00
Eduardo Quezada
f94efa94e1 Merge branch 'RHH/master' into RHH/upcoming 2023-08-02 01:18:07 -04:00
DizzyEggg
5eec3b2fc3
fix various issues with primal weather blocking water/fire type moves (#3138)
* fix various issues with primal weather blocking water/fire type moves

* forgot to change return to effect=1

* fix bugs
2023-07-30 10:50:51 -04:00
Eduardo Quezada
47cea526ec Merge branch 'RHH/master' into RHH/upcoming
# Conflicts:
#	src/battle_util.c
2023-07-19 23:22:07 -04:00
Eduardo Quezada D'Ottone
b08c8f85fc
Fixed Utility Umbrella damage calculations (#2835)
* Fixed Utility Umbrella holders not receiving regular damage when being hurt by what would've been weakened rain/sun attacks

* Fixed reading move incorrectly

* Tests: Sun, Rain, Utility Umbrella and Hydro Steam

* [STASH] Skeli changes, needs to remake tests

* Fixed tests

* Removed redundant tests

* Removed unused variable

* Removed Primal Todo tests
2023-07-18 09:22:05 +02:00
DizzyEggg
1f1d24b3e4
Fix Primal Reversion not activating when switching in after fainting (#3141)
* Fixed Primal Reversion not activating when switching in after a fainting
* add tests for primal reversion

Co-authored-by: Eduardo Quezada <eduardo602002@gmail.com>
2023-07-16 12:26:54 +01:00
Martin Griffin
17f8f50a59 Merge remote-tracking branch 'rhh/master' into upcoming 2023-07-16 07:46:34 +01:00
Martin Griffin
58ede15263
Fix Roullout Fury Cutter AI power calc (#3110) 2023-07-16 06:45:35 +01:00
DizzyEggg
2a249654e7 fix mirror move/metronome powder/multi hit moves & tests 2023-07-15 14:00:55 +02:00
sbird
6482279fa3 [battle, math] refactor damage calculation to use proper fp type and inlined multiplication 2023-07-07 18:51:23 +02:00
DizzyEggg
9a09f1e3b9 Fix Roullout Fury Cutter AI power calc 2023-07-06 13:41:16 +02:00
ghoulslash
cc3a6d4d94
make special case ABILITYEFFECT_xx ids their own caseId switch cases to fix potential overlap with ability IDs 0xFF etc (#3083)
Co-authored-by: ghoulslash <pokevoyager0@gmail.com>
2023-07-03 10:03:50 +02:00
Eduardo Quezada D'Ottone
1fa9a05470
Convert move flags and bans into GCC bitfields (#2952)
* Slicing moves to new bitfield

* Wind moves to new bitfield

* Two-strike moves to new bitfield

* Forgot to add flagTwoStrikes to battle_moves.h

* Removed "flag" from field names

* FLAG_HIT_IN_SUBSTITUTE and FLAG_THAW_USER

* Airborne moves

* FLAG_POWDER, FLAG_TARGET_ABILITY_IGNORED and FLAG_DANCE

* FLAG_BALLISTIC and FLAG_PROTECTION_MOVE

* Fixed missing uses of MOVE_UNAVAILABLE in battle_ai_util.c

* FLAG_SOUND

* FLAG_DMG_UNDERGROUND and FLAG_DMG_UNDERWATER

* FLAG_DMG_MINIMIZE

* Cleanup

* FLAG_STAT_STAGES_IGNORED

* Updated Pollen Puff's ballistic flag

* FLAG_STRONG_JAW_BOOST and FLAG_MEGA_LAUNCHER_BOOST

* thaw

* FLAG_THREE_STRIKES

* FLAG_IRON_FIST_BOOST

* FLAG_RECKLESS_BOOST

* FLAG_HIGH_CRIT

* Removed empty flags

* Moves that fail when called by Me First + added missing Shell Trap

* Moves that fail when Gravity is active

* Better names for banned fields

* Moves that fail when called by Instruct

* Cleanup

* Contact Moves + Fixed Wandering Spirit skipping contact checks

* Inverted FLAG_PROTECT_AFFECTED so that there's a flag for moves that SKIP protect.

* Simplified B_MOVE_FLAGS configs

* FORBIDDEN_METRONOME

* Renamed hitsPastSubstitute to ignoresSubstitute

* FORBIDDEN_PARENTAL_BOND

* Struggle uncallable by Metronome

* FORBIDDEN_MIMIC

* FLAG_KINGS_ROCK_AFFECTED

* Made a single config for move flags

* Macro for checking move flags

* FLAG_MAGIC_COAT_AFFECTED

* Fixed HasMagicCoatAffectedMove

* FLAG_SNATCH_AFFECTED

* Removed unused EFFECT_FLINCH_MINIMIZE_HIT

* Fixed Stench/King's Rock interaction

* Removed sMovesNotAffectedByStench in favor of checking move effects

* Removed EFFECT_TWISTER, which was a repeat of EFFECT_FLINCH_HIT

* Changed Gen2 configs to less than Gen 3

* FORBIDDEN_SLEEP_TALK

* Cleanup

* Inverted FLAG_MIRROR_MOVE_AFFECTED

* FLAG_SHEER_FORCE_BOOST

* Ordered

* FORBIDDEN_ASSIST and FORBIDDEN_COPYCAT

* Removed TestMoveFlags and TestMoveFlagsInMoveset + flags field

* Fixed Triple Arrows test
2023-07-03 10:01:59 +02:00
Eduardo Quezada
ca1d9f5393 Merge branch 'RHH/master' into RHH/upcoming
# Conflicts:
#	include/battle_util.h
2023-06-21 15:01:14 -04:00
ghoulslash
7371a9e401
Add many gen 8 move animations (#2861)
* port many gen8 and 9 move anims from cfru

* fix thunder cage, shell smash, shelter anims. update anim credits

---------

Co-authored-by: ghoulslash <pokevoyager0@gmail.com>
Co-authored-by: Eduardo Quezada D'Ottone <eduardo602002@gmail.com>
2023-06-21 13:19:54 -04:00
Pawkkie
62ae3b1df1
Fix bug due to variable overflow when AI chooses new Pokemon to send out (#3068) 2023-06-21 12:59:30 -04:00
LOuroboros
2bf88502a7 More corrections 2023-06-19 04:18:53 -03:00
LOuroboros
9896f20eb8 Applied fixes and corrections (Jun 2023) 2023-06-15 09:22:26 -03:00
LOuroboros
313f522622 Merge branch 'upcoming' of https://github.com/rh-hideout/pokeemerald-expansion into gen_9_move_effects_batch2 2023-06-13 05:44:37 -03:00
Eduardo Quezada D'Ottone
d0e6ea7612
Optimized battle gender checks (#3020)
* Optimized battle gender checks

* Apply suggestions from code review

Co-authored-by: AgustinGDLV <103095241+AgustinGDLV@users.noreply.github.com>

---------

Co-authored-by: AgustinGDLV <103095241+AgustinGDLV@users.noreply.github.com>
2023-05-27 17:23:02 -04:00
AgustinGDLV
785b100693 Merge branch 'upcoming' of https://github.com/rh-hideout/pokeemerald-expansion into castform_fix 2023-05-16 16:29:38 -07:00
Eduardo Quezada D'Ottone
2aca82300c
Merge branch 'upcoming' into mega_evo_issues 2023-05-14 22:33:01 -04:00
AgustinGDLV
a5f28afe42 fixed Forecast and Flower Gift 2023-05-04 17:04:54 -07:00
ghoulslash
8cce130643
Add Frostbite status (#2942) 2023-05-01 09:45:47 -04:00
Bassoonian
39b50d09dd Add missing CanGetFrostbite 2023-05-01 11:19:10 +02:00
Bassoonian
c279830892 Merge branch 'upcoming' of https://github.com/rh-hideout/pokeemerald-expansion into formbattlechangecontribution 2023-04-27 10:50:32 +02:00
Martin Griffin
4a0abc5129
Merge branch 'upcoming' into rhh-get-party 2023-04-26 12:12:03 +01:00
Salem
78c4d07b23
Add Berserk Gene Item (#2893)
Co-authored-by: Eduardo Quezada D'Ottone <eduardo602002@gmail.com>
2023-04-25 15:03:57 -04:00
Alex
3aec63b8cf new define to restore items after battle 2023-04-20 15:08:42 +02:00
LOuroboros
b09ab5a3ee Updated Triple Arrows' effect's code and tests yet again
Also added a function to get a move's secondaryEffectChance, meant to handle abilities, side statuses and the like that modify it.
2023-04-19 01:57:34 -03:00
Martin Griffin
aefe582596 GetSideParty/GetBattlerParty
Inline GetBattlerPartyData into its callers because its name is
confusing and we couldn't think of a better one.

This seems to fix a bug in one place where GetBattlerPartyData was being
used as if it had GetBattlerParty semantics.
2023-04-15 23:04:13 +01:00
DizzyEggg
f6089a0057 Mega Evolution after switching and based on speed 2023-03-07 22:34:57 +01:00