Commit graph

32 commits

Author SHA1 Message Date
Martin Griffin
3ad66028e9
Backwards-compatible BoxPokémon Refactor (#3438)
* Check progress in non-battle PARAMETRIZEd tests

* Overworld Script Tests

* Backward-compatible BoxPokemon Refactor

Reuses space that contains zeros to provide space for:
- HP/status in the box
- 12-character nicknames
- Up to 63 PokéBalls
- Shininess separate from PID
- Hidden Nature
- Hyper Training
- Dynamax Level
- Gigantamax Factor
- Terastallization Types
- Shadow

Implements:
- OW_PC_HEAL to switch between Gen7- and Gen8+ behavior
- Nature Mints
- Dynamax Candy
- Hyper Training commands (canhypertrain/hypertrain)
- Gigantamax Factor commands (hasgigantamaxfactor/togglegigantamaxfactor)
- Terastallization Type on the summary screen
- Prevents Gigantamax Factor Pokémon from evolving into a species without a Gigantamax form

* fixup! Backward-compatible BoxPokemon Refactor

* displaydexinfo fix from Jasper
2023-12-27 17:48:17 +01:00
LOuroboros
58b03cb3bd
Implemented a CannotUseItemsInBattle function (#3524)
* Implemented a CannotUseItemsInBattle function
This fucntion is the result of merging CannotUseBagBattleItem and CannotUsePartyBattleItem. No reason to split the work between 2 functions when you can do it all with just 1.

Misc. Changes:
-Turned most of the if statements inside the function into "else if" statements for performance reasons.
-Refactored how the local variable "cannotUse" was used turning it into a bool.

* Made CannotUseItemsInBattle use a switch statement

Misc. Changes:
-Removed pointless parentheses from case EFFECT_ITEM_SET_FOCUS_ENERGY
-Removed pointless i loop variable from case EFFECT_ITEM_INCREASE_ALL_STATS and replaced a hardcoded 1 in its for loop.
-Turned the i loop variable declared at the top of the function into a u32 variable
-Removed pointless comments. The EFFECT_ITEM constants are readable enough to convey what sort of items they affect.

---------

Co-authored-by: Alex <93446519+AlexOn1ine@users.noreply.github.com>
2023-12-24 22:10:01 +01:00
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
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
kittenchilly
b5f7a51351
Add Teal Mask item, move, and ability data (#3349) 2023-10-08 15:56:09 -03:00
psf
75d06bb599
Generation 6 Experience Share (#3276) 2023-09-07 23:18:18 -03: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
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 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
TheXaman
b249399a53 changed 'B_FLAG_NO_CATCHING' to be evaluated by 'GetBallThrowableState()' 2022-09-06 23:00:26 +02:00
Eduardo Quezada
e96c9c87fa Merge remote-tracking branch 'RHH/item_expansion' into RHH_masterMerge
# Conflicts:
#	src/battle_script_commands.c
#	src/data/pokemon/base_stats.h
2022-07-22 23:38:52 -04:00
Eduardo Quezada D'Ottone
49905cee04 Ability Patch 2022-05-03 14:14:04 -04:00
LOuroboros
fa39dc76dc Merge branch 'battle_engine' of https://github.com/rh-hideout/pokeemerald-expansion into HEAD 2022-04-02 18:45:18 -03:00
ultima-soul
18afd06f6d Merge branch 'pokemon_expansion' of github.com:rh-hideout/pokeemerald-expansion into master_sync 2021-12-18 00:28:18 -08:00
ultima-soul
4f2e3bf214 Merge branch 'battle_engine' of github.com:rh-hideout/pokeemerald-expansion into master_sync 2021-12-17 21:23:54 -08:00
ghoulslash
c06029bc72 add last used ball 2021-06-25 13:37:59 -06:00
ExpoSeed
07af84db8a Implement FORM_ITEM_USE. Credits to Lunos for work on Gracidea 2021-03-03 13:54:25 -06:00
DizzyEggg
f86282f423 Merge branch 'master' of https://github.com/DizzyEggg/pokeemerald into item_expansion 2020-04-29 08:47:51 +02:00
GriffinR
b1d26e10a8 Sync map header property names with pokefirered 2020-04-28 19:59:08 -05:00
DizzyEggg
044f070020 Merge with master 2020-01-18 15:04:56 +01:00
GriffinR
749965d56b Document item_use.c 2019-12-21 21:39:30 -05:00
DizzyEggg
791ed999d9 Merge 2019-11-10 12:40:11 +01:00
GriffinR
0db188b487 Clean up berry_tree.inc and misc adjacent documentation 2019-10-20 09:46:46 -05:00
DizzyEggg
51bfdffac3 Ability Capsule 2019-08-17 12:47:25 +02:00
DizzyEggg
917b32ffbe Finish decompiling pyramid bag. 2018-08-30 20:10:57 +02:00
DizzyEggg
bc9fe72c6e Do some pyramid bag 2018-08-30 15:01:07 +02:00
Slawter666
2d4ab9f4ac Updated items.c
Working but non-matching
2018-04-23 23:25:03 +01:00
DizzyEggg
5dde701c81 merge overworld with master 2018-02-14 01:12:17 +01:00
golem galvanize
56e1a52823 Fixes 2018-02-08 21:00:28 -05:00
DizzyEggg
14d2caaf8d start decompiling berry tag screen 2018-02-02 12:32:12 +01:00