Commit Graph

229 Commits

Author SHA1 Message Date
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 D'Ottone
81e59ace25
Cleaned up remaining Castform hack stuff (#3063)
* Removed gCastformFrontSpriteCoords

* Removed sCastformElevations and IsCastformForm

* Removed sCastformBackSpriteYCoords and castformPalette in BattleStruct

* Scrubbed unused BS commands

* Removed B_ANIM_CASTFORM_CHANGE and BattleForm constants

* Removed redundant function in Pokémon Debug menu

* Removed handling in animation scripts

* Removed gBattleMonForms

* Reduced MAX_MON_PIC_FRAMES to 2

* Removed Castform/Cherrim makefile stuff

* Fixed weather form change tests not checking species.

* Fixed Castform palettes after Lunos' PR
2023-06-30 09:58:07 +02:00
Eduardo Quezada D'Ottone
b01f7927cf
Fixed Sylveon's evolution method (#3048) 2023-06-19 16:17:51 -04:00
Eduardo Quezada
601a96f34a Fixes Hisuian mon not evolving + fixed regional mon not breeding correctly 2023-06-06 08:01:29 -04:00
LOuroboros
29d2d4202e
Evolution updates (#3009)
* Add Hisuian Sneasel's evolution to gEvolutionTable

* Updates
-Added EVO_ITEM_NIGHT, (it's like EVO_ITEM_DAY but nighttime specific)
-Added EVO_ITEM_HOLD (it's like the day based variations, but day agnostic)
-Turned the trade evo items into regular evolution items
-Ditched the config for the Razor Claw by request
-Updated every entry in gEvolutionTable for species that could only evolve via EVO_TRADE_ITEM to LA's standard

* Review corrections (extrapolations)

* Post Cherrypick corrections

* Corrected the description of EVO_ITEM_NIGHT

* Added a config for the new items' field-evolving functionality
2023-05-18 06:39:14 -04:00
Alex
dd43d62a12
Fixes Triple Dive effect (#2947) 2023-05-02 15:06:21 -04:00
Bassoonian
c279830892 Merge branch 'upcoming' of https://github.com/rh-hideout/pokeemerald-expansion into formbattlechangecontribution 2023-04-27 10:50:32 +02:00
citrusbolt
6c7f5881e4
Add two EV-related configs (#2825) 2023-04-20 10:05:32 -04:00
Eduardo Quezada
11beec62ee Merge branch 'RHH/upcoming' into RHH/pr/feature/formBattleChange
# Conflicts:
#	src/data/pokemon/evolution.h
#	src/field_poison.c
2023-04-14 11:31:02 -04:00
aaghaht
bd54c70020 Add PLA evo items 2023-04-10 10:47:31 +05:30
Eduardo Quezada
ef914a2fac Merge branch 'RHH/upcoming' into RHH/pr/feature/formBattleChange 2023-03-21 16:13:27 -03:00
Eduardo Quezada
51b716c9d9 Merge remote-tracking branch 'pret/master' into RHH/pr/sync/pret_20230319
# Conflicts:
#	data/battle_scripts_2.s
#	include/constants/battle_string_ids.h
#	include/constants/songs.h
#	src/battle_message.c
#	src/data/pokemon/species_info.h
2023-03-19 20:28:56 -03:00
Eduardo Quezada
0a9ab96390 Added STANDARD_FRIENDSHIP constant to allow easier custom adjustments 2023-03-14 08:54:49 -03:00
Eduardo Quezada
4625a46748 Merge branch 'RHH/upcoming' into RHH/pr/feature/formBattleChange
# Conflicts:
#	src/battle_interface.c
#	src/battle_main.c
#	src/battle_script_commands.c
#	src/battle_util.c
2023-03-07 11:26:33 -03:00
Eduardo Quezada
9917f5cc8b Merge remote-tracking branch 'pret/master' into RHH/sync/pret_20230303
# Conflicts:
#	Makefile
#	include/constants/pokemon.h
#	include/pokemon.h
#	make_tools.mk
#	src/battle_ai_script_commands.c
#	src/battle_controllers.c
#	src/battle_main.c
#	src/battle_script_commands.c
#	src/party_menu.c
#	src/pokemon.c
#	src/trade.c
#	src/trainer_pokemon_sprites.c
2023-03-03 11:00:50 -03:00
Eduardo Quezada
a23501a4a3 Merge remote-tracking branch 'RHH_origin/upcoming' into RHH/pr/feature/formBattleChange
# Conflicts:
#	src/battle_script_commands.c
2023-01-02 18:54:57 -03:00
Eduardo Quezada
1580f892a5 Merge branch 'RHH/upcoming' into RHH/pr/feature/formBattleChange
# Conflicts:
#	include/constants/pokemon.h
#	src/battle_script_commands.c
2022-12-19 18:53:26 -03:00
LOuroboros
3c30e6bdc3 Implemented Sharpness' effect 2022-12-06 05:23:30 -03:00
LOuroboros
4dc44150c5 Implemented Wind Rider's effect 2022-12-06 05:23:29 -03:00
Eduardo Quezada
540f4679bb Implemented uses of Shiny config 2022-11-14 11:56:02 -03:00
Eduardo Quezada
8f289714b2 Moved form change defines and descriptions to their own header 2022-11-05 21:36:45 -03:00
Eduardo Quezada
ceb5c8a00a Merge remote-tracking branch 'RHH_origin/upcoming' into RHH/pr/feature/formBattleChange
# Conflicts:
#	include/battle_util.h
#	src/battle_util.c
2022-11-05 20:11:33 -03:00
Eduardo Quezada
42f8e8c114 Multiple refactors
- Added a general GetBattleFormChangeTargetSpecies instead of getting specific ones for Mega Evolution and Primal Reversion.
- Added FORM_CHANGE_BATTLE_HP_PERCENT, to replace ShouldChangeFormHpBased.
- Cleaned ifdefs for hold effects.
- Finally removed UndoMegaEvolution.
- FORM_CHANGE_FAINT and FORM_CHANGE_BATTLE_END restore to the first form before a battle form change if species isn't specified.
- When changing from a form with more HP to one with less, now current HP is kept to fix Zygarde edge case. (Will likely need to be reworked for Dynamax, as it behaves differently)
- Uses DoesSpeciesUseHoldItemToChangeForm in CanBattlerGetOrLoseItem.
2022-11-05 20:00:12 -03:00
Eduardo Quezada
797c5514d3 Mega Evolution in form change tables 2022-11-01 18:37:23 -03:00
Eduardo Quezada
a57f6d184b Fainting by poison in the overworld reverts forms 2022-11-01 12:24:04 -03:00
BuffelSaft
d9cc98a4fe Suggested changes
- Various style fixes
- Add BATTLE_ALIVE_EXCEPT_ATTACKER case to CountAliveMonsInBattle
2022-10-24 22:19:35 +13:00
Eduardo Quezada
0a79390ec0 Primal Reversion in Form Change tables 2022-10-21 02:08:37 -03:00
Eduardo Quezada
861590f747 Form change when fainting. Goodbye UndoFormChange! 2022-10-20 18:53:12 -03:00
Eduardo Quezada
d8cc7f7abe Form change when switching out 2022-10-20 17:56:56 -03:00
Eduardo Quezada
b74f0777da Renamed form change constants 2022-10-20 17:22:58 -03:00
GriffinR
60e1ad20e4 Add NUM_MON_PIC_FRAMES, and trainer pic size constants 2022-10-10 23:16:08 -04:00
Eduardo Quezada
fb9105f8ac Added Mega Evolution flag 2022-09-27 10:21:26 -03:00
Eduardo Quezada
3d214f8204 Merge remote-tracking branch 'RHH_origin/dev' into RHH/pr/pokemonFlags
# Conflicts:
#	src/pokemon.c
2022-09-27 10:13:32 -03:00
Eduardo Quezada
4b1aca19cb Merge remote-tracking branch 'pret/master' into RHH/pr/pretmerge_20220909
# Conflicts:
#	src/battle_controller_link_opponent.c
#	src/battle_controller_opponent.c
#	src/battle_controller_recorded_opponent.c
#	src/battle_controllers.c
#	src/data/pokemon_graphics/back_pic_coordinates.h
#	src/data/pokemon_graphics/front_pic_coordinates.h
#	src/pokemon.c
2022-09-10 00:17:03 -04:00
LOuroboros
12fee71008 Merged FORM_ITEM_USE_TIME into FORM_ITEM_USE 2022-09-09 15:39:48 -03:00
Eduardo Quezada
21df8c279b Added SPECIES_FLAG_CANNOT_BE_TRADED
- Also corrected Cylarex's forms not having the legendary flag
2022-09-09 08:59:53 -04:00
GriffinR
74b563f696
Merge pull request #1749 from GriffinRichards/ur-classes
Fix names and constant usage for union room classes
2022-09-06 21:35:10 -04:00
LOuroboros
f1c153e469 Merged FORM_ITEM_HOLD_ABILITY into FORM_ITEM_HOLD
There was never a reason not to.
2022-09-06 18:37:16 -03:00
LOuroboros
0b07f4a06e Merge branch 'master' of https://github.com/rh-hideout/pokeemerald-expansion into zazaForms 2022-09-06 10:53:12 -03:00
Eduardo Quezada
2ee843c70d Proper label for species flags 2022-09-04 22:13:28 -03:00
Eduardo Quezada
a4c242f2f8 Implemented Shiny Lock functionality 2022-09-04 21:55:59 -03:00
Eduardo Quezada
74c3fdfba7 Flag to allow certain species to always have perfect IVs (like Partner Pikachu and Eevee) 2022-09-04 19:41:01 -03:00
LOuroboros
df88317a98 Introduced FORM_BATTLE form changes
For species such as Xerneas and Zacian.
2022-08-29 19:10:52 -03:00
Blackforest92
61c33f56a0 Updated to latest master branch + add PLA's data to teachable_learnsets.h 2022-08-29 21:01:31 +07:00
Eduardo Quezada D'Ottone
bee36edd9c
Merge pull request #2173 from LOuroboros/yourAffection
Implement affection-now-friendship mechanics
2022-08-26 14:54:32 -04:00
LOuroboros
2cf2c00b29 Updated friendship labels 2022-08-25 17:10:11 -03:00
LOuroboros
11d6ae4820 Renamed the GetLeadMonFriendshipScore constants 2022-08-25 11:34:37 -03:00
LOuroboros
e792fae415 Review corrections
-Simplified the affection mechanics' battle scripts.
-Corrected the value seting inside CalcCritChanceStage.
-Simplified the checks inside Cmd_adjustdamage
-Simplified the contents of GetLeadMonFriendshipScore now that a more general function to do the same thing was added.
-Added constants for the values returned by GetMonFriendshipScore.
2022-08-25 10:45:57 -03:00
LOuroboros
1f4ef2a0fb Added constants for GetLeadMonFriendshipScore 2022-08-25 10:40:56 -03:00
Blackforest92
07a07ddc8d Update to latest master branch + allow Reveal Glass to work with Enamorus 2022-08-24 15:00:48 +07:00