26 Commits

Author SHA1 Message Date
PCG
d2425c1468
Move Relearners for TMs, Tutors and Egg moves (#8040)
Co-authored-by: khbsd <khb.dev@gmail.com>
Co-authored-by: psf <77138753+pkmnsnfrn@users.noreply.github.com>
2025-11-09 12:54:01 -08:00
Bassoonian
f7cbe4853b
Add type enum (#8054) 2025-10-27 16:41:22 +00:00
FosterProgramming
5b4403ddfe
Fix stats defined in tests being overwritteng by stat change (#8018)
Co-authored-by: Alex <93446519+AlexOn1ine@users.noreply.github.com>
2025-10-23 18:59:15 +02:00
cawtds
c64c276d77
Fixes shininess for givemon (#7847) 2025-10-07 23:16:48 +02:00
Eduardo Quezada
2c80b9124b
Fix Debug Give Pokémon (Complex) with duplicate moves (#7821) 2025-09-29 23:05:13 +02:00
AlexOn1ine
bd919e3219 11/08/25 Master to upcoming merge 2025-08-11 08:31:12 +02:00
Hedara
e8fefbcc75 Add bad egg check 2025-08-05 23:34:59 +02:00
Hedara
1cb053e8e7 Add test for BoxPokemon integrity 2025-08-05 23:34:59 +02:00
Nephrite
7c6cff1fb3
Get/SetMonData optimisation (#7313) 2025-07-28 11:42:28 +01:00
Hedara
51a5577f65 Merge branch 'master' into master-upcoming
Conflicts:
	src/battle_controller_safari.c
	src/data/moves_info.h
	src/graphics.c
2025-06-25 14:17:07 +02:00
Eduardo Quezada
8d81f60313
Fix tests failing with B_FRIENDSHIP_BOOST being TRUE (#7194)
Co-authored-by: hedara90 <90hedara@gmail.com>
2025-06-25 14:01:31 +02:00
Bassoonian
1a6ed20713
Add dedicated getter functions for Pokémon types and abilities (#7043) 2025-06-03 22:05:22 +02:00
Eduardo Quezada
d2a4b5ef84
Changed Tackle for Scratch in tests (#6730) 2025-04-30 17:18:52 -04:00
Eduardo Quezada
fc872b481e
Fix FORM_CHANGE_ITEM_HOLD bug manifested during givemon (#6702) 2025-04-27 15:27:21 +02:00
AlexOn1ine
d767211c4a helper function to get the species type based on personality 2025-03-31 14:49:40 +02:00
Eduardo Quezada
f6a86a65ef Merge branch '_RHH/master' into _RHH/upcoming 2025-01-19 10:32:57 -03:00
Bassoonian
199760a6d3
Add known failing learnset cap test (#6046) 2025-01-17 21:04:46 -05:00
Eduardo Quezada
21bc5cfd30
Debug menu and createmon additions/cleanup (#5994) 2025-01-11 10:07:47 +01:00
Eduardo Quezada
91c7bd9e53
Fixed givemon not respecting perfect IVs for species (#5873) 2024-12-26 21:22:45 +01:00
Alex
76eae8ed00
Decouple Poke Ball ids from item ids (#5560) 2024-10-28 18:03:15 +01:00
ghoulslash
353727a805
Add createmon Script Cmd, Support for 2v1Wild Battles (#4688)
* add createmon and setwilddoubleflag script cmds to support createing mons at given player or enemy slots and setting up 2v1 battles

* give givemon macro PARTY_SIZE for tests

* style fixes

* add createmon test

---------

Co-authored-by: ghoulslash <pokevoyager0@gmail.com>
2024-06-13 19:11:36 +02:00
Eduardo Quezada
0be643a517
Set TYPE_NONE as type 0 + other type data tweaks (#4462)
* Set TYPE_MYSTERY as type 0

* Remove redundant TYPE_NONE

* Moved Gen 1-3 type damage categories to gTypesInfo

* Set TYPE_NONE as 0 instead

* Grouped type info to a single file

* Fixed sTypeEffectivenessTable static name

* Adjusted MON_DATA_TERA_TYPE to account for shift in type IDs

* oops, missed the extern

* Moved Tera Type RGB values to gTypesInfo

* Fixed Tera Type test

* Added option test feature to set IVs

* Hidden Power type test

* Tera Type safeguard in givemon

* Removed isHiddenPowerType for a future PR that refactors Hidden Power

* Review changes
2024-06-01 07:38:22 +02:00
Bassoonian
c5552f53da
checkteratype setteratype (#4460) 2024-04-30 00:12:34 +02:00
Alex
ee3a577240
Fixes givemon moves not defaulting to none (#4377) 2024-04-11 20:34:11 +01:00
LOuroboros
916e4814bd
Implemented Custom/Complex/Expanded GiveMon scripting command (#3924)
* Introducing an expanded givemon

* Added debug features to check a Pokémon's EV and IV

* Added a parameter to set a custom mon's gender

* Added a debug feature to clear the party

* Defined the EV/IV getters in gSpecials

* Added Gigantamax Factor toggle to givecustommon

* Updated Gigantamax Factor label in givecustommon macro

* Added tera type parameter to givecustommon

Misc. changes:
-Added a few harmless comments to CreateCustomMon for consistency reasons.

* Cleaned up the code inside CreateCustomMon a bit

Also updated the values assigned to the parameters of ScriptGiveCustomMon
This is temporary though. I'll probably end up turning them into 2byte parameters so they can be filled when the scripting command is called by using variables once I solve the bigger problem that the scripting command is currently facing.

* Foolproofed the Poké Ball check in CreateCustomMon

* Assigned a default gender to givecustommon
This solved the nasty issue by which the command wasn't working properly if you didn't fill in each parameter when calling givecustommon in a script.

* Reinforced the gender checks at CreateCustomMon

* Re-reinforced the gender checks at CreateCustomMon

* Compressed givecustommon and added tests

-Made givecustommon skip unspecified parameters.
-Added scripting variables support for every parameter.
-Added tests.

* Updated the default values of some ScriptGiveCustomMon parameters

* Replaced vanilla's givemon with givecustommon

Misc. Changes:
-Renamed CreateCustomMon to ScriptGiveMonParameterized.
 -The truth is that the function was never limited to creating the skeleton of a Pokémon like the actual CreateMon functions do, so that label was never correct. The function was always an expanded ScriptGiveMon.
-Moved the core functions to src/script_pokemon_util.c which is where they actually belong.
-Updated ScriptGiveMonParameterized a little to incorporateb changes that were applied to the original ScriptGiveMon, namely, Synchronize ability and form change handling.
-Introduced a new ScriptGiveMon to replace the original one.

* Corrected givecustommon tests

* Fixed the default IV values for the new givemon

* Updated DebugAction_Party_ClearParty for consistency with the other debug functions

* Updated the text strings used by the Check EV/IV debug features

---------

Co-authored-by: Martin Griffin <martinrgriffin@gmail.com>
Co-authored-by: Alex <93446519+AlexOn1ine@users.noreply.github.com>
2024-02-08 09:11:13 +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