76 Commits

Author SHA1 Message Date
Alex
2f22780c17
Fixes Uproar not waking up mons (#7714) 2025-09-12 17:42:41 +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
Eduardo Quezada
5502fe2c5e
GetBattlerMon cleanup (#6967) 2025-06-01 21:10:24 +02:00
Alex
eb81820ae3
Clean up battlescript calls with func BattleScriptCall (#6873) 2025-05-31 09:09:35 +02:00
AlexOn1ine
33607529cd conflicts 2025-05-16 10:46:32 +02:00
Hedara
49906a81f7 Merge commit 'c39ef1a03002a7af94' into pret-merge
Conflicts:
	src/battle_ai_switch_items.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_safari.c
	src/battle_controller_wally.c
	src/battle_controllers.c
	src/battle_main.c
	src/battle_script_commands.c
	src/battle_util.c
	src/battle_util2.c
	src/pokemon.c
2025-05-15 17:31:50 +02:00
AlexOn1ine
1a773a5916 conflicts 2025-05-14 23:21:33 +02:00
Eduardo Quezada
13071f7019 Added IsOnPlayerSide 2025-05-12 13:53:15 -04: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
Eduardo Quezada
1f23fe0dd3
Use GetPartyBattlerData where appropiate (#6779) 2025-05-06 17:13:50 +02:00
DavidJCobb
0f17e70371 Shorter names for engine/controller communication enum members 2025-05-02 00:01:15 -04:00
AlexOn1ine
182d42642d Move out ai struct out of BattleResources 2025-05-01 11:27:48 +02:00
DavidJCobb
b4ee45f3e8 Renamed BATTLELINKMSGTYPE_ to BATTLELINKCOMMTYPE_
I want to avoid the word "message" since PRET has already chosen "battle message" as the term for predefined strings usable in the battle scripts and UI.

I was considering the term "battle link packet" instead, but the library for wireless communications already uses the word "packet" even though GBATEK does not. I'm going with "battle link communication type" instead. For this particular context, I don't think we need a compound noun ("X type"); the singular noun "type" is fine enough.
2025-04-26 11:37:20 -04:00
DavidJCobb
9dc48899d3 BUFFER_A/B -> BATTLELINKMSGTYPE; link send/recv. task data names
Replaced the BUFFER_A and BUFFER_B constants with the BATTLELINKMSGTYPE enum, which also identifies the "controller becoming idle" message type.

Named the task data for the link send task and the link receive task. Added macros to functions related to those tasks, for legibility.
2025-04-26 00:13:42 -04: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
Eduardo Quezada
3507862164 Merge branch '_RHH/master' into _RHH/upcoming 2025-02-12 09:30:59 -03:00
Hedara
e0e73983c7 Merge remote-tracking branch 'pret/master' into pret-merge-2025-02-11 2025-02-11 11:20:37 +01:00
shachar700
95aa41f0d4
Fixed switchout bug in multibattle where order of mons gets messed up (#2099) 2025-01-29 07:43:13 +00:00
Alex
8f34c76395
Removes Resource Flags and moves fields to DisableStruct (#5945) 2025-01-11 09:39:10 -03:00
psf
d1183f4b8a
Add B_SHOW_TYPES and cleaned up IsDoubleBattle (#5131)
* First attempt at a port

* Slightly broken but working

* Got images working and opponent palettes

* half finished compressed spritesheet approach instead

* fix the palettes (smh)

* fix hflip, and a lot of clean-up

* Add B_SHOW_TYPES

* Got Illusion working

* Add num type enum

* Updated function to get type

* Fixed type icon position and cleaned up functions

* Updated illusions and Tera handling

* Added BATTLE_TYPE_IS_SINGLE and DOUBLE

* Removed IS_BATTLE_TYPE_SINGLE

* Implemented BATTLE_TYPE_IS_DOUBLE across repo

* Removed SIDE macro

* Updated config

* Deprecated battler alive macro

* Reindented file

* Added exceptions for 2v1

* Replaced Fainted check with Null check

* Added functionality for only types of caught mons

* UseDoubleBattleCoords updated

* Added ShouldFlipTypeIcon

* Renamed TryLoadTypeIcon

* Refactored functions

* Refactored functions

* Refactored functions

* Refactored functions

* Renamed SEEN to CAUGHT

* Reset config

* Added useSecondPalette and isOrdinary to gTypesInfo

* Further simplified secondPalette and isOrdinary

* Changed isordinary to isSpecialCase

* Renamed to useSecondTypeIconPalette

* Fixed Stellar type interactions

* fixed spacing

* fixed include/config/battle.h

* fixed

* fixed include/config/general.h

* changed type1 and type2

* Moved IsDoubleBattle to include.battle.h
Removed BATTLE_TYPE_IS_DOUBLE
Removed IS_DOUBLE_BATTLE

* Changed IsBattlerFainted to IsBattlerAlive

* Removed IsBattlerNull

* Moved GetBattlerData to be inline

* Renamed GetMonDefensiveTeraType

* Removed IsIllusionActive

* Fixed identation

* found one last isDoubleBattle hold out

* fixed redundant brackets

* Fixed spacing for B_SHOW_TYPES

* Update src/battle_script_commands.c

Co-authored-by: Alex <93446519+AlexOn1ine@users.noreply.github.com>

* Fixed padding

* Reindent file and refactored GetTypeIconHideMovement

* Update include/data.h

---------

Co-authored-by: RavePossum <ravepossum@proton.me>
Co-authored-by: Frank <fdeblasio1004@gmail.com>
Co-authored-by: Alex <93446519+AlexOn1ine@users.noreply.github.com>
2024-08-11 17:55:51 +02:00
psf
493478e94b
Added support for XY's Sky Battles (#2950)
* Original implementation from Phlayne

* Moved Sky Battle Flag / Var into a config

* Optimized existing code and fixed existing bugs

Added error message for when sky battle var and flag are not set
Merged CanDoSkyBattle and PrepareSkyBattle into one special

* Added compatibility for Gen7+

* Commented out Volt Crash from banned moves

* Cleaned up debug scripts from testing

* Fixed bug where player did not white out even if they had no healthy Pokémon and only an egg
Zeroed out both Sky Battle configs

* Removed extra include from src/field_specials.c
Removed extra line break in src/battle_script_commands.c

* Added FLAG_DISABLED_IN_SKY_BATTLE
Added FLAG_DISABLED_IN_SKY_BATTLE to appropriate moves

* Changed DoesSkyBattleCancelCurrentMove to look at move flags

* Fixed alignment and spacing in battle_moves.h

* Added FLAG_DISABLED_IN_SKY_BATTLE to Sticky Web

* Added FLAG_DISABLED_IN_SKY_BATTLE to Steel Roller

* Disabled the ability to change Battle Terrain when Sky Battle is happening
Stopped Ceaseless Edge from spawning Spikes when Sky Battle is happening
Added B_SKY_BATTLE_STRICT_MECHANICS config

* Fixed bug with SKY_BATTLE_STRICT_MECHANICS where conditions were not consistently being applied

* Add rulesVariants to the BattleStruct
Added skyBattle check in AllocateBattleResources

* Replaced B_FLAG_SKY_BATTLE checks with rulesVariants.skyBattle checks

* Fixed debug script

* Reverted include/config/battle.h

* Fixed spacing and placement of functions

* Fixed debug script omission
Fixed bug where Spikes did not set from Ceaseless Edge and Stone Axe

* Added FLAG_DISABLED_IN_SKY_BATTLE to Psychic Terrain

* Addressed DizzyEgg PR feedback

* Forgot a file in last commit

* Addressed feedback from DizzyEggg

* Address Lunos' PR feedback

* Update specials.inc

Added an empty line at the end of data/specials.inc

* Fixed spacing

* Apply suggestions from code review

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

* Updated skyBattleBanned and HandleBattleVariantEndParty to use correct names

* Removed STRICT_MOVES and STRICT_MECHANICS

* Fixed minor spacing issues with merge

* Merged in upcoming

* Implemented feedback from Jasper
5da6117d1b

---------

Co-authored-by: Eduardo Quezada D'Ottone <eduardo602002@gmail.com>
2023-11-26 16:59:44 +01:00
DizzyEggg
156aa59f18 start removing gActiveBattler in controller emitters 2023-08-29 15:21:31 +02:00
Eduardo Quezada D'Ottone
21867a6061
Merge branch 'master' into AI 2022-08-24 01:07:35 -04:00
Eduardo Quezada
afcc1178b2 Merge remote-tracking branch 'pret/master' into MergedBranchUltimate
# Conflicts:
#	data/battle_ai_scripts.s
#	data/battle_scripts_1.s
#	include/battle_controllers.h
#	include/battle_script_commands.h
#	include/battle_util.h
#	include/constants/battle_script_commands.h
#	include/constants/global.h
#	include/decompress.h
#	src/battle_anim_effects_1.c
#	src/battle_anim_normal.c
#	src/battle_anim_poison.c
#	src/battle_anim_water.c
#	src/battle_arena.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_safari.c
#	src/battle_controller_wally.c
#	src/battle_gfx_sfx_util.c
#	src/battle_interface.c
#	src/battle_main.c
#	src/battle_message.c
#	src/battle_script_commands.c
#	src/battle_util.c
#	src/berry.c
#	src/data/trainers.h
#	src/decompress.c
#	src/field_effect.c
#	src/hall_of_fame.c
#	src/overworld.c
#	src/pokeball.c
#	src/pokemon.c
#	src/pokemon_icon.c
#	src/pokemon_storage_system.c
#	src/scrcmd.c
2022-08-22 20:30:45 -04:00
DizzyEggg
327782646b Save party mons ai 2022-08-23 01:07:25 +02:00
Eduardo Quezada
7b3401ee27 Standarized use of star in pointer types 2022-07-29 10:17:58 -04:00
ghoulslash
035b2332af cache ai damage, effectiveness calcs 2022-01-13 11:28:27 -05:00
ultima-soul
7369f60c06 Merge branch 'battle_engine' of github.com:rh-hideout/pokeemerald-expansion into battle_engine_sync 2021-12-03 17:30:45 -08:00
ultima-soul
3ed51d6d91 Merge branch 'master' of github.com:pret/pokeemerald into battle_engine_sync 2021-11-21 10:40:26 -08:00
ghoulslash
a2b8f3f169 replace gBattleMons[x].ability w GetBattlerAbility 2021-10-31 17:19:30 -04:00
GriffinR
fc15b0d5f0 Add controller buffer constants, finish misc battle doc 2021-10-13 16:21:39 -04:00
GriffinR
31b501e7eb Start misc battle documentation 2021-10-08 16:39:46 -04:00
GriffinR
a66d7e1b43 Document some single-remaining symbols 2021-09-24 17:14:20 -04:00
ghoulslash
c3e28e9b1a merge with be 2021-05-23 12:22:52 -06:00
ultima-soul
14a0303e2f Merge branch 'master' of github.com:pret/pokeemerald into battle_engine_sync 2021-04-27 18:36:37 -07:00
GriffinR
9ea9ffde09 Add remaining multistring chooser constants 2021-04-03 11:49:06 -04:00
Evan
f3d975e239 merge with be 2021-02-12 08:59:55 -07:00
LOuroboros
fc04c6974b Edit->Blank Operations->Trim Trailing Space for the win 2021-02-01 17:05:49 -03:00
Evan
7988a1f41d Ai_TryOnAlly and reorganize files 2020-12-20 14:47:20 -07:00
Evan
37aeeae277 fix terrain bg on subsequent battle start 2020-12-05 20:25:03 -07:00
DizzyEggg
834b7b52d3 Merge with master 2020-02-08 09:38:29 +01:00
GriffinR
27c4329e45 Use friendship event constants 2020-02-04 12:16:15 -06:00
DizzyEggg
1d8cc9b741 Fix merge conflicts 2019-11-03 19:55:19 +01:00
GriffinR
e01ec84837 Document party_menu second pass 2019-10-31 03:25:56 -04:00
GriffinR
6db014cc32 Document party_menu first pass 2019-10-25 15:41:06 -04:00
DizzyEggg
bae5d2038f Update with master 2019-10-10 16:18:48 +02:00
PikalaxALT
306ce048ad Move gflib srcs and headers to gflib subdir 2019-09-08 21:07:54 -04:00
DizzyEggg
f8713f9c15 Merge with master 2019-04-06 20:43:13 +02:00
DizzyEggg
8751fafad1 Make it compile 2019-04-05 07:53:23 -05:00