* Some jsonproc string utility functions
Adds stringContains, stringStartsWith and stringEndsWith for use in jsonproc.
* Time-based wild encounters
This adds some configs that allows users to define wild encounter groups on a map that are automatically cycled through depending on the time of day.
* Adds config to show chosen move and target of ingame partner, `#define B_SHOW_PARTNER_TARGET`, default `FALSE`
---------
Co-authored-by: Hedara <hedara90@gmail.com>
* Fix Slateport Battle Tent/Battle Factory
Stops the Battle Factory and Slateport Battle Tent from returning no Pokémon when player wants to swap their Pokémon.
* Fix player rental party being junk data after rest
Fixes#5280
* Consolidate checks into single method
Consolidates every gSpecialVar_0x8005 check into a singular method.
* EV Caps and EV Items
Introduces EV caps, inspired by level caps, with configurable options for various cap implementations. Additionally, modifies EV items to interact with these caps based on a configurable setting.
* EV Caps fixes
Changed the EV caps to be less redundant and work better overall.
* EV Caps Fix part 2
Set the items back to ItemUseOutOfBattle_Medicine, got rid of ItemUseOutOfBattle_EVItem and ItemUseCB_EVItem, and reverted CB2_ReturnToPartyMenuUsingItem to CB2_ReturnToPartyMenuUsingRareCandy
* EV Caps Fixes Part 3
Fixed being able to use EV items to go over 252 limit on single stats.
* Update src/ev_caps.c
Co-authored-by: Alex <93446519+AlexOn1ine@users.noreply.github.com>
---------
Co-authored-by: Alex <93446519+AlexOn1ine@users.noreply.github.com>
* Fix Instruct bypassing AtkCanceler + interaction with firstTurnOnly moves
* Fix Entry Hazards targeting the wrong side of the field if opponent fainted
* Remove unused BattleScript_AuroraVeilEnds and STRINGID_AURORAVEILENDS
* Alternative fix + Fix gBattlerTarget initially set to 2
* Fix Instruct animation
* Alternative anim fix
* Moved HandleInputChooseTarget and ShowEntireFieldTargets to non-static and added them as cases to ShouldHideTypeIcon
* Made ShouldHideTypeIcon easier to parse
* Made ShouldHideTypeIcon a for loop
* Fixed identation
* Made showTypesControllerFuncs a static const array per https://github.com/rh-hideout/pokeemerald-expansion/pull/5201\#discussion_r1730336265
* DoBattleIntro state documentation
* Removed unused state
* Update src/battle_main.c
Co-authored-by: Alex <93446519+AlexOn1ine@users.noreply.github.com>
* Fixed state jumps
* BattleStruct state uses enum
* Renamed state enums
---------
Co-authored-by: Alex <93446519+AlexOn1ine@users.noreply.github.com>
* Replaced all the gBitTable[X] usages with 1 << X, and cleaned up script output
* Fixed failed merge in online viewer
---------
Co-authored-by: Hedara <hedara90@gmail.com>
* Converted Match Call names and descriptions to COMPOUND_STRINGs
* Moved May/Brendan and Elite Four descriptions into pokenav_match_call_data.c
* Moved Steven, Brendan, and May's Match Call text to pokenav_match_call_data.c
* Cleaned up Steven's Match Call text
* Added PokeNav option text to match_call_gfx
* Moved PokeNav page descriptions to menu_handler_gfx
* Moved help bar texts to pokenav_main_menu.c
* Moved various PokeNav strings out of strings.c and into their relevant files
* Removed unused PokeNav strings
* Fixed followers breaking for species Ids above 1535
* Added reminder to increase follower species bits if needed in the future
---------
Co-authored-by: Hedara <hedara90@gmail.com>
* Fixed Ice Face, implemented tests
* Fixed agbcc and bad battle mon looping
* Fixed the ShouldChangeFormInWeather function again
* Cleaned up End of Turn weather form changes, simplified Ice Face
---------
Co-authored-by: Hedara <hedara90@gmail.com>
* new move anims + fickle beam rework
* more fickle beam changes
* removed the true for consistency
* ficklebeamboosted gets cleared now
* mortal spin and thunderclap changes
* minor mortal spin pal change
* removed hex numbers and made hard press quicker
* 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>