251 Commits

Author SHA1 Message Date
psf
fe16a2cdee
Port pokefirered's Vs. Seeker to pokeemerald (#3256)
* First version of Vs. Seeker

* Update movement.inc

98f7e9978d (r1306721924)

* Update field_effect_scripts.s

https://github.com/rh-hideout/pokeemerald-expansion/pull/3256/files#r1306722004

* Update field_effect_scripts.s

https://github.com/rh-hideout/pokeemerald-expansion/pull/3256/files#r1306722024

* Update item_use.h

https://github.com/rh-hideout/pokeemerald-expansion/pull/3256/files#r1306722401

* Update movement_action_func_tables.h

https://github.com/rh-hideout/pokeemerald-expansion/pull/3256/files#r1306722828

* Update event_object_movement.c

https://github.com/rh-hideout/pokeemerald-expansion/pull/3256/files#r1306722887

* Update overworld.c

https://github.com/rh-hideout/pokeemerald-expansion/pull/3256/files#r1306723396

* Update vs_seeker.h

https://github.com/rh-hideout/pokeemerald-expansion/pull/3256/files#r1306724158

* Update vs_seeker.c

Addressed some cleanup comments from SBird

* Update UpdateRandomTrainerRematches
Fixed typo in ClearAllTrainerRematchStates
Fixed types in GetRematchableTrainerLocalId

* Updated UseVsSeekerEffect_2

* Updated UseVsSeekerEffect_3

* Updated UseVsSeekerEffect_4

* Fixed bug that allowed Vs Seeker to be used indoors in correct places
Moved VsSeeker function declarations into header

* Refactored FieldUseFunc_VsSeeker

* Added curly braces to else case in FieldUseFunc_VsSeeker

* renamed data[x] in Task_ResetObjectsRematchWantedState

* Refactored Task_ResetObjectsRematchWantedState

* Refactored VsSeekerResetObjectMovementAfterChargeComplete

* Refactored ResetMovementOfRematchableTrainers

* Refactored GatherNearbyTrainerInfo

* Refactored Task_VsSeeker_3

* CanUseVsSeeker

* Refactored GetVsSeekerResponseInArea

* GetCurVsSeekerResponse refactored

* Cleaned up GetTrainerFlagFromScript

* Gave sensible names to Task_VsSeeker

* Fixed two bugs where player would not have the right gfx state after using VsSeeker on a Bike or Underwater

* Renamed UseVsSeeker Functions

* Added I_VS_SEEKER_CHARGING to make Vs. Seeker broken until flag is assigned
Removed extra VsSeeker animation code

* Addressed PR feedback

* Fixed issue with building non-modern

* Refactored GetRunningBehaviorFromGraphicsId and renamed to GetResponseMovementTypeFromTrainerGraphicsId

* Addresses Lunos's PR feedback: https://github.com/rh-hideout/pokeemerald-expansion/pull/3256\#pullrequestreview-1623547850
Removed the check to see if a map was not indoors to improve readability
Made IsValidLocationForVsSeeker into a static function

* Added changes in response to Jasper's feedback
https://github.com/rh-hideout/pokeemerald-expansion/pull/3256\#pullrequestreview-1725276522

* Updated with Edu's discord feedback https://discord.com/channels/419213663107416084/1135040810082123907/1176872015085453392

