* Upgrading the debug menu's 'Poison Party'
* Optimized the 'No Pokémon' check in Debug_EventScript_InflictStatus1
* Killed a pointless function call in Script_SetStatus1
* Added Frostbite support to ¡inflict status1'
* Add LGPE+ Premier Ball Bonus config
* Capitalization
* Premier Ball count in message + only give the amount of Premier Balls possible
* Review changes
* Updated B_TELEPORT_BEHAVIOR to match Premier Ball config
* Update src/shop.c
Co-authored-by: Bassoonian <iasperbassoonian@gmail.com>
---------
Co-authored-by: Bassoonian <iasperbassoonian@gmail.com>
* Moved existing sanitized trainer data functions to include/data.h
* Sanitized encounterMusic_gender
* Sanitized trainer class ID
* Sanitized trainer pic ID
* Sanitized trainer starting status
* Sanitized obtaining Trainer struct
* Sanitized trainer double battle flag
* Sanitized trainer party size
* Sanitized trainer mugshot data
* Sanitized trainer name
* Consolidated Dome Brain trainer data to the rest of the frontier data
* Sanitized trainer items
* Removed accidental test data
* Sanitized trainer party
* Sanitized trainer AI flags
* Final encapsulation bit
* Adds Tidy Up + minor Dragon Cheer follow up
* improve tidy up script
* Add IncreaseTidyUpScore function
* remove useless calls
* 2 small tests and a correction for IncreasyTidyUpScore
* Sets neutral nature and ability 0 as default in trainer control
* add config to generate a random ability
* minor correction
* move config to battle.h
* fixed compiling
In #4168b7d7709 a memset was added but this causes the issue #4200. The sizeof was done on the variable instead of the struct. This caused other variables in EWRAM to loose their value. I have no idea if this fix breaks what was intented to do in #4168.
Also fixed the issue reported in my comment. When you run out of balls gLastThrownBall has a value, but you enter the if statement because you have no more balls. There the next in line ball is set to display but if there are non there is nothing to display. Afterwards when you get a new ball, you do not enter the if statement to update the gBallToDisplay because the ball is in the bag and gLastThrownBall is still set to not 0. Then it's checked if the bag has gBallToDisplay which does not point to a ball and therefor nothing is shown. Now we only update gBallToDisplay if there is actually a ball to display.