158 Commits

Author SHA1 Message Date
Alex
f4c91b5539
Convert statuses3 to volatiles (#7514) 2025-08-11 23:19:36 +02:00
Alex
acc82e7d79
Convert Status4 to volatiles (#7411)
Co-authored-by: hedara90 <90hedara@gmail.com>
2025-08-05 19:28:33 +02:00
Alex
8e8813e593
Show chosen move in the battle debug menu (#7382) 2025-07-22 12:58:15 -04:00
AlexOn1ine
165e7502bc Instant Win option in Battle Debug 2025-07-13 16:21:37 +02:00
Nephrite
a1e67572b6
Replaces STATUS2 usage with volatiles in code (#7262)
Co-authored-by: Alex <93446519+AlexOn1ine@users.noreply.github.com>
2025-07-11 22:53:49 +02:00
Alex
31a561201b
Adds hazard queue (#7295) 2025-07-07 15:30:35 -04:00
Eduardo Quezada
c6a62758a2
Use compound strings in battle debug menu (#7282) 2025-07-05 13:45:20 +02:00
Alex
e503f97f32
Use dedicated functions for Mud/Water Sport (#7248) 2025-07-02 09:08:12 +02:00
hedara90
390482d355
Fix debug text order (#7149)
Co-authored-by: Hedara <hedara90@gmail.com>
2025-06-19 14:26:49 +02:00
Eduardo Quezada
800829538c
Compound strings for hold effect names (#7140) 2025-06-18 11:38:42 +02:00
Nephrite
06cd3af3ea
Volatile status refactoring (#6983) 2025-06-18 07:22:41 +02:00
AlexOn1ine
b90fdd1b3c Master to upcoming merge 2025-05-26 10:41:11 +02:00
Hedara
2e4833240f Merge commit 'b31a73f990fb680629e2a503d72d137bcff0872a' into pret-merge
Conflicts:
	include/item.h
	src/battle_ai_script_commands.c
	src/battle_main.c
	src/battle_pyramid_bag.c
	src/battle_script_commands.c
	src/battle_util.c
	src/item.c
	src/item_menu.c
	src/item_use.c
	src/pokemon.c
	src/pokemon_summary_screen.c
	src/shop.c
2025-05-24 21:24:56 +02:00
AlexOn1ine
1a773a5916 conflicts 2025-05-14 23:21:33 +02:00
Eduardo Quezada
3ef61e6451
Combined type-enhancing hold effects (#6846) 2025-05-14 13:45:08 +02:00
Eduardo Quezada
13071f7019 Added IsOnPlayerSide 2025-05-12 13:53:15 -04:00
Alex
d00563d830
Changed White Herb hold effect name (#6815) 2025-05-11 11:34:47 +02:00
AlexOn1ine
4959187d97 fix conflicts 2025-05-09 21:47:53 +02:00
Eduardo Quezada
392d662c12
Rename GetPartyBattlerData to GetBattlerMon (#6800) 2025-05-09 15:14:09 +02:00
Alex
1871d16ffa
Refactor battler message ids (#6765) 2025-05-07 00:24:10 +02:00
Eduardo Quezada
1f23fe0dd3
Use GetPartyBattlerData where appropiate (#6779) 2025-05-06 17:13:50 +02:00
AlexOn1ine
9a14bb2dd3 removed aiFlags prefix 2025-05-01 20:22:11 +02:00
AlexOn1ine
182d42642d Move out ai struct out of BattleResources 2025-05-01 11:27:48 +02:00
Bassoonian
512368fd03
Add type checking for hold item effects (#6619) 2025-04-15 23:33:00 +02:00
Hedara
2210e2d410 Merge branch 'master' into upcoming-master 2025-04-09 11:06:38 +02:00
hedara90
ff8bf967d4
Added AI switch display to the battle debug (#6529)
Co-authored-by: Hedara <hedara90@gmail.com>
2025-04-02 23:44:09 +02:00
AlexOn1ine
ae640f0714 25-03-25 master to upcoming merge 2025-03-25 21:39:58 +01:00
kittenchilly
76bb903d06
Update Battle Debug menu with new AI flags (#6444) 2025-03-22 08:54:52 +01:00
hedara90
4e01ce6993
Moved some AI stuff out of the battlestruct (#6405)
Co-authored-by: Hedara <hedara90@gmail.com>
2025-03-11 21:23:02 +01:00
Pawkkie
b12f32667f
Fix roll handling in AI damage calcs (#6396)
Co-authored-by: Alex <93446519+AlexOn1ine@users.noreply.github.com>
2025-03-08 09:53:14 +01:00
Alex
77b677dbf9
Introduces BattleTurnCounter to simplfy timer checks (#6080) 2025-01-25 14:26:38 -05:00
Eduardo Quezada
8821779815 Merge branch '_RHH/master' into _RHH/upcoming 2025-01-11 08:07:15 -03:00
Pawkkie
b5f539ed21
Rename AI_FLAG_PREFER_STRONGEST_MOVE (#5972) 2025-01-08 14:00:20 +01:00
Eduardo Quezada
9669a0554d
Encapsulate move data (#5852) 2025-01-01 20:34:33 +01:00
Eduardo Quezada
5130ea9da3 Merge branch '_RHH/master' into _RHH/upcoming 2024-09-28 11:45:49 -03:00
Alex
71dfd3e7c0
Ogerpon masks were missing their hold effects (#5391)
* Ogerpon masks were missing their hold effects

* fix wrong num

* test

* correct tests and additional fix

* added hold effect to battle debug
2024-09-19 00:25:53 +02:00
Alex
25e9ca2ac6
Cleaned up a bit of code with GetBattlerPartyData (#5378)
* rename GetBattlerPartyData
2024-09-15 08:24:26 +02:00
pkmnsnfrn
5635f94036 More changes from typeX to types[X] 2024-08-07 11:35:45 -07:00
Eduardo Quezada
cc00446eb8 Merge branch '_RHH/master' into _RHH/upcoming
# Conflicts:
#	src/data/graphics/pokemon.h
#	src/data/pokemon/species_info/gen_9_families.h
2024-07-26 09:42:52 -04:00
kittenchilly
a16448c081
Update and clean up Battle Debug (#4643)
* Update battle debug with new stuff

* Fix status not showing up

* Update hold effects as well

* Update battle_debug.c

* Update battle_debug.c
2024-07-26 00:07:11 +02:00
sneed
821d5dccab
AI calculates/stores minimum possible move damage and uses it with AI_FLAG_TRY_TO_FAINT (#4760)
* AI uses safest option to faint foes

* dont calculate non crit dmg unless it's needed

* struct SimulatedDamage

* add GetDamageByRollType and name DamageRollType

* Parametrize test AI flags

* use simDamage member's instead of dmg & minDmg
2024-06-11 18:28:16 +02:00
Frank DeBlasio
2f4203bc4c
Consolidate type properties (#4185)
* Moved gTypeNames into gTypes

* Added invalid move text to struct

* Added max move to struct

* Added icon palette to struct

* Added macros for invalid and max moves

* Swapped palette and max move order

* Renamed invalid to generic

* Renamed invalid to generic in struct definition

* Added zMoves and items to type struct

* Addressed comments

* Incorporated newer comments

* Updated comment format
2024-03-12 07:57:38 -03:00
ghoulslash
521ef8bf86
battle debug menu can cycle through battlers in ai score/dmg window (#4134)
Co-authored-by: ghoulslash <pokevoyager0@gmail.com>
Co-authored-by: Alex <93446519+AlexOn1ine@users.noreply.github.com>
2024-02-04 23:30:30 +01:00
LOuroboros
a64e1c63c1
Move data unification (#3999)
* Made gBattleMoves handle the InGame name and description of battle moves
No more multiple arrays in separate, individual files.

Note:
-Keep an eye on Task_LearnedMove.

* Reintroduced move names

Misc:
-Fixed Trick-or-Treat and Light of Ruin's expanded names.
-Introduced a new field for Z-Move names, and a constant for their name length.
-Added a few TODOs to GetBattleMoveName.
-Updated GetMaxMoveName and GetZMoveName. There's no reason not to let GetBattleMoveName handle everything on its own.

* Updated GetBattleMoveName to handle Z-Move Names

Misc:
-Removed pointless TODO about MOVE_NAME_LENGTH.
 -The compiler doesn't allow to have a move name with a value higher than MOVE_NAME_LENGTH, therefore it's pointless to worry about it.

* Fixed a couple of expanded move names

* Removed zMoveName variable of struct BattleMove and extended the name variable's size

* Ditched no longer used MOVE_NAME_LENGTH constant

* Corrected the names of the max moves
I should have done this after updating the size of the name variable of the struct BattleMove, but I didn't think about it at all until Cancer Fairy indirectly gave me the idea.

* Fixed U-turn's name

* Brought back MOVE_NAME_LENGTH
I think it doesn't make sense to have a Z_MOVE_NAME_LENGTH because the length in question is used for all battle moves, not just the Z-Moves.

* Introduced a union for Move/Z-Move names in the struct BattleMove

* Fixed the union for gBattleMoves move names
Also updated GetBattleMoveName to properly handle Max Move names.
Also also renamed the "zMoveName" variable to "bigMoveName" which better reflects its purpose. Z-Move names weren't the only thing it covered, since it also handles Max Move names.

* Removed deprecated GetZMoveName and GetMaxMoveName

* Reintroduced mention to gMoveNames in sGFRomHeader

* Fixed move names and ported move descriptions

* Fused the struct ContestMove into the struct BattleMove

* Removed no longer used Z_MOVE_NAME_LENGTH constant

* Renamed the struct BattleMove's bigMoveName variable and introduced macros to prettify move names

* Reintroduced the contest parameters for Pokémon moves

* Renamed gBattleMoves to gMovesInfo
This is consistent with gSpeciesInfo, the array that contains most of the species data.

* Renamed the BattleMove struct to MovesInfo
This is consistent with the struct SpeciesInfo, which contains the variables used by the gSpeciesInfo array.

* Removed empty lines separating battle params from contest params in gMovesInfo

* Renamed MovesInfo to MoveInfo

* Added Cancer Fairy's HANDLE_EXPANDED_MOVE_NAME macro
Used to handle moves with expanded names in a more comfortable manner.
Also fixed Trick-or-Treat's expanded name.

* Renamed GetBattleMoveName to GetMoveName

* Added a comment pointing out that the shared move descriptions are shared move descriptions

* Re-aligned one of the escape characters of CHECK_MOVE_FLAG

* Renamed the battle_moves.h file to moves_info.h instead for consistency's sake

* Applied Eduardo's adjustments

* Using compound string for regular move names as well, saving 1180 bytes and making their use consistent
* Move description formatting

* Updated Pursuit test after merge

* Renamed the BATTLE_CATEGORY constants to DAMAGE_CATEGORY

---------

Co-authored-by: Nephrite <thechurchofcage@gmail.com>
Co-authored-by: Bassoonian <iasperbassoonian@gmail.com>
Co-authored-by: Eduardo Quezada D'Ottone <eduardo602002@gmail.com>
2024-01-29 08:51:32 -03:00
Bassoonian
b9a02b205d
Rename gItems and gAbilities to gItemsInfo and gAbilitiesInfo (#4068)
* Rename gItems to gItemsInfo

* Rename gAbilities to gAbilitiesInfo

* Just fixing up my bad merge

---------

Co-authored-by: Eduardo Quezada D'Ottone <eduardo602002@gmail.com>
2024-01-26 15:25:52 -03:00
Frank DeBlasio
bfe3e762ff
Fixed Battle AI debug screen shiny sprites (#3922)
* Switched gBattleMons.isShiny to GetMonData

* Simplified getting party of Pokemon

---------

Co-authored-by: Alex <93446519+AlexOn1ine@users.noreply.github.com>
2024-01-04 15:39:26 +01:00
Bassoonian
6bc0bf9f8b
Ability refactor (#3861)
* Ability refactor

* Adds abilities to RHH rom header

---------

Co-authored-by: Martin Griffin <martinrgriffin@gmail.com>
2023-12-29 14:25:24 +01:00
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
ghoulslash
a9d6832908
Separate AI flags by battler position (#3003)
* ai flags by battlerId

* fix recoded battle saved ai flags

* update aiFlags check in OpponentHandleChoosePokemon

* add header for TRAINER_CUSTOM_PARTNER define

* initialize flags in BattleAI_SetupAIData

* fix usage of TRAINER_CUSTOM_PARTNER

* remove whitespace

---------

Co-authored-by: ghoulslash <pokevoyager0@gmail.com>
2023-12-27 13:54:37 +01:00
Eduardo Quezada
661becc3b6 Merge branch 'RHH/upcoming' into RHH/pr/upcoming/debugCleanup2
# Conflicts:
#	src/debug.c
2023-10-30 08:05:14 -03:00