* Removed ifdef tags around the repo unless needed
b5dc744ced
2023-11-26 18:58:43 +01:00
kittenchilly
b6ff973f38
Add support for legendary fusion (#3274)
* Legendary Mon Fusion Evolution Compatibility Added

Kyurem, Calyrex, and Necrozma Fusions have been implemented, however, the animation for the the process is incomplete, the party menu screen needs to be updated while the screen is whited out and it has proved beyond me right now. Smh

* Added Fusion Move Prompts

Handles cases for learning the fusion moves from the other fused mon and deleting the move when you unfuse (plus learning confusion (well a set choice in the data struct) if there are no moves left after deleting one)

* Fix Bug With Fusion Mon Move Learning

If the main fusion came after the fused mon in the party order it would try to teach the move to the next member in the party

* Apply suggestions from code review

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

* Fix build

* Fix fusion items being used up

* Fixed animations

* RefreshPartyMenu

* Apply suggestions from code review

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

* Apply suggestions

* Update form_change_tables.h

* Fix animation and simplify fusion tables

* Fix party full message

* Remove trailing whitespaces

* Update party_menu.c

* Update party_menu.c

* Make IsFusionMon better

* Apply suggestions from code review

Co-authored-by: Bassoonian <iasperbassoonian@gmail.com>

---------

Co-authored-by: TeamAquasHideout <jonathonheddings@gmail.com>
Co-authored-by: Eduardo Quezada D'Ottone <eduardo602002@gmail.com>
Co-authored-by: LOuroboros <lunosouroboros@gmail.com>
Co-authored-by: Bassoonian <iasperbassoonian@gmail.com>
2023-11-23 22:59:51 +01:00
Bassoonian
cb245a00c6
Includes older item and move names as variants (#3580)
* Item name variants

* Updated move names

---------

Co-authored-by: Alex <93446519+AlexOn1ine@users.noreply.github.com>
2023-11-20 18:35:00 +01:00
Eduardo Quezada
a8564cf8a9 Merge branch 'RHH/master' into RHH/upcoming 2023-11-14 12:54:16 -03:00
kittenchilly
c1cdc320bb
Implement Rotom Catalog and Zygarde Cube (#3284)
Co-authored-by: Martin Griffin <martinrgriffin@gmail.com>
Co-authored-by: Eduardo Quezada D'Ottone <eduardo602002@gmail.com>
2023-11-13 17:46:25 -03:00
Pawkkie
b93dfb9d59
Smarter SwitchAI Mon Choices | HasBadOdds Switch Check (#3253)
* SwitchAI makes much smarter mon choices

* Add HasHadOdds check to ShouldSwitch decision

* Remove early return

* Rework Baton Pass check as per discussion with Alex

* Forgot to adjust a comment

* Don't program before breakfast lol (if / else if fix)

* Switch AI_CalcDamage for AI_DATA->simulatedDmg in HasBadOdds

Thanks Alex! :D

* Typo in a hitToKO comparison

* Remove and replace AI_CalcPartyMonBestMoveDamage and IsAiPartyMonOHKOBy from https://github.com/rh-hideout/pokeemerald-expansion/pull/3146

See https://discord.com/channels/419213663107416084/1144447521960251472 for details

* Major refactor, new struct, switchin considers damage / healing from hazards / status / held item / weather

* Forgot Snow exists and heals Ice Body, haven't played Switch games lol

* (766a1a27a7) Compatibility, use new struct field instead of function call

* Fixing oversight from previous upstream merge

* Improve TSpikes handling to make GetSwitchinHazardDamage more applicable

Small fixes:
- EFFECT_EXPLOSION typo (!= to ==)
- Order of if statements near bestResistEffective
- Spacing of terms in big HasBadOdds if statements

* Forgot to uncomment blocks disabled for debugging what turned out to be vanilla behaviour lol

* Remove another holdover from debugging, sorry :/

* Lastly, undoing my debug trainer

* Type matchup based on species type rather than current type

Suggested by BLourenco on Discord, the idea is that a mon that's had its type affected by a move like Soak will still have moves as though it was its regular typing, and so prioritizing the temporary typing wouldn't be ideal.
https://discord.com/channels/419213663107416084/1144447521960251472/1146644578141736970

* gActiveBattler upcoming merge fixes

* Egg changes part 1

* Egg changes part 2, just need to address EWRAM still

* Move SwitchinCandidate struct to AiLogicData

* Consider Steel type when checking TSpikes

* Comment about CanBePoisoned compatibility

* Changes for Egg's 2nd review

* Put period back in comment, whoops lol

* Latest upcoming merge fixes

* Missed a few u32 updates

* Combine GetBestMonIntegrate functions / flags, some modularization

* Fix merge error

* Make modern fixes

* Two tests done, two to go

* Accidentally pushed reference test, removing it

* Type matchup switching tests

* Tests for defensive vs offense switches

---------

Co-authored-by: DizzyEggg <jajkodizzy@wp.pl>
2023-11-11 14:37:35 +01:00
LOuroboros
ee0222c0ec
Updated the holdEffectParam of the items that double the amount of money gained in battle (#3528) 2023-11-06 10:18:45 +01:00
kittenchilly
bd71946372
Remove all trailing whitespace (master) (#3472) 2023-10-27 13:52:44 -03:00
Eduardo Quezada
1137d54b61 Merge branch 'RHH/master' into RHH/upcoming
# Conflicts:
#	asm/macros/battle_script.inc
#	src/battle_script_commands.c
2023-10-23 17:36:42 -03:00
Frank DeBlasio
bac135c6e8
Gave Razor Fang EVO_HELD_ITEM type/fieldUseFunc properties (#3456) 2023-10-23 17:03:31 -03:00
Martin Griffin
311224d32f
Converted most battle preproc ifs to regular ifs (#3392) 2023-10-12 15:28:41 +01:00
Alex
0b9126ff53
Adds moves Matcha Gotcha, Syrup Bomb and Ivy Cudgel (#3402)
* initial commit

* done

* clean up
2023-10-11 11:09:50 +02:00
Eduardo Quezada
d1c672d3ce Converted most battle preproc ifs to regular ifs 2023-10-08 21:32:15 -03:00
kittenchilly
b5f7a51351
Add Teal Mask item, move, and ability data (#3349) 2023-10-08 15:56:09 -03:00
kittenchilly
ab8bc6e493
Add new sell value of 1/4 of an item's price, with config (#3315)
Co-authored-by: Eduardo Quezada D'Ottone <eduardo602002@gmail.com>
2023-10-05 09:14:42 -03:00
kittenchilly
d4217739e6
Add type boosting held item power config (#3326)
Co-authored-by: Eduardo Quezada D'Ottone <eduardo602002@gmail.com>
2023-09-20 22:03:00 -03:00
ghoulslash
181a0b35a5
Removed unused itemId field (#3293) 2023-09-11 09:13:27 -04:00
Eduardo Quezada
bfcbd37d78 Updated Big Nugget's Fling power to Gen 8+ 2023-09-11 02:43:39 -03:00
Eduardo Quezada
6a70b06240 Removed unused itemId field 2023-09-10 19:42:33 -03:00
psf
75d06bb599
Generation 6 Experience Share (#3276) 2023-09-07 23:18:18 -03:00
Eduardo Quezada
0d5b00aaf2 Merge remote-tracking branch 'pret/master' into RHH/pr/upcoming/pret_20230829
# Conflicts:
#	README.md
#	data/battle_ai_scripts.s
#	data/battle_scripts_1.s
#	data/maps/BattleFrontier_Lounge7/scripts.inc
#	include/battle_anim.h
#	include/battle_message.h
#	include/constants/items.h
#	src/battle_ai_script_commands.c
#	src/battle_ai_switch_items.c
#	src/battle_anim_throw.c
#	src/battle_anim_utility_funcs.c
#	src/battle_controller_link_opponent.c
#	src/battle_controller_link_partner.c
#	src/battle_controller_opponent.c
#	src/battle_controller_player.c
#	src/battle_controller_player_partner.c
#	src/battle_controller_recorded_opponent.c
#	src/battle_controller_recorded_player.c
#	src/battle_controller_wally.c
#	src/battle_gfx_sfx_util.c
#	src/battle_message.c
#	src/battle_script_commands.c
#	src/battle_util.c
#	src/data/party_menu.h
#	src/data/pokemon/tmhm_learnsets.h
#	src/daycare.c
#	src/field_specials.c
#	src/hall_of_fame.c
#	src/party_menu.c
#	src/pokemon.c
#	src/tv.c
2023-08-31 14:28:01 -04:00
LOuroboros
9d6953cc63
Removed the sTMHMMoves array and made TMs/HMs read moves from their secondaryId item field (#3243)
* Deleted sTMHMMoves array, TMs/HMs read moves from their secondaryId item field now
The unused "registrability" variable has been removed in order to preserve the size of the gItems array after turning the secondaryId variable into a u16.
* Made ItemIdToBattleMoveId return ITEM_NONE if an item that is not a TM/HM is passed through it
* Renamed IsMoveHm to IsMoveHM
2023-08-21 12:49:17 +01:00
LOuroboros
2d45b9b8fe
Corrected conditionals used for B_SPEED_BUFFING_RAPID_SPIN and I_GEM_BOOST_POWER (#3232) 2023-08-14 16:14:12 -04:00
Martin Griffin
912a80e27a
Reference TMs and HMs by move instead of number (#1732) 2023-08-09 10:51:01 -04:00
Alex
38655b9d1f
Fix gem boost on multi hit moves and config for gem param (#3144) 2023-07-18 06:11:54 +01: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
Eduardo Quezada D'Ottone
42445512ad
Battle Item Tests + critical fixes + new test macro (#2940) 2023-05-06 20:43:32 -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
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
CallmeEchoo
301a12fe98 fix battleUsage for heal powder 2023-04-21 10:51:43 +02:00
Bassoonian
d5b36c7c60
Reusable TMs (#2903)
* Reusable TMs
* Forgot about Gen9 making TMs expendable again
* Change importance check based on Alex's suggestion
* Prevent items with importance from being bought more than once
* Change importance check to ghoul's suggestion
* Update include/config/item.h
Co-authored-by: Eduardo Quezada D'Ottone <eduardo602002@gmail.com>

---------

Co-authored-by: Eduardo Quezada D'Ottone <eduardo602002@gmail.com>
2023-04-18 19:52:20 -04:00
AgustinGDLV
2eabcea86e
Battle Item Refactor (#2902)
* items that can be used in battle now use battlescripts
* removed ExecuteTableBasedItemEffect_
* taught AI how to use items, removed AI_itemtype/flag
* X-Items store stages raised in holdEffectParam
* USE_ITEM in tests
2023-04-14 19:25:50 +01: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
3888b10769 Merge branch 'RHH/upcoming' into RHH/pr/feature/formBattleChange
# Conflicts:
#	src/data/pokemon/form_change_table_pointers.h
#	src/data/pokemon/form_change_tables.h
2023-03-27 10:55:38 -03:00
Bassoonian
e601719c91 Add new PLA form change items 2023-03-24 00:04:08 +01:00
Bassoonian
d480fc90f2 Fix Scrolls type 2023-03-19 21:21:43 +01:00
Bassoonian
372c6a1afa Add new item variables and defines 2023-03-19 20:55:39 +01:00
Eduardo Quezada
101ea6522d Merge branch 'RHH/upcoming' into RHH/pr/feature/formBattleChange
# Conflicts:
#	src/battle_util.c
2023-02-02 17:56:13 -03:00
Eduardo Quezada
3288309c43 Merge remote-tracking branch 'RHH_origin/upcoming' into RHH/pr/feature/formBattleChange
# Conflicts:
#	src/battle_script_commands.c
2023-01-25 19:57:19 -03:00
Eduardo Quezada
a044774896 Added Gen9 item data and fixed Punching Glove's effect 2023-01-24 16:47:54 -03:00
Eduardo Quezada D'Ottone
6e1981369b
Fixed Exp Candy S using the XS description 2023-01-13 13:22:27 -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
ghoulslash
53061c7d62
Merge pull request #2391 from AsparagusEduardo/RHH/pr/sugardoodoodoodoodoodooaahhoneyhoney
Implemented Honey's Sweet Scent functionality
2022-11-01 20:09:30 -04:00
Eduardo Quezada
ff494edb85 Refactored ItemUseOutOfBattle_FormChange to not use secondaryId 2022-10-20 16:57:34 -03:00
Eduardo Quezada D'Ottone
1607291982 Implemented Honey's Sweet Scent functionality 2022-10-16 20:20:13 -03:00
Eduardo Quezada
2d78ac0192 Implemented Lures using the same vars as repels 2022-09-12 10:21:49 -03:00
Jaizu
0daeee83f3
Fix Lure prices
This change reflects the original prices used in Pokémon let's go pikachu/eevee
2022-09-11 18:06:05 +02:00
LOuroboros
12fee71008 Merged FORM_ITEM_USE_TIME into FORM_ITEM_USE 2022-09-09 15:39:48 -03:00
Eduardo Quezada
69f4c226f0 Merge remote-tracking branch 'RHH/master' into RHH_cleanConfigs
# Conflicts:
#	src/battle_ai_main.c
#	src/battle_controller_opponent.c
#	src/battle_controller_player.c
#	src/battle_script_commands.c
#	src/pokemon.c
#	src/pokemon_summary_screen.c
2022-08-27 02:42:22 -04:00