mirror of
https://github.com/Ninjdai1/pokeemerald.git
synced 2025-01-27 13:53:52 +01:00
Remove all the ifdefs for BATTLE_ENGINE, ITEM_EXPANSION, and POKEMON_EXPANSION
This commit is contained in:
parent
6b35dd5774
commit
49da2ee53f
@ -3,126 +3,126 @@
|
||||
|
||||
#include "constants/expansion_branches.h"
|
||||
|
||||
// Species with peculiar battle effects.
|
||||
#ifndef POKEMON_EXPANSION
|
||||
#define SPECIES_DIALGA 0
|
||||
#define SPECIES_PALKIA 0
|
||||
#define SPECIES_GIRATINA 0
|
||||
#define SPECIES_CHERRIM 0
|
||||
#define SPECIES_ARCEUS 0
|
||||
#define SPECIES_SILVALLY 0
|
||||
#define SPECIES_GENESECT 0
|
||||
#define SPECIES_AEGISLASH 0
|
||||
#define SPECIES_AEGISLASH_BLADE 10000
|
||||
#define SPECIES_MIMIKYU 0
|
||||
#define SPECIES_MIMIKYU_BUSTED 10001
|
||||
#define SPECIES_DARMANITAN 0
|
||||
#define SPECIES_DARMANITAN_ZEN_MODE 10002
|
||||
#define SPECIES_MINIOR_CORE_RED 0
|
||||
#define SPECIES_MINIOR 10003
|
||||
#define SPECIES_MINIOR_CORE_BLUE 0
|
||||
#define SPECIES_MINIOR_METEOR_BLUE 10004
|
||||
#define SPECIES_MINIOR_CORE_GREEN 0
|
||||
#define SPECIES_MINIOR_METEOR_GREEN 10005
|
||||
#define SPECIES_MINIOR_CORE_INDIGO 0
|
||||
#define SPECIES_MINIOR_METEOR_INDIGO 10006
|
||||
#define SPECIES_MINIOR_CORE_ORANGE 0
|
||||
#define SPECIES_MINIOR_METEOR_ORANGE 10007
|
||||
#define SPECIES_MINIOR_CORE_VIOLET 0
|
||||
#define SPECIES_MINIOR_METEOR_VIOLET 10008
|
||||
#define SPECIES_MINIOR_CORE_YELLOW 0
|
||||
#define SPECIES_MINIOR_METEOR_YELLOW 10009
|
||||
#define SPECIES_WISHIWASHI 0
|
||||
#define SPECIES_WISHIWASHI_SCHOOL 10010
|
||||
#define SPECIES_ZYGARDE 0 // 50%
|
||||
#define SPECIES_ZYGARDE_10 10011 // 10 %
|
||||
#define SPECIES_ZYGARDE_COMPLETE 10012 // 100 %
|
||||
#define SPECIES_BURMY 0
|
||||
#define SPECIES_BURMY_SANDY_CLOAK 10013
|
||||
#define SPECIES_BURMY_TRASH_CLOAK 10014
|
||||
#define SPECIES_CRAMORANT 0
|
||||
#define SPECIES_CRAMORANT_GORGING 10015
|
||||
#define SPECIES_CRAMORANT_GULPING 10016
|
||||
#define SPECIES_GRENINJA_BATTLE_BOND 0
|
||||
#define SPECIES_GRENINJA_ASH 10017
|
||||
#define SPECIES_HOOPA 0
|
||||
#define SPECIES_HOOPA_UNBOUND 10018
|
||||
#define SPECIES_MELOETTA 0
|
||||
#define SPECIES_MELOETTA_PIROUETTE 10019
|
||||
#define SPECIES_MORPEKO 0
|
||||
#define SPECIES_MORPEKO_HANGRY 10020
|
||||
#define SPECIES_SIRFETCHD 10021
|
||||
#define SPECIES_DARMANITAN_GALARIAN 0
|
||||
#define SPECIES_DARMANITAN_ZEN_MODE_GALARIAN 10022
|
||||
#define SPECIES_HEATMOR 0
|
||||
#define SPECIES_DURANT 0
|
||||
#define SPECIES_CARBINK 0
|
||||
#define SPECIES_MAREANIE 0
|
||||
#endif
|
||||
// // Species with peculiar battle effects.
|
||||
// #ifndef POKEMON_EXPANSION
|
||||
// #define SPECIES_DIALGA 0
|
||||
// #define SPECIES_PALKIA 0
|
||||
// #define SPECIES_GIRATINA 0
|
||||
// #define SPECIES_CHERRIM 0
|
||||
// #define SPECIES_ARCEUS 0
|
||||
// #define SPECIES_SILVALLY 0
|
||||
// #define SPECIES_GENESECT 0
|
||||
// #define SPECIES_AEGISLASH 0
|
||||
// #define SPECIES_AEGISLASH_BLADE 10000
|
||||
// #define SPECIES_MIMIKYU 0
|
||||
// #define SPECIES_MIMIKYU_BUSTED 10001
|
||||
// #define SPECIES_DARMANITAN 0
|
||||
// #define SPECIES_DARMANITAN_ZEN_MODE 10002
|
||||
// #define SPECIES_MINIOR_CORE_RED 0
|
||||
// #define SPECIES_MINIOR 10003
|
||||
// #define SPECIES_MINIOR_CORE_BLUE 0
|
||||
// #define SPECIES_MINIOR_METEOR_BLUE 10004
|
||||
// #define SPECIES_MINIOR_CORE_GREEN 0
|
||||
// #define SPECIES_MINIOR_METEOR_GREEN 10005
|
||||
// #define SPECIES_MINIOR_CORE_INDIGO 0
|
||||
// #define SPECIES_MINIOR_METEOR_INDIGO 10006
|
||||
// #define SPECIES_MINIOR_CORE_ORANGE 0
|
||||
// #define SPECIES_MINIOR_METEOR_ORANGE 10007
|
||||
// #define SPECIES_MINIOR_CORE_VIOLET 0
|
||||
// #define SPECIES_MINIOR_METEOR_VIOLET 10008
|
||||
// #define SPECIES_MINIOR_CORE_YELLOW 0
|
||||
// #define SPECIES_MINIOR_METEOR_YELLOW 10009
|
||||
// #define SPECIES_WISHIWASHI 0
|
||||
// #define SPECIES_WISHIWASHI_SCHOOL 10010
|
||||
// #define SPECIES_ZYGARDE 0 // 50%
|
||||
// #define SPECIES_ZYGARDE_10 10011 // 10 %
|
||||
// #define SPECIES_ZYGARDE_COMPLETE 10012 // 100 %
|
||||
// #define SPECIES_BURMY 0
|
||||
// #define SPECIES_BURMY_SANDY_CLOAK 10013
|
||||
// #define SPECIES_BURMY_TRASH_CLOAK 10014
|
||||
// #define SPECIES_CRAMORANT 0
|
||||
// #define SPECIES_CRAMORANT_GORGING 10015
|
||||
// #define SPECIES_CRAMORANT_GULPING 10016
|
||||
// #define SPECIES_GRENINJA_BATTLE_BOND 0
|
||||
// #define SPECIES_GRENINJA_ASH 10017
|
||||
// #define SPECIES_HOOPA 0
|
||||
// #define SPECIES_HOOPA_UNBOUND 10018
|
||||
// #define SPECIES_MELOETTA 0
|
||||
// #define SPECIES_MELOETTA_PIROUETTE 10019
|
||||
// #define SPECIES_MORPEKO 0
|
||||
// #define SPECIES_MORPEKO_HANGRY 10020
|
||||
// #define SPECIES_SIRFETCHD 10021
|
||||
// #define SPECIES_DARMANITAN_GALARIAN 0
|
||||
// #define SPECIES_DARMANITAN_ZEN_MODE_GALARIAN 10022
|
||||
// #define SPECIES_HEATMOR 0
|
||||
// #define SPECIES_DURANT 0
|
||||
// #define SPECIES_CARBINK 0
|
||||
// #define SPECIES_MAREANIE 0
|
||||
// #endif
|
||||
|
||||
// Items with peculiar battle effects.
|
||||
#ifndef ITEM_EXPANSION
|
||||
#define ITEM_CHOPLE_BERRY 177
|
||||
#define ITEM_KEBIA_BERRY 178
|
||||
#define ITEM_SHUCA_BERRY 179
|
||||
#define ITEM_COBA_BERRY 180
|
||||
#define ITEM_PAYAPA_BERRY 181
|
||||
#define ITEM_TANGA_BERRY 182
|
||||
#define ITEM_CHARTI_BERRY 183
|
||||
#define ITEM_KASIB_BERRY 184
|
||||
#define ITEM_HABAN_BERRY 185
|
||||
#define ITEM_COLBUR_BERRY 186
|
||||
#define ITEM_BABIRI_BERRY 187
|
||||
#define ITEM_CHILAN_BERRY 188
|
||||
#define ITEM_ROSELI_BERRY 189
|
||||
#define ITEM_MICLE_BERRY 197
|
||||
#define ITEM_CUSTAP_BERRY 199
|
||||
#define ITEM_JABOCA_BERRY 200
|
||||
#define ITEM_ROWAP_BERRY 201
|
||||
#define ITEM_KEE_BERRY 202
|
||||
#define ITEM_MARANGA_BERRY 203
|
||||
#define ITEM_OCCA_BERRY 204
|
||||
#define ITEM_PASSHO_BERRY 205
|
||||
#define ITEM_WACAN_BERRY 206
|
||||
#define ITEM_RINDO_BERRY 207
|
||||
#define ITEM_YACHE_BERRY 208
|
||||
#define ITEM_GRISEOUS_ORB 369
|
||||
// z crystals
|
||||
#define ITEM_NORMALIUM_Z 568
|
||||
#define ITEM_FIGHTINIUM_Z 569
|
||||
#define ITEM_FLYINIUM_Z 570
|
||||
#define ITEM_POISONIUM_Z 571
|
||||
#define ITEM_GROUNDIUM_Z 572
|
||||
#define ITEM_ROCKIUM_Z 573
|
||||
#define ITEM_BUGINIUM_Z 574
|
||||
#define ITEM_GHOSTIUM_Z 575
|
||||
#define ITEM_STEELIUM_Z 576
|
||||
#define ITEM_FIRIUM_Z 577
|
||||
#define ITEM_WATERIUM_Z 578
|
||||
#define ITEM_GRASSIUM_Z 579
|
||||
#define ITEM_ELECTRIUM_Z 580
|
||||
#define ITEM_PSYCHIUM_Z 581
|
||||
#define ITEM_ICIUM_Z 582
|
||||
#define ITEM_DRAGONIUM_Z 583
|
||||
#define ITEM_DARKINIUM_Z 584
|
||||
#define ITEM_FAIRIUM_Z 585
|
||||
#define ITEM_ALORAICHIUM_Z 586
|
||||
#define ITEM_DECIDIUM_Z 587
|
||||
#define ITEM_EEVIUM_Z 588
|
||||
#define ITEM_INCINIUM_Z 589
|
||||
#define ITEM_KOMMONIUM_Z 590
|
||||
#define ITEM_LUNALIUM_Z 591
|
||||
#define ITEM_LYCANIUM_Z 592
|
||||
#define ITEM_MARSHADIUM_Z 593
|
||||
#define ITEM_MEWNIUM_Z 594
|
||||
#define ITEM_MIMIKIUM_Z 595
|
||||
#define ITEM_PIKANIUM_Z 596
|
||||
#define ITEM_PIKASHUNIUM_Z 597
|
||||
#define ITEM_PRIMARIUM_Z 598
|
||||
#define ITEM_SNORLIUM_Z 599
|
||||
#define ITEM_SOLGANIUM_Z 600
|
||||
#define ITEM_TAPUNIUM_Z 601
|
||||
#endif
|
||||
// // Items with peculiar battle effects.
|
||||
// #ifndef ITEM_EXPANSION
|
||||
// #define ITEM_CHOPLE_BERRY 177
|
||||
// #define ITEM_KEBIA_BERRY 178
|
||||
// #define ITEM_SHUCA_BERRY 179
|
||||
// #define ITEM_COBA_BERRY 180
|
||||
// #define ITEM_PAYAPA_BERRY 181
|
||||
// #define ITEM_TANGA_BERRY 182
|
||||
// #define ITEM_CHARTI_BERRY 183
|
||||
// #define ITEM_KASIB_BERRY 184
|
||||
// #define ITEM_HABAN_BERRY 185
|
||||
// #define ITEM_COLBUR_BERRY 186
|
||||
// #define ITEM_BABIRI_BERRY 187
|
||||
// #define ITEM_CHILAN_BERRY 188
|
||||
// #define ITEM_ROSELI_BERRY 189
|
||||
// #define ITEM_MICLE_BERRY 197
|
||||
// #define ITEM_CUSTAP_BERRY 199
|
||||
// #define ITEM_JABOCA_BERRY 200
|
||||
// #define ITEM_ROWAP_BERRY 201
|
||||
// #define ITEM_KEE_BERRY 202
|
||||
// #define ITEM_MARANGA_BERRY 203
|
||||
// #define ITEM_OCCA_BERRY 204
|
||||
// #define ITEM_PASSHO_BERRY 205
|
||||
// #define ITEM_WACAN_BERRY 206
|
||||
// #define ITEM_RINDO_BERRY 207
|
||||
// #define ITEM_YACHE_BERRY 208
|
||||
// #define ITEM_GRISEOUS_ORB 369
|
||||
// // z crystals
|
||||
// #define ITEM_NORMALIUM_Z 568
|
||||
// #define ITEM_FIGHTINIUM_Z 569
|
||||
// #define ITEM_FLYINIUM_Z 570
|
||||
// #define ITEM_POISONIUM_Z 571
|
||||
// #define ITEM_GROUNDIUM_Z 572
|
||||
// #define ITEM_ROCKIUM_Z 573
|
||||
// #define ITEM_BUGINIUM_Z 574
|
||||
// #define ITEM_GHOSTIUM_Z 575
|
||||
// #define ITEM_STEELIUM_Z 576
|
||||
// #define ITEM_FIRIUM_Z 577
|
||||
// #define ITEM_WATERIUM_Z 578
|
||||
// #define ITEM_GRASSIUM_Z 579
|
||||
// #define ITEM_ELECTRIUM_Z 580
|
||||
// #define ITEM_PSYCHIUM_Z 581
|
||||
// #define ITEM_ICIUM_Z 582
|
||||
// #define ITEM_DRAGONIUM_Z 583
|
||||
// #define ITEM_DARKINIUM_Z 584
|
||||
// #define ITEM_FAIRIUM_Z 585
|
||||
// #define ITEM_ALORAICHIUM_Z 586
|
||||
// #define ITEM_DECIDIUM_Z 587
|
||||
// #define ITEM_EEVIUM_Z 588
|
||||
// #define ITEM_INCINIUM_Z 589
|
||||
// #define ITEM_KOMMONIUM_Z 590
|
||||
// #define ITEM_LUNALIUM_Z 591
|
||||
// #define ITEM_LYCANIUM_Z 592
|
||||
// #define ITEM_MARSHADIUM_Z 593
|
||||
// #define ITEM_MEWNIUM_Z 594
|
||||
// #define ITEM_MIMIKIUM_Z 595
|
||||
// #define ITEM_PIKANIUM_Z 596
|
||||
// #define ITEM_PIKASHUNIUM_Z 597
|
||||
// #define ITEM_PRIMARIUM_Z 598
|
||||
// #define ITEM_SNORLIUM_Z 599
|
||||
// #define ITEM_SOLGANIUM_Z 600
|
||||
// #define ITEM_TAPUNIUM_Z 601
|
||||
// #endif
|
||||
|
||||
#ifndef GEN_3
|
||||
#define GEN_3 0
|
||||
|
@ -2,22 +2,10 @@
|
||||
#define GUARD_CONSTANTS_ITEM_EFFECTS_H
|
||||
|
||||
// field 0 masks
|
||||
#ifndef ITEM_EXPANSION
|
||||
#define ITEM0_X_ATTACK 0x0F
|
||||
#endif
|
||||
#define ITEM0_DIRE_HIT 0x30 // Works the same way as the move Focus Energy.
|
||||
#define ITEM0_SACRED_ASH 0x40
|
||||
#define ITEM0_INFATUATION 0x80
|
||||
|
||||
#ifndef ITEM_EXPANSION
|
||||
// field 1 masks
|
||||
#define ITEM1_X_SPEED 0x0F
|
||||
#define ITEM1_X_DEFEND 0xF0
|
||||
|
||||
// field 2 masks
|
||||
#define ITEM2_X_SPATK 0x0F
|
||||
#define ITEM2_X_ACCURACY 0xF0
|
||||
#else
|
||||
// new field 1 masks
|
||||
#define ITEM1_X_ATTACK 0x1
|
||||
#define ITEM1_X_DEFENSE 0x2
|
||||
@ -25,7 +13,6 @@
|
||||
#define ITEM1_X_SPATK 0x8
|
||||
#define ITEM1_X_SPDEF 0x10
|
||||
#define ITEM1_X_ACCURACY 0x20
|
||||
#endif
|
||||
|
||||
// field 3 masks
|
||||
#define ITEM3_CONFUSION 0x1
|
||||
|
@ -23,353 +23,353 @@
|
||||
|
||||
#define P_ENABLE_DEBUG TRUE // Enables a debug menu for pokemon sprites and icons, accessed by pressing SELECT in the summary screen.
|
||||
|
||||
#ifndef ITEM_EXPANSION
|
||||
//Item Definitions for gEvolutionTable
|
||||
// #ifndef ITEM_EXPANSION
|
||||
// //Item Definitions for gEvolutionTable
|
||||
|
||||
//EVO_MEGA_EVOLUTION
|
||||
#define ITEM_VENUSAURITE 10001
|
||||
#define ITEM_CHARIZARDITE_X 10002
|
||||
#define ITEM_CHARIZARDITE_Y 10003
|
||||
#define ITEM_BLASTOISINITE 10004
|
||||
#define ITEM_BEEDRILLITE 10005
|
||||
#define ITEM_PIDGEOTITE 10006
|
||||
#define ITEM_ALAKAZITE 10007
|
||||
#define ITEM_SLOWBRONITE 10008
|
||||
#define ITEM_GENGARITE 10009
|
||||
#define ITEM_KANGASKHANITE 10010
|
||||
#define ITEM_PINSIRITE 10011
|
||||
#define ITEM_GYARADOSITE 10012
|
||||
#define ITEM_AERODACTYLITE 10013
|
||||
#define ITEM_MEWTWONITE_X 10014
|
||||
#define ITEM_MEWTWONITE_Y 10015
|
||||
#define ITEM_AMPHAROSITE 10016
|
||||
#define ITEM_STEELIXITE 10017
|
||||
#define ITEM_SCIZORITE 10018
|
||||
#define ITEM_HERACRONITE 10019
|
||||
#define ITEM_HOUNDOOMINITE 10020
|
||||
#define ITEM_TYRANITARITE 10021
|
||||
#define ITEM_SCEPTILITE 10022
|
||||
#define ITEM_BLAZIKENITE 10023
|
||||
#define ITEM_SWAMPERTITE 10024
|
||||
#define ITEM_SABLENITE 10025
|
||||
#define ITEM_SHARPEDONITE 10026
|
||||
#define ITEM_MANECTITE 10027
|
||||
#define ITEM_CAMERUPTITE 10028
|
||||
#define ITEM_GLALITITE 10029
|
||||
#define ITEM_MAWILITE 10030
|
||||
#define ITEM_MEDICHAMITE 10031
|
||||
#define ITEM_ALTARIANITE 10032
|
||||
#define ITEM_ABSOLITE 10033
|
||||
#define ITEM_BANETTITE 10034
|
||||
#define ITEM_AGGRONITE 10035
|
||||
#define ITEM_GARDEVOIRITE 10036
|
||||
#define ITEM_SALAMENCITE 10037
|
||||
#define ITEM_METAGROSSITE 10038
|
||||
#define ITEM_LATIASITE 10039
|
||||
#define ITEM_LATIOSITE 10040
|
||||
#define ITEM_LOPUNNITE 10041
|
||||
#define ITEM_GARCHOMPITE 10042
|
||||
#define ITEM_LUCARIONITE 10043
|
||||
#define ITEM_ABOMASITE 10044
|
||||
#define ITEM_GALLADITE 10045
|
||||
#define ITEM_AUDINITE 10046
|
||||
#define ITEM_DIANCITE 10047
|
||||
// //EVO_MEGA_EVOLUTION
|
||||
// #define ITEM_VENUSAURITE 10001
|
||||
// #define ITEM_CHARIZARDITE_X 10002
|
||||
// #define ITEM_CHARIZARDITE_Y 10003
|
||||
// #define ITEM_BLASTOISINITE 10004
|
||||
// #define ITEM_BEEDRILLITE 10005
|
||||
// #define ITEM_PIDGEOTITE 10006
|
||||
// #define ITEM_ALAKAZITE 10007
|
||||
// #define ITEM_SLOWBRONITE 10008
|
||||
// #define ITEM_GENGARITE 10009
|
||||
// #define ITEM_KANGASKHANITE 10010
|
||||
// #define ITEM_PINSIRITE 10011
|
||||
// #define ITEM_GYARADOSITE 10012
|
||||
// #define ITEM_AERODACTYLITE 10013
|
||||
// #define ITEM_MEWTWONITE_X 10014
|
||||
// #define ITEM_MEWTWONITE_Y 10015
|
||||
// #define ITEM_AMPHAROSITE 10016
|
||||
// #define ITEM_STEELIXITE 10017
|
||||
// #define ITEM_SCIZORITE 10018
|
||||
// #define ITEM_HERACRONITE 10019
|
||||
// #define ITEM_HOUNDOOMINITE 10020
|
||||
// #define ITEM_TYRANITARITE 10021
|
||||
// #define ITEM_SCEPTILITE 10022
|
||||
// #define ITEM_BLAZIKENITE 10023
|
||||
// #define ITEM_SWAMPERTITE 10024
|
||||
// #define ITEM_SABLENITE 10025
|
||||
// #define ITEM_SHARPEDONITE 10026
|
||||
// #define ITEM_MANECTITE 10027
|
||||
// #define ITEM_CAMERUPTITE 10028
|
||||
// #define ITEM_GLALITITE 10029
|
||||
// #define ITEM_MAWILITE 10030
|
||||
// #define ITEM_MEDICHAMITE 10031
|
||||
// #define ITEM_ALTARIANITE 10032
|
||||
// #define ITEM_ABSOLITE 10033
|
||||
// #define ITEM_BANETTITE 10034
|
||||
// #define ITEM_AGGRONITE 10035
|
||||
// #define ITEM_GARDEVOIRITE 10036
|
||||
// #define ITEM_SALAMENCITE 10037
|
||||
// #define ITEM_METAGROSSITE 10038
|
||||
// #define ITEM_LATIASITE 10039
|
||||
// #define ITEM_LATIOSITE 10040
|
||||
// #define ITEM_LOPUNNITE 10041
|
||||
// #define ITEM_GARCHOMPITE 10042
|
||||
// #define ITEM_LUCARIONITE 10043
|
||||
// #define ITEM_ABOMASITE 10044
|
||||
// #define ITEM_GALLADITE 10045
|
||||
// #define ITEM_AUDINITE 10046
|
||||
// #define ITEM_DIANCITE 10047
|
||||
|
||||
//EVO_TRADE_ITEM
|
||||
#define ITEM_PROTECTOR 10048
|
||||
#define ITEM_ELECTIRIZER 10049
|
||||
#define ITEM_MAGMARIZER 10050
|
||||
#define ITEM_DUBIOUS_DISC 10051
|
||||
#define ITEM_PRISM_SCALE 10052
|
||||
#define ITEM_REAPER_CLOTH 10053
|
||||
#define ITEM_SACHET 10054
|
||||
#define ITEM_WHIPPED_DREAM 10055
|
||||
// //EVO_TRADE_ITEM
|
||||
// #define ITEM_PROTECTOR 10048
|
||||
// #define ITEM_ELECTIRIZER 10049
|
||||
// #define ITEM_MAGMARIZER 10050
|
||||
// #define ITEM_DUBIOUS_DISC 10051
|
||||
// #define ITEM_PRISM_SCALE 10052
|
||||
// #define ITEM_REAPER_CLOTH 10053
|
||||
// #define ITEM_SACHET 10054
|
||||
// #define ITEM_WHIPPED_DREAM 10055
|
||||
|
||||
//EVO_ITEM
|
||||
#define ITEM_ICE_STONE 10056
|
||||
#define ITEM_SHINY_STONE 10057
|
||||
#define ITEM_DUSK_STONE 10058
|
||||
#define ITEM_DAWN_STONE 10059
|
||||
#define ITEM_TART_APPLE 10060
|
||||
#define ITEM_SWEET_APPLE 10061
|
||||
#define ITEM_CRACKED_POT 10062
|
||||
#define ITEM_GALARICA_CUFF 10063
|
||||
#define ITEM_GALARICA_WREATH 10064
|
||||
#define ITEM_CHIPPED_POT 10065
|
||||
// //EVO_ITEM
|
||||
// #define ITEM_ICE_STONE 10056
|
||||
// #define ITEM_SHINY_STONE 10057
|
||||
// #define ITEM_DUSK_STONE 10058
|
||||
// #define ITEM_DAWN_STONE 10059
|
||||
// #define ITEM_TART_APPLE 10060
|
||||
// #define ITEM_SWEET_APPLE 10061
|
||||
// #define ITEM_CRACKED_POT 10062
|
||||
// #define ITEM_GALARICA_CUFF 10063
|
||||
// #define ITEM_GALARICA_WREATH 10064
|
||||
// #define ITEM_CHIPPED_POT 10065
|
||||
|
||||
//EVO_ITEM_HOLD
|
||||
#define ITEM_RAZOR_FANG 10066
|
||||
#define ITEM_RAZOR_CLAW 10067
|
||||
#define ITEM_OVAL_STONE 10068
|
||||
// //EVO_ITEM_HOLD
|
||||
// #define ITEM_RAZOR_FANG 10066
|
||||
// #define ITEM_RAZOR_CLAW 10067
|
||||
// #define ITEM_OVAL_STONE 10068
|
||||
|
||||
//FORM_ITEM_HOLD
|
||||
#define ITEM_GRISEOUS_ORB 10069
|
||||
#define ITEM_DRACO_PLATE 10070
|
||||
#define ITEM_DREAD_PLATE 10071
|
||||
#define ITEM_EARTH_PLATE 10072
|
||||
#define ITEM_FIST_PLATE 10073
|
||||
#define ITEM_FLAME_PLATE 10074
|
||||
#define ITEM_ICICLE_PLATE 10075
|
||||
#define ITEM_INSECT_PLATE 10076
|
||||
#define ITEM_IRON_PLATE 10077
|
||||
#define ITEM_MEADOW_PLATE 10078
|
||||
#define ITEM_MIND_PLATE 10079
|
||||
#define ITEM_PIXIE_PLATE 10080
|
||||
#define ITEM_SKY_PLATE 10081
|
||||
#define ITEM_SPLASH_PLATE 10082
|
||||
#define ITEM_SPOOKY_PLATE 10083
|
||||
#define ITEM_STONE_PLATE 10084
|
||||
#define ITEM_TOXIC_PLATE 10085
|
||||
#define ITEM_ZAP_PLATE 10086
|
||||
#define ITEM_FIGHTINIUM_Z 10087
|
||||
#define ITEM_FLYINIUM_Z 10088
|
||||
#define ITEM_POISONIUM_Z 10089
|
||||
#define ITEM_GROUNDIUM_Z 10090
|
||||
#define ITEM_ROCKIUM_Z 10091
|
||||
#define ITEM_BUGINIUM_Z 10092
|
||||
#define ITEM_GHOSTIUM_Z 10093
|
||||
#define ITEM_STEELIUM_Z 10094
|
||||
#define ITEM_FIRIUM_Z 10095
|
||||
#define ITEM_WATERIUM_Z 10096
|
||||
#define ITEM_GRASSIUM_Z 10097
|
||||
#define ITEM_ELECTRIUM_Z 10098
|
||||
#define ITEM_PSYCHIUM_Z 10099
|
||||
#define ITEM_ICIUM_Z 10100
|
||||
#define ITEM_DRAGONIUM_Z 10101
|
||||
#define ITEM_DARKINIUM_Z 10102
|
||||
#define ITEM_FAIRIUM_Z 10103
|
||||
#define ITEM_DOUSE_DRIVE 10104
|
||||
#define ITEM_SHOCK_DRIVE 10105
|
||||
#define ITEM_BURN_DRIVE 10106
|
||||
#define ITEM_CHILL_DRIVE 10107
|
||||
#define ITEM_BUG_MEMORY 10108
|
||||
#define ITEM_DARK_MEMORY 10109
|
||||
#define ITEM_DRAGON_MEMORY 10110
|
||||
#define ITEM_ELECTRIC_MEMORY 10111
|
||||
#define ITEM_FAIRY_MEMORY 10112
|
||||
#define ITEM_FIGHTING_MEMORY 10113
|
||||
#define ITEM_FIRE_MEMORY 10114
|
||||
#define ITEM_FLYING_MEMORY 10115
|
||||
#define ITEM_GHOST_MEMORY 10116
|
||||
#define ITEM_GRASS_MEMORY 10117
|
||||
#define ITEM_GROUND_MEMORY 10118
|
||||
#define ITEM_ICE_MEMORY 10119
|
||||
#define ITEM_POISON_MEMORY 10120
|
||||
#define ITEM_PSYCHIC_MEMORY 10121
|
||||
#define ITEM_ROCK_MEMORY 10122
|
||||
#define ITEM_STEEL_MEMORY 10123
|
||||
#define ITEM_WATER_MEMORY 10124
|
||||
// //FORM_ITEM_HOLD
|
||||
// #define ITEM_GRISEOUS_ORB 10069
|
||||
// #define ITEM_DRACO_PLATE 10070
|
||||
// #define ITEM_DREAD_PLATE 10071
|
||||
// #define ITEM_EARTH_PLATE 10072
|
||||
// #define ITEM_FIST_PLATE 10073
|
||||
// #define ITEM_FLAME_PLATE 10074
|
||||
// #define ITEM_ICICLE_PLATE 10075
|
||||
// #define ITEM_INSECT_PLATE 10076
|
||||
// #define ITEM_IRON_PLATE 10077
|
||||
// #define ITEM_MEADOW_PLATE 10078
|
||||
// #define ITEM_MIND_PLATE 10079
|
||||
// #define ITEM_PIXIE_PLATE 10080
|
||||
// #define ITEM_SKY_PLATE 10081
|
||||
// #define ITEM_SPLASH_PLATE 10082
|
||||
// #define ITEM_SPOOKY_PLATE 10083
|
||||
// #define ITEM_STONE_PLATE 10084
|
||||
// #define ITEM_TOXIC_PLATE 10085
|
||||
// #define ITEM_ZAP_PLATE 10086
|
||||
// #define ITEM_FIGHTINIUM_Z 10087
|
||||
// #define ITEM_FLYINIUM_Z 10088
|
||||
// #define ITEM_POISONIUM_Z 10089
|
||||
// #define ITEM_GROUNDIUM_Z 10090
|
||||
// #define ITEM_ROCKIUM_Z 10091
|
||||
// #define ITEM_BUGINIUM_Z 10092
|
||||
// #define ITEM_GHOSTIUM_Z 10093
|
||||
// #define ITEM_STEELIUM_Z 10094
|
||||
// #define ITEM_FIRIUM_Z 10095
|
||||
// #define ITEM_WATERIUM_Z 10096
|
||||
// #define ITEM_GRASSIUM_Z 10097
|
||||
// #define ITEM_ELECTRIUM_Z 10098
|
||||
// #define ITEM_PSYCHIUM_Z 10099
|
||||
// #define ITEM_ICIUM_Z 10100
|
||||
// #define ITEM_DRAGONIUM_Z 10101
|
||||
// #define ITEM_DARKINIUM_Z 10102
|
||||
// #define ITEM_FAIRIUM_Z 10103
|
||||
// #define ITEM_DOUSE_DRIVE 10104
|
||||
// #define ITEM_SHOCK_DRIVE 10105
|
||||
// #define ITEM_BURN_DRIVE 10106
|
||||
// #define ITEM_CHILL_DRIVE 10107
|
||||
// #define ITEM_BUG_MEMORY 10108
|
||||
// #define ITEM_DARK_MEMORY 10109
|
||||
// #define ITEM_DRAGON_MEMORY 10110
|
||||
// #define ITEM_ELECTRIC_MEMORY 10111
|
||||
// #define ITEM_FAIRY_MEMORY 10112
|
||||
// #define ITEM_FIGHTING_MEMORY 10113
|
||||
// #define ITEM_FIRE_MEMORY 10114
|
||||
// #define ITEM_FLYING_MEMORY 10115
|
||||
// #define ITEM_GHOST_MEMORY 10116
|
||||
// #define ITEM_GRASS_MEMORY 10117
|
||||
// #define ITEM_GROUND_MEMORY 10118
|
||||
// #define ITEM_ICE_MEMORY 10119
|
||||
// #define ITEM_POISON_MEMORY 10120
|
||||
// #define ITEM_PSYCHIC_MEMORY 10121
|
||||
// #define ITEM_ROCK_MEMORY 10122
|
||||
// #define ITEM_STEEL_MEMORY 10123
|
||||
// #define ITEM_WATER_MEMORY 10124
|
||||
|
||||
//FORM_ITEM_USE
|
||||
#define ITEM_GRACIDEA 10125
|
||||
#define ITEM_REVEAL_GLASS 10126
|
||||
#define ITEM_PRISON_BOTTLE 10127
|
||||
#define ITEM_RED_NECTAR 10128
|
||||
#define ITEM_YELLOW_NECTAR 10129
|
||||
#define ITEM_PINK_NECTAR 10130
|
||||
#define ITEM_PURPLE_NECTAR 10131
|
||||
// //FORM_ITEM_USE
|
||||
// #define ITEM_GRACIDEA 10125
|
||||
// #define ITEM_REVEAL_GLASS 10126
|
||||
// #define ITEM_PRISON_BOTTLE 10127
|
||||
// #define ITEM_RED_NECTAR 10128
|
||||
// #define ITEM_YELLOW_NECTAR 10129
|
||||
// #define ITEM_PINK_NECTAR 10130
|
||||
// #define ITEM_PURPLE_NECTAR 10131
|
||||
|
||||
// Held Items
|
||||
#define ITEM_HONEY ITEM_NONE
|
||||
#endif // ITEM_EXPANSION
|
||||
// // Held Items
|
||||
// #define ITEM_HONEY ITEM_NONE
|
||||
// #endif // ITEM_EXPANSION
|
||||
|
||||
#ifndef BATTLE_ENGINE
|
||||
// Gen 4
|
||||
#define ABILITY_TANGLED_FEET ABILITY_NONE
|
||||
#define ABILITY_MOTOR_DRIVE ABILITY_NONE
|
||||
#define ABILITY_RIVALRY ABILITY_NONE
|
||||
#define ABILITY_STEADFAST ABILITY_NONE
|
||||
#define ABILITY_SNOW_CLOAK ABILITY_NONE
|
||||
#define ABILITY_GLUTTONY ABILITY_NONE
|
||||
#define ABILITY_ANGER_POINT ABILITY_NONE
|
||||
#define ABILITY_UNBURDEN ABILITY_NONE
|
||||
#define ABILITY_HEATPROOF ABILITY_NONE
|
||||
#define ABILITY_SIMPLE ABILITY_NONE
|
||||
#define ABILITY_DRY_SKIN ABILITY_NONE
|
||||
#define ABILITY_DOWNLOAD ABILITY_NONE
|
||||
#define ABILITY_IRON_FIST ABILITY_NONE
|
||||
#define ABILITY_POISON_HEAL ABILITY_NONE
|
||||
#define ABILITY_ADAPTABILITY ABILITY_NONE
|
||||
#define ABILITY_SKILL_LINK ABILITY_NONE
|
||||
#define ABILITY_HYDRATION ABILITY_NONE
|
||||
#define ABILITY_SOLAR_POWER ABILITY_NONE
|
||||
#define ABILITY_QUICK_FEET ABILITY_NONE
|
||||
#define ABILITY_NORMALIZE ABILITY_NONE
|
||||
#define ABILITY_SNIPER ABILITY_NONE
|
||||
#define ABILITY_MAGIC_GUARD ABILITY_NONE
|
||||
#define ABILITY_NO_GUARD ABILITY_NONE
|
||||
#define ABILITY_STALL ABILITY_NONE
|
||||
#define ABILITY_TECHNICIAN ABILITY_NONE
|
||||
#define ABILITY_LEAF_GUARD ABILITY_NONE
|
||||
#define ABILITY_KLUTZ ABILITY_NONE
|
||||
#define ABILITY_MOLD_BREAKER ABILITY_NONE
|
||||
#define ABILITY_SUPER_LUCK ABILITY_NONE
|
||||
#define ABILITY_AFTERMATH ABILITY_NONE
|
||||
#define ABILITY_ANTICIPATION ABILITY_NONE
|
||||
#define ABILITY_FOREWARN ABILITY_NONE
|
||||
#define ABILITY_UNAWARE ABILITY_NONE
|
||||
#define ABILITY_TINTED_LENS ABILITY_NONE
|
||||
#define ABILITY_FILTER ABILITY_NONE
|
||||
#define ABILITY_SLOW_START ABILITY_NONE
|
||||
#define ABILITY_SCRAPPY ABILITY_NONE
|
||||
#define ABILITY_STORM_DRAIN ABILITY_NONE
|
||||
#define ABILITY_ICE_BODY ABILITY_NONE
|
||||
#define ABILITY_SOLID_ROCK ABILITY_NONE
|
||||
#define ABILITY_SNOW_WARNING ABILITY_NONE
|
||||
#define ABILITY_HONEY_GATHER ABILITY_NONE
|
||||
#define ABILITY_FRISK ABILITY_NONE
|
||||
#define ABILITY_RECKLESS ABILITY_NONE
|
||||
#define ABILITY_MULTITYPE ABILITY_NONE
|
||||
#define ABILITY_FLOWER_GIFT ABILITY_NONE
|
||||
#define ABILITY_BAD_DREAMS ABILITY_NONE
|
||||
// Gen 5
|
||||
#define ABILITY_PICKPOCKET ABILITY_NONE
|
||||
#define ABILITY_SHEER_FORCE ABILITY_NONE
|
||||
#define ABILITY_CONTRARY ABILITY_NONE
|
||||
#define ABILITY_UNNERVE ABILITY_NONE
|
||||
#define ABILITY_DEFIANT ABILITY_NONE
|
||||
#define ABILITY_DEFEATIST ABILITY_NONE
|
||||
#define ABILITY_CURSED_BODY ABILITY_NONE
|
||||
#define ABILITY_HEALER ABILITY_NONE
|
||||
#define ABILITY_FRIEND_GUARD ABILITY_NONE
|
||||
#define ABILITY_WEAK_ARMOR ABILITY_NONE
|
||||
#define ABILITY_HEAVY_METAL ABILITY_NONE
|
||||
#define ABILITY_LIGHT_METAL ABILITY_NONE
|
||||
#define ABILITY_MULTISCALE ABILITY_NONE
|
||||
#define ABILITY_TOXIC_BOOST ABILITY_NONE
|
||||
#define ABILITY_FLARE_BOOST ABILITY_NONE
|
||||
#define ABILITY_HARVEST ABILITY_NONE
|
||||
#define ABILITY_TELEPATHY ABILITY_NONE
|
||||
#define ABILITY_MOODY ABILITY_NONE
|
||||
#define ABILITY_OVERCOAT ABILITY_NONE
|
||||
#define ABILITY_POISON_TOUCH ABILITY_NONE
|
||||
#define ABILITY_REGENERATOR ABILITY_NONE
|
||||
#define ABILITY_BIG_PECKS ABILITY_NONE
|
||||
#define ABILITY_SAND_RUSH ABILITY_NONE
|
||||
#define ABILITY_WONDER_SKIN ABILITY_NONE
|
||||
#define ABILITY_ANALYTIC ABILITY_NONE
|
||||
#define ABILITY_ILLUSION ABILITY_NONE
|
||||
#define ABILITY_IMPOSTER ABILITY_NONE
|
||||
#define ABILITY_INFILTRATOR ABILITY_NONE
|
||||
#define ABILITY_MUMMY ABILITY_NONE
|
||||
#define ABILITY_MOXIE ABILITY_NONE
|
||||
#define ABILITY_JUSTIFIED ABILITY_NONE
|
||||
#define ABILITY_RATTLED ABILITY_NONE
|
||||
#define ABILITY_MAGIC_BOUNCE ABILITY_NONE
|
||||
#define ABILITY_SAP_SIPPER ABILITY_NONE
|
||||
#define ABILITY_PRANKSTER ABILITY_NONE
|
||||
#define ABILITY_SAND_FORCE ABILITY_NONE
|
||||
#define ABILITY_IRON_BARBS ABILITY_NONE
|
||||
#define ABILITY_ZEN_MODE ABILITY_NONE
|
||||
#define ABILITY_VICTORY_STAR ABILITY_NONE
|
||||
#define ABILITY_TURBOBLAZE ABILITY_NONE
|
||||
#define ABILITY_TERAVOLT ABILITY_NONE
|
||||
// Gen 6
|
||||
#define ABILITY_AROMA_VEIL ABILITY_NONE
|
||||
#define ABILITY_FLOWER_VEIL ABILITY_NONE
|
||||
#define ABILITY_CHEEK_POUCH ABILITY_NONE
|
||||
#define ABILITY_PROTEAN ABILITY_NONE
|
||||
#define ABILITY_FUR_COAT ABILITY_NONE
|
||||
#define ABILITY_MAGICIAN ABILITY_NONE
|
||||
#define ABILITY_BULLETPROOF ABILITY_NONE
|
||||
#define ABILITY_COMPETITIVE ABILITY_NONE
|
||||
#define ABILITY_STRONG_JAW ABILITY_NONE
|
||||
#define ABILITY_REFRIGERATE ABILITY_NONE
|
||||
#define ABILITY_SWEET_VEIL ABILITY_NONE
|
||||
#define ABILITY_STANCE_CHANGE ABILITY_NONE
|
||||
#define ABILITY_GALE_WINGS ABILITY_NONE
|
||||
#define ABILITY_MEGA_LAUNCHER ABILITY_NONE
|
||||
#define ABILITY_GRASS_PELT ABILITY_NONE
|
||||
#define ABILITY_SYMBIOSIS ABILITY_NONE
|
||||
#define ABILITY_TOUGH_CLAWS ABILITY_NONE
|
||||
#define ABILITY_PIXILATE ABILITY_NONE
|
||||
#define ABILITY_GOOEY ABILITY_NONE
|
||||
#define ABILITY_AERILATE ABILITY_NONE
|
||||
#define ABILITY_PARENTAL_BOND ABILITY_NONE
|
||||
#define ABILITY_DARK_AURA ABILITY_NONE
|
||||
#define ABILITY_FAIRY_AURA ABILITY_NONE
|
||||
#define ABILITY_AURA_BREAK ABILITY_NONE
|
||||
#define ABILITY_PRIMORDIAL_SEA ABILITY_NONE
|
||||
#define ABILITY_DESOLATE_LAND ABILITY_NONE
|
||||
#define ABILITY_DELTA_STREAM ABILITY_NONE
|
||||
// Gen 7
|
||||
#define ABILITY_STAMINA ABILITY_NONE
|
||||
#define ABILITY_WIMP_OUT ABILITY_NONE
|
||||
#define ABILITY_EMERGENCY_EXIT ABILITY_NONE
|
||||
#define ABILITY_WATER_COMPACTION ABILITY_NONE
|
||||
#define ABILITY_MERCILESS ABILITY_NONE
|
||||
#define ABILITY_SHIELDS_DOWN ABILITY_NONE
|
||||
#define ABILITY_STAKEOUT ABILITY_NONE
|
||||
#define ABILITY_WATER_BUBBLE ABILITY_NONE
|
||||
#define ABILITY_STEELWORKER ABILITY_NONE
|
||||
#define ABILITY_BERSERK ABILITY_NONE
|
||||
#define ABILITY_SLUSH_RUSH ABILITY_NONE
|
||||
#define ABILITY_LONG_REACH ABILITY_NONE
|
||||
#define ABILITY_LIQUID_VOICE ABILITY_NONE
|
||||
#define ABILITY_TRIAGE ABILITY_NONE
|
||||
#define ABILITY_GALVANIZE ABILITY_NONE
|
||||
#define ABILITY_SURGE_SURFER ABILITY_NONE
|
||||
#define ABILITY_SCHOOLING ABILITY_NONE
|
||||
#define ABILITY_DISGUISE ABILITY_NONE
|
||||
#define ABILITY_BATTLE_BOND ABILITY_NONE
|
||||
#define ABILITY_POWER_CONSTRUCT ABILITY_NONE
|
||||
#define ABILITY_CORROSION ABILITY_NONE
|
||||
#define ABILITY_COMATOSE ABILITY_NONE
|
||||
#define ABILITY_QUEENLY_MAJESTY ABILITY_NONE
|
||||
#define ABILITY_INNARDS_OUT ABILITY_NONE
|
||||
#define ABILITY_DANCER ABILITY_NONE
|
||||
#define ABILITY_BATTERY ABILITY_NONE
|
||||
#define ABILITY_FLUFFY ABILITY_NONE
|
||||
#define ABILITY_DAZZLING ABILITY_NONE
|
||||
#define ABILITY_SOUL_HEART ABILITY_NONE
|
||||
#define ABILITY_TANGLING_HAIR ABILITY_NONE
|
||||
#define ABILITY_RECEIVER ABILITY_NONE
|
||||
#define ABILITY_POWER_OF_ALCHEMY ABILITY_NONE
|
||||
#define ABILITY_BEAST_BOOST ABILITY_NONE
|
||||
#define ABILITY_RKS_SYSTEM ABILITY_NONE
|
||||
#define ABILITY_ELECTRIC_SURGE ABILITY_NONE
|
||||
#define ABILITY_PSYCHIC_SURGE ABILITY_NONE
|
||||
#define ABILITY_MISTY_SURGE ABILITY_NONE
|
||||
#define ABILITY_GRASSY_SURGE ABILITY_NONE
|
||||
#define ABILITY_FULL_METAL_BODY ABILITY_NONE
|
||||
#define ABILITY_SHADOW_SHIELD ABILITY_NONE
|
||||
#define ABILITY_PRISM_ARMOR ABILITY_NONE
|
||||
#define ABILITY_NEUROFORCE ABILITY_NONE
|
||||
// Gen 8
|
||||
#define ABILITY_INTREPID_SWORD ABILITY_NONE
|
||||
#define ABILITY_DAUNTLESS_SHIELD ABILITY_NONE
|
||||
#define ABILITY_LIBERO ABILITY_NONE
|
||||
#define ABILITY_BALL_FETCH ABILITY_NONE
|
||||
#define ABILITY_COTTON_DOWN ABILITY_NONE
|
||||
#define ABILITY_PROPELLER_TAIL ABILITY_NONE
|
||||
#define ABILITY_MIRROR_ARMOR ABILITY_NONE
|
||||
#define ABILITY_GULP_MISSILE ABILITY_NONE
|
||||
#define ABILITY_STALWART ABILITY_NONE
|
||||
#define ABILITY_STEAM_ENGINE ABILITY_NONE
|
||||
#define ABILITY_PUNK_ROCK ABILITY_NONE
|
||||
#define ABILITY_SAND_SPIT ABILITY_NONE
|
||||
#define ABILITY_ICE_SCALES ABILITY_NONE
|
||||
#define ABILITY_RIPEN ABILITY_NONE
|
||||
#define ABILITY_ICE_FACE ABILITY_NONE
|
||||
#define ABILITY_POWER_SPOT ABILITY_NONE
|
||||
#define ABILITY_MIMICRY ABILITY_NONE
|
||||
#define ABILITY_SCREEN_CLEANER ABILITY_NONE
|
||||
#define ABILITY_STEELY_SPIRIT ABILITY_NONE
|
||||
#define ABILITY_PERISH_BODY ABILITY_NONE
|
||||
#define ABILITY_WANDERING_SPIRIT ABILITY_NONE
|
||||
#define ABILITY_GORILLA_TACTICS ABILITY_NONE
|
||||
#define ABILITY_NEUTRALIZING_GAS ABILITY_NONE
|
||||
#define ABILITY_PASTEL_VEIL ABILITY_NONE
|
||||
#define ABILITY_HUNGER_SWITCH ABILITY_NONE
|
||||
#define ABILITY_QUICK_DRAW ABILITY_NONE
|
||||
#define ABILITY_UNSEEN_FIST ABILITY_NONE
|
||||
#define ABILITY_CURIOUS_MEDICINE ABILITY_NONE
|
||||
#define ABILITY_TRANSISTOR ABILITY_NONE
|
||||
#define ABILITY_DRAGONS_MAW ABILITY_NONE
|
||||
#define ABILITY_CHILLING_NEIGH ABILITY_NONE
|
||||
#define ABILITY_GRIM_NEIGH ABILITY_NONE
|
||||
#define ABILITY_AS_ONE_ICE_RIDER ABILITY_NONE
|
||||
#define ABILITY_AS_ONE_SHADOW_RIDER ABILITY_NONE
|
||||
#endif // BATTLE_ENGINE
|
||||
// #ifndef BATTLE_ENGINE
|
||||
// // Gen 4
|
||||
// #define ABILITY_TANGLED_FEET ABILITY_NONE
|
||||
// #define ABILITY_MOTOR_DRIVE ABILITY_NONE
|
||||
// #define ABILITY_RIVALRY ABILITY_NONE
|
||||
// #define ABILITY_STEADFAST ABILITY_NONE
|
||||
// #define ABILITY_SNOW_CLOAK ABILITY_NONE
|
||||
// #define ABILITY_GLUTTONY ABILITY_NONE
|
||||
// #define ABILITY_ANGER_POINT ABILITY_NONE
|
||||
// #define ABILITY_UNBURDEN ABILITY_NONE
|
||||
// #define ABILITY_HEATPROOF ABILITY_NONE
|
||||
// #define ABILITY_SIMPLE ABILITY_NONE
|
||||
// #define ABILITY_DRY_SKIN ABILITY_NONE
|
||||
// #define ABILITY_DOWNLOAD ABILITY_NONE
|
||||
// #define ABILITY_IRON_FIST ABILITY_NONE
|
||||
// #define ABILITY_POISON_HEAL ABILITY_NONE
|
||||
// #define ABILITY_ADAPTABILITY ABILITY_NONE
|
||||
// #define ABILITY_SKILL_LINK ABILITY_NONE
|
||||
// #define ABILITY_HYDRATION ABILITY_NONE
|
||||
// #define ABILITY_SOLAR_POWER ABILITY_NONE
|
||||
// #define ABILITY_QUICK_FEET ABILITY_NONE
|
||||
// #define ABILITY_NORMALIZE ABILITY_NONE
|
||||
// #define ABILITY_SNIPER ABILITY_NONE
|
||||
// #define ABILITY_MAGIC_GUARD ABILITY_NONE
|
||||
// #define ABILITY_NO_GUARD ABILITY_NONE
|
||||
// #define ABILITY_STALL ABILITY_NONE
|
||||
// #define ABILITY_TECHNICIAN ABILITY_NONE
|
||||
// #define ABILITY_LEAF_GUARD ABILITY_NONE
|
||||
// #define ABILITY_KLUTZ ABILITY_NONE
|
||||
// #define ABILITY_MOLD_BREAKER ABILITY_NONE
|
||||
// #define ABILITY_SUPER_LUCK ABILITY_NONE
|
||||
// #define ABILITY_AFTERMATH ABILITY_NONE
|
||||
// #define ABILITY_ANTICIPATION ABILITY_NONE
|
||||
// #define ABILITY_FOREWARN ABILITY_NONE
|
||||
// #define ABILITY_UNAWARE ABILITY_NONE
|
||||
// #define ABILITY_TINTED_LENS ABILITY_NONE
|
||||
// #define ABILITY_FILTER ABILITY_NONE
|
||||
// #define ABILITY_SLOW_START ABILITY_NONE
|
||||
// #define ABILITY_SCRAPPY ABILITY_NONE
|
||||
// #define ABILITY_STORM_DRAIN ABILITY_NONE
|
||||
// #define ABILITY_ICE_BODY ABILITY_NONE
|
||||
// #define ABILITY_SOLID_ROCK ABILITY_NONE
|
||||
// #define ABILITY_SNOW_WARNING ABILITY_NONE
|
||||
// #define ABILITY_HONEY_GATHER ABILITY_NONE
|
||||
// #define ABILITY_FRISK ABILITY_NONE
|
||||
// #define ABILITY_RECKLESS ABILITY_NONE
|
||||
// #define ABILITY_MULTITYPE ABILITY_NONE
|
||||
// #define ABILITY_FLOWER_GIFT ABILITY_NONE
|
||||
// #define ABILITY_BAD_DREAMS ABILITY_NONE
|
||||
// // Gen 5
|
||||
// #define ABILITY_PICKPOCKET ABILITY_NONE
|
||||
// #define ABILITY_SHEER_FORCE ABILITY_NONE
|
||||
// #define ABILITY_CONTRARY ABILITY_NONE
|
||||
// #define ABILITY_UNNERVE ABILITY_NONE
|
||||
// #define ABILITY_DEFIANT ABILITY_NONE
|
||||
// #define ABILITY_DEFEATIST ABILITY_NONE
|
||||
// #define ABILITY_CURSED_BODY ABILITY_NONE
|
||||
// #define ABILITY_HEALER ABILITY_NONE
|
||||
// #define ABILITY_FRIEND_GUARD ABILITY_NONE
|
||||
// #define ABILITY_WEAK_ARMOR ABILITY_NONE
|
||||
// #define ABILITY_HEAVY_METAL ABILITY_NONE
|
||||
// #define ABILITY_LIGHT_METAL ABILITY_NONE
|
||||
// #define ABILITY_MULTISCALE ABILITY_NONE
|
||||
// #define ABILITY_TOXIC_BOOST ABILITY_NONE
|
||||
// #define ABILITY_FLARE_BOOST ABILITY_NONE
|
||||
// #define ABILITY_HARVEST ABILITY_NONE
|
||||
// #define ABILITY_TELEPATHY ABILITY_NONE
|
||||
// #define ABILITY_MOODY ABILITY_NONE
|
||||
// #define ABILITY_OVERCOAT ABILITY_NONE
|
||||
// #define ABILITY_POISON_TOUCH ABILITY_NONE
|
||||
// #define ABILITY_REGENERATOR ABILITY_NONE
|
||||
// #define ABILITY_BIG_PECKS ABILITY_NONE
|
||||
// #define ABILITY_SAND_RUSH ABILITY_NONE
|
||||
// #define ABILITY_WONDER_SKIN ABILITY_NONE
|
||||
// #define ABILITY_ANALYTIC ABILITY_NONE
|
||||
// #define ABILITY_ILLUSION ABILITY_NONE
|
||||
// #define ABILITY_IMPOSTER ABILITY_NONE
|
||||
// #define ABILITY_INFILTRATOR ABILITY_NONE
|
||||
// #define ABILITY_MUMMY ABILITY_NONE
|
||||
// #define ABILITY_MOXIE ABILITY_NONE
|
||||
// #define ABILITY_JUSTIFIED ABILITY_NONE
|
||||
// #define ABILITY_RATTLED ABILITY_NONE
|
||||
// #define ABILITY_MAGIC_BOUNCE ABILITY_NONE
|
||||
// #define ABILITY_SAP_SIPPER ABILITY_NONE
|
||||
// #define ABILITY_PRANKSTER ABILITY_NONE
|
||||
// #define ABILITY_SAND_FORCE ABILITY_NONE
|
||||
// #define ABILITY_IRON_BARBS ABILITY_NONE
|
||||
// #define ABILITY_ZEN_MODE ABILITY_NONE
|
||||
// #define ABILITY_VICTORY_STAR ABILITY_NONE
|
||||
// #define ABILITY_TURBOBLAZE ABILITY_NONE
|
||||
// #define ABILITY_TERAVOLT ABILITY_NONE
|
||||
// // Gen 6
|
||||
// #define ABILITY_AROMA_VEIL ABILITY_NONE
|
||||
// #define ABILITY_FLOWER_VEIL ABILITY_NONE
|
||||
// #define ABILITY_CHEEK_POUCH ABILITY_NONE
|
||||
// #define ABILITY_PROTEAN ABILITY_NONE
|
||||
// #define ABILITY_FUR_COAT ABILITY_NONE
|
||||
// #define ABILITY_MAGICIAN ABILITY_NONE
|
||||
// #define ABILITY_BULLETPROOF ABILITY_NONE
|
||||
// #define ABILITY_COMPETITIVE ABILITY_NONE
|
||||
// #define ABILITY_STRONG_JAW ABILITY_NONE
|
||||
// #define ABILITY_REFRIGERATE ABILITY_NONE
|
||||
// #define ABILITY_SWEET_VEIL ABILITY_NONE
|
||||
// #define ABILITY_STANCE_CHANGE ABILITY_NONE
|
||||
// #define ABILITY_GALE_WINGS ABILITY_NONE
|
||||
// #define ABILITY_MEGA_LAUNCHER ABILITY_NONE
|
||||
// #define ABILITY_GRASS_PELT ABILITY_NONE
|
||||
// #define ABILITY_SYMBIOSIS ABILITY_NONE
|
||||
// #define ABILITY_TOUGH_CLAWS ABILITY_NONE
|
||||
// #define ABILITY_PIXILATE ABILITY_NONE
|
||||
// #define ABILITY_GOOEY ABILITY_NONE
|
||||
// #define ABILITY_AERILATE ABILITY_NONE
|
||||
// #define ABILITY_PARENTAL_BOND ABILITY_NONE
|
||||
// #define ABILITY_DARK_AURA ABILITY_NONE
|
||||
// #define ABILITY_FAIRY_AURA ABILITY_NONE
|
||||
// #define ABILITY_AURA_BREAK ABILITY_NONE
|
||||
// #define ABILITY_PRIMORDIAL_SEA ABILITY_NONE
|
||||
// #define ABILITY_DESOLATE_LAND ABILITY_NONE
|
||||
// #define ABILITY_DELTA_STREAM ABILITY_NONE
|
||||
// // Gen 7
|
||||
// #define ABILITY_STAMINA ABILITY_NONE
|
||||
// #define ABILITY_WIMP_OUT ABILITY_NONE
|
||||
// #define ABILITY_EMERGENCY_EXIT ABILITY_NONE
|
||||
// #define ABILITY_WATER_COMPACTION ABILITY_NONE
|
||||
// #define ABILITY_MERCILESS ABILITY_NONE
|
||||
// #define ABILITY_SHIELDS_DOWN ABILITY_NONE
|
||||
// #define ABILITY_STAKEOUT ABILITY_NONE
|
||||
// #define ABILITY_WATER_BUBBLE ABILITY_NONE
|
||||
// #define ABILITY_STEELWORKER ABILITY_NONE
|
||||
// #define ABILITY_BERSERK ABILITY_NONE
|
||||
// #define ABILITY_SLUSH_RUSH ABILITY_NONE
|
||||
// #define ABILITY_LONG_REACH ABILITY_NONE
|
||||
// #define ABILITY_LIQUID_VOICE ABILITY_NONE
|
||||
// #define ABILITY_TRIAGE ABILITY_NONE
|
||||
// #define ABILITY_GALVANIZE ABILITY_NONE
|
||||
// #define ABILITY_SURGE_SURFER ABILITY_NONE
|
||||
// #define ABILITY_SCHOOLING ABILITY_NONE
|
||||
// #define ABILITY_DISGUISE ABILITY_NONE
|
||||
// #define ABILITY_BATTLE_BOND ABILITY_NONE
|
||||
// #define ABILITY_POWER_CONSTRUCT ABILITY_NONE
|
||||
// #define ABILITY_CORROSION ABILITY_NONE
|
||||
// #define ABILITY_COMATOSE ABILITY_NONE
|
||||
// #define ABILITY_QUEENLY_MAJESTY ABILITY_NONE
|
||||
// #define ABILITY_INNARDS_OUT ABILITY_NONE
|
||||
// #define ABILITY_DANCER ABILITY_NONE
|
||||
// #define ABILITY_BATTERY ABILITY_NONE
|
||||
// #define ABILITY_FLUFFY ABILITY_NONE
|
||||
// #define ABILITY_DAZZLING ABILITY_NONE
|
||||
// #define ABILITY_SOUL_HEART ABILITY_NONE
|
||||
// #define ABILITY_TANGLING_HAIR ABILITY_NONE
|
||||
// #define ABILITY_RECEIVER ABILITY_NONE
|
||||
// #define ABILITY_POWER_OF_ALCHEMY ABILITY_NONE
|
||||
// #define ABILITY_BEAST_BOOST ABILITY_NONE
|
||||
// #define ABILITY_RKS_SYSTEM ABILITY_NONE
|
||||
// #define ABILITY_ELECTRIC_SURGE ABILITY_NONE
|
||||
// #define ABILITY_PSYCHIC_SURGE ABILITY_NONE
|
||||
// #define ABILITY_MISTY_SURGE ABILITY_NONE
|
||||
// #define ABILITY_GRASSY_SURGE ABILITY_NONE
|
||||
// #define ABILITY_FULL_METAL_BODY ABILITY_NONE
|
||||
// #define ABILITY_SHADOW_SHIELD ABILITY_NONE
|
||||
// #define ABILITY_PRISM_ARMOR ABILITY_NONE
|
||||
// #define ABILITY_NEUROFORCE ABILITY_NONE
|
||||
// // Gen 8
|
||||
// #define ABILITY_INTREPID_SWORD ABILITY_NONE
|
||||
// #define ABILITY_DAUNTLESS_SHIELD ABILITY_NONE
|
||||
// #define ABILITY_LIBERO ABILITY_NONE
|
||||
// #define ABILITY_BALL_FETCH ABILITY_NONE
|
||||
// #define ABILITY_COTTON_DOWN ABILITY_NONE
|
||||
// #define ABILITY_PROPELLER_TAIL ABILITY_NONE
|
||||
// #define ABILITY_MIRROR_ARMOR ABILITY_NONE
|
||||
// #define ABILITY_GULP_MISSILE ABILITY_NONE
|
||||
// #define ABILITY_STALWART ABILITY_NONE
|
||||
// #define ABILITY_STEAM_ENGINE ABILITY_NONE
|
||||
// #define ABILITY_PUNK_ROCK ABILITY_NONE
|
||||
// #define ABILITY_SAND_SPIT ABILITY_NONE
|
||||
// #define ABILITY_ICE_SCALES ABILITY_NONE
|
||||
// #define ABILITY_RIPEN ABILITY_NONE
|
||||
// #define ABILITY_ICE_FACE ABILITY_NONE
|
||||
// #define ABILITY_POWER_SPOT ABILITY_NONE
|
||||
// #define ABILITY_MIMICRY ABILITY_NONE
|
||||
// #define ABILITY_SCREEN_CLEANER ABILITY_NONE
|
||||
// #define ABILITY_STEELY_SPIRIT ABILITY_NONE
|
||||
// #define ABILITY_PERISH_BODY ABILITY_NONE
|
||||
// #define ABILITY_WANDERING_SPIRIT ABILITY_NONE
|
||||
// #define ABILITY_GORILLA_TACTICS ABILITY_NONE
|
||||
// #define ABILITY_NEUTRALIZING_GAS ABILITY_NONE
|
||||
// #define ABILITY_PASTEL_VEIL ABILITY_NONE
|
||||
// #define ABILITY_HUNGER_SWITCH ABILITY_NONE
|
||||
// #define ABILITY_QUICK_DRAW ABILITY_NONE
|
||||
// #define ABILITY_UNSEEN_FIST ABILITY_NONE
|
||||
// #define ABILITY_CURIOUS_MEDICINE ABILITY_NONE
|
||||
// #define ABILITY_TRANSISTOR ABILITY_NONE
|
||||
// #define ABILITY_DRAGONS_MAW ABILITY_NONE
|
||||
// #define ABILITY_CHILLING_NEIGH ABILITY_NONE
|
||||
// #define ABILITY_GRIM_NEIGH ABILITY_NONE
|
||||
// #define ABILITY_AS_ONE_ICE_RIDER ABILITY_NONE
|
||||
// #define ABILITY_AS_ONE_SHADOW_RIDER ABILITY_NONE
|
||||
// #endif // BATTLE_ENGINE
|
||||
|
||||
#endif // GUARD_CONSTANTS_POKEMON_CONFIG_H
|
||||
|
@ -781,11 +781,7 @@ static u8 GetAI_ItemType(u16 itemId, const u8 *itemEffect)
|
||||
return AI_ITEM_HEAL_HP;
|
||||
else if (itemEffect[3] & ITEM3_STATUS_ALL)
|
||||
return AI_ITEM_CURE_CONDITION;
|
||||
#ifdef ITEM_EXPANSION
|
||||
else if ((itemEffect[0] & ITEM0_DIRE_HIT) || itemEffect[1])
|
||||
#else
|
||||
else if (itemEffect[0] & (ITEM0_DIRE_HIT | ITEM0_X_ATTACK) || itemEffect[1] != 0 || itemEffect[2] != 0)
|
||||
#endif
|
||||
return AI_ITEM_X_STAT;
|
||||
else if (itemEffect[3] & ITEM3_GUARD_SPEC)
|
||||
return AI_ITEM_GUARD_SPEC;
|
||||
@ -913,20 +909,6 @@ static bool8 ShouldUseItem(void)
|
||||
*(gBattleStruct->AI_itemFlags + gActiveBattler / 2) = 0;
|
||||
if (gDisableStructs[gActiveBattler].isFirstTurn == 0)
|
||||
break;
|
||||
#ifndef ITEM_EXPANSION
|
||||
if (itemEffects[0] & ITEM0_X_ATTACK)
|
||||
*(gBattleStruct->AI_itemFlags + gActiveBattler / 2) |= (1 << AI_X_ATTACK);
|
||||
if (itemEffects[1] & ITEM1_X_DEFEND)
|
||||
*(gBattleStruct->AI_itemFlags + gActiveBattler / 2) |= (1 << AI_X_DEFEND);
|
||||
if (itemEffects[1] & ITEM1_X_SPEED)
|
||||
*(gBattleStruct->AI_itemFlags + gActiveBattler / 2) |= (1 << AI_X_SPEED);
|
||||
if (itemEffects[2] & ITEM2_X_SPATK)
|
||||
*(gBattleStruct->AI_itemFlags + gActiveBattler / 2) |= (1 << AI_X_SPATK);
|
||||
if (itemEffects[2] & ITEM2_X_ACCURACY)
|
||||
*(gBattleStruct->AI_itemFlags + gActiveBattler / 2) |= (1 << AI_X_ACCURACY);
|
||||
if (itemEffects[0] & ITEM0_DIRE_HIT)
|
||||
*(gBattleStruct->AI_itemFlags + gActiveBattler / 2) |= (1 << AI_DIRE_HIT);
|
||||
#else
|
||||
if (itemEffects[1] & ITEM1_X_ATTACK)
|
||||
*(gBattleStruct->AI_itemFlags + gActiveBattler / 2) |= (1 << AI_X_ATTACK);
|
||||
if (itemEffects[1] & ITEM1_X_DEFENSE)
|
||||
@ -941,7 +923,6 @@ static bool8 ShouldUseItem(void)
|
||||
*(gBattleStruct->AI_itemFlags + gActiveBattler / 2) |= (1 << AI_X_ACCURACY);
|
||||
if (itemEffects[0] & ITEM0_DIRE_HIT)
|
||||
*(gBattleStruct->AI_itemFlags + gActiveBattler / 2) |= (1 << AI_DIRE_HIT);
|
||||
#endif
|
||||
shouldUse = TRUE;
|
||||
break;
|
||||
case AI_ITEM_GUARD_SPEC:
|
||||
|
@ -3357,9 +3357,7 @@ static const u16 sRecycleEncouragedItems[] =
|
||||
ITEM_MICLE_BERRY,
|
||||
ITEM_CUSTAP_BERRY,
|
||||
ITEM_MENTAL_HERB,
|
||||
#ifdef ITEM_EXPANSION
|
||||
ITEM_FOCUS_SASH,
|
||||
#endif
|
||||
// TODO expand this
|
||||
};
|
||||
|
||||
@ -3375,9 +3373,7 @@ bool32 IsStatBoostingBerry(u16 item)
|
||||
case ITEM_APICOT_BERRY:
|
||||
//case ITEM_LANSAT_BERRY:
|
||||
case ITEM_STARF_BERRY:
|
||||
#ifdef ITEM_EXPANSION
|
||||
case ITEM_MICLE_BERRY:
|
||||
#endif
|
||||
return TRUE;
|
||||
default:
|
||||
return FALSE;
|
||||
@ -3619,12 +3615,10 @@ bool32 ShouldUseZMove(u8 battlerAtk, u8 battlerDef, u16 chosenMove)
|
||||
{
|
||||
u8 effectiveness;
|
||||
|
||||
#ifdef POKEMON_EXPANSION
|
||||
if (gBattleMons[battlerDef].ability == ABILITY_DISGUISE && gBattleMons[battlerDef].species == SPECIES_MIMIKYU)
|
||||
return FALSE; // Don't waste a Z-Move busting disguise
|
||||
if (gBattleMons[battlerDef].ability == ABILITY_ICE_FACE && gBattleMons[battlerDef].species == SPECIES_EISCUE && IS_MOVE_PHYSICAL(chosenMove))
|
||||
return FALSE; // Don't waste a Z-Move busting Ice Face
|
||||
#endif
|
||||
|
||||
if (IS_MOVE_STATUS(chosenMove) && !IS_MOVE_STATUS(gBattleStruct->zmove.chosenZMove))
|
||||
return FALSE;
|
||||
|
@ -7712,12 +7712,9 @@ void AnimTask_GetTimeOfDay(u8 taskId)
|
||||
|
||||
void AnimTask_GetLycanrocForm(u8 taskId)
|
||||
{
|
||||
|
||||
#ifdef POKEMON_EXPANSION
|
||||
if (GetMonData(GetIllusionMonPtr(gBattleAnimAttacker), MON_DATA_SPECIES) == SPECIES_LYCANROC_MIDNIGHT)
|
||||
gBattleAnimArgs[0] = 1;
|
||||
else
|
||||
#endif
|
||||
gBattleAnimArgs[0] = 0;
|
||||
|
||||
gBattleAnimArgs[0] = 0;
|
||||
|
@ -771,15 +771,9 @@ static void Task_ShowAiPoints(u8 taskId)
|
||||
{
|
||||
if (i != data->aiBattlerId && IsBattlerAlive(i))
|
||||
{
|
||||
#ifndef POKEMON_EXPANSION
|
||||
data->aiIconSpriteIds[i] = CreateMonIcon(gBattleMons[i].species,
|
||||
SpriteCallbackDummy,
|
||||
95 + (count * 60), 17, 0, 0, FALSE);
|
||||
#else
|
||||
data->aiIconSpriteIds[i] = CreateMonIcon(gBattleMons[i].species,
|
||||
SpriteCallbackDummy,
|
||||
95 + (count * 60), 17, 0, 0);
|
||||
#endif
|
||||
gSprites[data->aiIconSpriteIds[i]].data[0] = i; // battler id
|
||||
count++;
|
||||
}
|
||||
@ -788,19 +782,11 @@ static void Task_ShowAiPoints(u8 taskId)
|
||||
data->aiIconSpriteIds[i] = 0xFF;
|
||||
}
|
||||
}
|
||||
#ifndef POKEMON_EXPANSION
|
||||
data->aiMonSpriteId = CreateMonPicSprite_HandleDeoxys(gBattleMons[data->aiBattlerId].species,
|
||||
gBattleMons[data->aiBattlerId].otId,
|
||||
gBattleMons[data->aiBattlerId].personality,
|
||||
TRUE,
|
||||
39, 130, 15, TAG_NONE);
|
||||
#else
|
||||
data->aiMonSpriteId = CreateMonPicSprite(gBattleMons[data->aiBattlerId].species,
|
||||
gBattleMons[data->aiBattlerId].otId,
|
||||
gBattleMons[data->aiBattlerId].personality,
|
||||
TRUE,
|
||||
39, 130, 15, TAG_NONE);
|
||||
#endif
|
||||
data->aiViewState++;
|
||||
break;
|
||||
// Put text
|
||||
@ -894,15 +880,9 @@ static void Task_ShowAiKnowledge(u8 taskId)
|
||||
{
|
||||
if (GET_BATTLER_SIDE(i) == B_SIDE_PLAYER && IsBattlerAlive(i))
|
||||
{
|
||||
#ifndef POKEMON_EXPANSION
|
||||
data->aiIconSpriteIds[i] = CreateMonIcon(gBattleMons[i].species,
|
||||
SpriteCallbackDummy,
|
||||
95 + (count * 80), 17, 0, 0, FALSE);
|
||||
#else
|
||||
data->aiIconSpriteIds[i] = CreateMonIcon(gBattleMons[i].species,
|
||||
SpriteCallbackDummy,
|
||||
95 + (count * 80), 17, 0, 0);
|
||||
#endif
|
||||
gSprites[data->aiIconSpriteIds[i]].data[0] = i; // battler id
|
||||
count++;
|
||||
}
|
||||
@ -911,19 +891,11 @@ static void Task_ShowAiKnowledge(u8 taskId)
|
||||
data->aiIconSpriteIds[i] = 0xFF;
|
||||
}
|
||||
}
|
||||
#ifndef POKEMON_EXPANSION
|
||||
data->aiMonSpriteId = CreateMonPicSprite_HandleDeoxys(gBattleMons[data->aiBattlerId].species,
|
||||
gBattleMons[data->aiBattlerId].otId,
|
||||
gBattleMons[data->aiBattlerId].personality,
|
||||
TRUE,
|
||||
39, 130, 15, TAG_NONE);
|
||||
#else
|
||||
data->aiMonSpriteId = CreateMonPicSprite(gBattleMons[data->aiBattlerId].species,
|
||||
gBattleMons[data->aiBattlerId].otId,
|
||||
gBattleMons[data->aiBattlerId].personality,
|
||||
TRUE,
|
||||
39, 130, 15, TAG_NONE);
|
||||
#endif
|
||||
data->aiViewState++;
|
||||
break;
|
||||
// Put text
|
||||
@ -1953,20 +1925,12 @@ static const u8 sText_HoldEffectPsychicPower[] = _("Psychic Power");
|
||||
static const u8 sText_HoldEffectFirePower[] = _("Fire Power");
|
||||
static const u8 sText_HoldEffectDragonPower[] = _("Dragon Power");
|
||||
static const u8 sText_HoldEffectNormalPower[] = _("Normal Power");
|
||||
#ifdef ITEM_EXPANSION
|
||||
static const u8 sText_HoldEffectUpgrade[] = _("Upgrade");
|
||||
#else
|
||||
static const u8 sText_HoldEffectUpgrade[] = _("Up Grade");
|
||||
#endif
|
||||
static const u8 sText_HoldEffectShellBell[] = _("Shell Bell");
|
||||
static const u8 sText_HoldEffectLuckyPunch[] = _("Lucky Punch");
|
||||
static const u8 sText_HoldEffectMetalPowder[] = _("Metal Powder");
|
||||
static const u8 sText_HoldEffectThickClub[] = _("Thick Club");
|
||||
#ifdef ITEM_EXPANSION
|
||||
static const u8 sText_HoldEffectLeek[] = _("Leek");
|
||||
#else
|
||||
static const u8 sText_HoldEffectLeek[] = _("Stick");
|
||||
#endif
|
||||
static const u8 sText_HoldEffectChoiceScarf[] = _("Choice Scarf");
|
||||
static const u8 sText_HoldEffectChoiceSpecs[] = _("Choice Specs");
|
||||
static const u8 sText_HoldEffectDampRock[] = _("Damp Rock");
|
||||
|
@ -5197,11 +5197,7 @@ static void TrySpecialEvolution(void) // Attempts to perform non-level related b
|
||||
|
||||
for (i = 0; i < PARTY_SIZE; i++)
|
||||
{
|
||||
#ifndef POKEMON_EXPANSION
|
||||
u16 species = GetEvolutionTargetSpecies(&gPlayerParty[i], EVO_MODE_BATTLE_SPECIAL, i);
|
||||
#else
|
||||
u16 species = GetEvolutionTargetSpecies(&gPlayerParty[i], EVO_MODE_BATTLE_SPECIAL, i, NULL);
|
||||
#endif
|
||||
u16 species = GetEvolutionTargetSpecies(&gPlayerParty[i], EVO_MODE_BATTLE_SPECIAL, i, NULL);
|
||||
if (species != SPECIES_NONE && !(sTriedEvolving & gBitTable[i]))
|
||||
{
|
||||
sTriedEvolving |= gBitTable[i];
|
||||
|
@ -13631,7 +13631,6 @@ static void Cmd_handleballthrow(void)
|
||||
else
|
||||
catchRate = gBaseStats[gBattleMons[gBattlerTarget].species].catchRate;
|
||||
|
||||
#if defined POKEMON_EXPANSION && defined ITEM_EXPANSION
|
||||
if (gBaseStats[gBattleMons[gBattlerTarget].species].flags & FLAG_ULTRA_BEAST)
|
||||
{
|
||||
if (gLastUsedItem == ITEM_BEAST_BALL)
|
||||
@ -13641,177 +13640,168 @@ static void Cmd_handleballthrow(void)
|
||||
}
|
||||
else
|
||||
{
|
||||
#endif
|
||||
|
||||
switch (gLastUsedItem)
|
||||
{
|
||||
case ITEM_ULTRA_BALL:
|
||||
ballMultiplier = 20;
|
||||
case ITEM_GREAT_BALL:
|
||||
case ITEM_SAFARI_BALL:
|
||||
#ifdef ITEM_EXPANSION
|
||||
case ITEM_SPORT_BALL:
|
||||
#endif
|
||||
ballMultiplier = 15;
|
||||
case ITEM_NET_BALL:
|
||||
if (IS_BATTLER_OF_TYPE(gBattlerTarget, TYPE_WATER) || IS_BATTLER_OF_TYPE(gBattlerTarget, TYPE_BUG))
|
||||
#if B_NET_BALL_MODIFIER >= GEN_7
|
||||
ballMultiplier = 50;
|
||||
#else
|
||||
ballMultiplier = 30;
|
||||
#endif
|
||||
break;
|
||||
case ITEM_DIVE_BALL:
|
||||
#if B_DIVE_BALL_MODIFIER >= GEN_4
|
||||
if (GetCurrentMapType() == MAP_TYPE_UNDERWATER || gIsFishingEncounter || gIsSurfingEncounter)
|
||||
ballMultiplier = 35;
|
||||
#else
|
||||
if (GetCurrentMapType() == MAP_TYPE_UNDERWATER)
|
||||
ballMultiplier = 35;
|
||||
#endif
|
||||
break;
|
||||
case ITEM_NEST_BALL:
|
||||
#if B_NEST_BALL_MODIFIER >= GEN_6
|
||||
//((41 - Pokémon's level) ÷ 10)× if Pokémon's level is between 1 and 29, 1× otherwise.
|
||||
if (gBattleMons[gBattlerTarget].level < 30)
|
||||
ballMultiplier = 41 - gBattleMons[gBattlerTarget].level;
|
||||
#elif B_NEST_BALL_MODIFIER == GEN_5
|
||||
//((41 - Pokémon's level) ÷ 10)×, minimum 1×
|
||||
if (gBattleMons[gBattlerTarget].level < 31)
|
||||
ballMultiplier = 41 - gBattleMons[gBattlerTarget].level;
|
||||
#else
|
||||
//((40 - Pokémon's level) ÷ 10)×, minimum 1×
|
||||
if (gBattleMons[gBattlerTarget].level < 40)
|
||||
{
|
||||
ballMultiplier = 40 - gBattleMons[gBattlerTarget].level;
|
||||
if (ballMultiplier <= 9)
|
||||
ballMultiplier = 10;
|
||||
}
|
||||
#endif
|
||||
break;
|
||||
case ITEM_REPEAT_BALL:
|
||||
if (GetSetPokedexFlag(SpeciesToNationalPokedexNum(gBattleMons[gBattlerTarget].species), FLAG_GET_CAUGHT))
|
||||
#if B_REPEAT_BALL_MODIFIER >= GEN_7
|
||||
ballMultiplier = 35;
|
||||
#else
|
||||
ballMultiplier = 30;
|
||||
#endif
|
||||
break;
|
||||
case ITEM_TIMER_BALL:
|
||||
#if B_TIMER_BALL_MODIFIER >= GEN_5
|
||||
ballMultiplier = (gBattleResults.battleTurnCounter * 3) + 10;
|
||||
#else
|
||||
ballMultiplier = gBattleResults.battleTurnCounter + 10;
|
||||
#endif
|
||||
if (ballMultiplier > 40)
|
||||
ballMultiplier = 40;
|
||||
break;
|
||||
#ifdef ITEM_EXPANSION
|
||||
case ITEM_DUSK_BALL:
|
||||
RtcCalcLocalTime();
|
||||
if ((gLocalTime.hours >= 20 && gLocalTime.hours <= 3) || gMapHeader.cave || gMapHeader.mapType == MAP_TYPE_UNDERGROUND)
|
||||
#if B_DUSK_BALL_MODIFIER >= GEN_7
|
||||
ballMultiplier = 30;
|
||||
#else
|
||||
ballMultiplier = 35;
|
||||
#endif
|
||||
break;
|
||||
case ITEM_QUICK_BALL:
|
||||
if (gBattleResults.battleTurnCounter == 0)
|
||||
#if B_QUICK_BALL_MODIFIER >= GEN_5
|
||||
ballMultiplier = 50;
|
||||
#else
|
||||
ballMultiplier = 40;
|
||||
#endif
|
||||
break;
|
||||
case ITEM_LEVEL_BALL:
|
||||
if (gBattleMons[gBattlerAttacker].level >= 4 * gBattleMons[gBattlerTarget].level)
|
||||
ballMultiplier = 80;
|
||||
else if (gBattleMons[gBattlerAttacker].level > 2 * gBattleMons[gBattlerTarget].level)
|
||||
ballMultiplier = 40;
|
||||
else if (gBattleMons[gBattlerAttacker].level > gBattleMons[gBattlerTarget].level)
|
||||
switch (gLastUsedItem)
|
||||
{
|
||||
case ITEM_ULTRA_BALL:
|
||||
ballMultiplier = 20;
|
||||
break;
|
||||
case ITEM_LURE_BALL:
|
||||
if (gIsFishingEncounter)
|
||||
#if B_LURE_BALL_MODIFIER >= GEN_7
|
||||
ballMultiplier = 50;
|
||||
case ITEM_GREAT_BALL:
|
||||
case ITEM_SAFARI_BALL:
|
||||
case ITEM_SPORT_BALL:
|
||||
ballMultiplier = 15;
|
||||
case ITEM_NET_BALL:
|
||||
if (IS_BATTLER_OF_TYPE(gBattlerTarget, TYPE_WATER) || IS_BATTLER_OF_TYPE(gBattlerTarget, TYPE_BUG))
|
||||
#if B_NET_BALL_MODIFIER >= GEN_7
|
||||
ballMultiplier = 50;
|
||||
#else
|
||||
ballMultiplier = 30;
|
||||
#endif
|
||||
break;
|
||||
case ITEM_DIVE_BALL:
|
||||
#if B_DIVE_BALL_MODIFIER >= GEN_4
|
||||
if (GetCurrentMapType() == MAP_TYPE_UNDERWATER || gIsFishingEncounter || gIsSurfingEncounter)
|
||||
ballMultiplier = 35;
|
||||
#else
|
||||
ballMultiplier = 30;
|
||||
if (GetCurrentMapType() == MAP_TYPE_UNDERWATER)
|
||||
ballMultiplier = 35;
|
||||
#endif
|
||||
break;
|
||||
case ITEM_MOON_BALL:
|
||||
for (i = 0; i < EVOS_PER_MON; i++)
|
||||
{
|
||||
if (gEvolutionTable[gBattleMons[gBattlerTarget].species][i].method == EVO_ITEM
|
||||
&& gEvolutionTable[gBattleMons[gBattlerTarget].species][i].param == ITEM_MOON_STONE)
|
||||
break;
|
||||
case ITEM_NEST_BALL:
|
||||
#if B_NEST_BALL_MODIFIER >= GEN_6
|
||||
//((41 - Pokémon's level) ÷ 10)× if Pokémon's level is between 1 and 29, 1× otherwise.
|
||||
if (gBattleMons[gBattlerTarget].level < 30)
|
||||
ballMultiplier = 41 - gBattleMons[gBattlerTarget].level;
|
||||
#elif B_NEST_BALL_MODIFIER == GEN_5
|
||||
//((41 - Pokémon's level) ÷ 10)×, minimum 1×
|
||||
if (gBattleMons[gBattlerTarget].level < 31)
|
||||
ballMultiplier = 41 - gBattleMons[gBattlerTarget].level;
|
||||
#else
|
||||
//((40 - Pokémon's level) ÷ 10)×, minimum 1×
|
||||
if (gBattleMons[gBattlerTarget].level < 40)
|
||||
{
|
||||
ballMultiplier = 40 - gBattleMons[gBattlerTarget].level;
|
||||
if (ballMultiplier <= 9)
|
||||
ballMultiplier = 10;
|
||||
}
|
||||
#endif
|
||||
break;
|
||||
case ITEM_REPEAT_BALL:
|
||||
if (GetSetPokedexFlag(SpeciesToNationalPokedexNum(gBattleMons[gBattlerTarget].species), FLAG_GET_CAUGHT))
|
||||
#if B_REPEAT_BALL_MODIFIER >= GEN_7
|
||||
ballMultiplier = 35;
|
||||
#else
|
||||
ballMultiplier = 30;
|
||||
#endif
|
||||
break;
|
||||
case ITEM_TIMER_BALL:
|
||||
#if B_TIMER_BALL_MODIFIER >= GEN_5
|
||||
ballMultiplier = (gBattleResults.battleTurnCounter * 3) + 10;
|
||||
#else
|
||||
ballMultiplier = gBattleResults.battleTurnCounter + 10;
|
||||
#endif
|
||||
if (ballMultiplier > 40)
|
||||
ballMultiplier = 40;
|
||||
}
|
||||
break;
|
||||
case ITEM_LOVE_BALL:
|
||||
if (gBattleMons[gBattlerTarget].species == gBattleMons[gBattlerAttacker].species)
|
||||
{
|
||||
u8 gender1 = GetMonGender(&gEnemyParty[gBattlerPartyIndexes[gBattlerTarget]]);
|
||||
u8 gender2 = GetMonGender(&gPlayerParty[gBattlerPartyIndexes[gBattlerAttacker]]);
|
||||
|
||||
if (gender1 != gender2 && gender1 != MON_GENDERLESS && gender2 != MON_GENDERLESS)
|
||||
break;
|
||||
case ITEM_DUSK_BALL:
|
||||
RtcCalcLocalTime();
|
||||
if ((gLocalTime.hours >= 20 && gLocalTime.hours <= 3) || gMapHeader.cave || gMapHeader.mapType == MAP_TYPE_UNDERGROUND)
|
||||
#if B_DUSK_BALL_MODIFIER >= GEN_7
|
||||
ballMultiplier = 30;
|
||||
#else
|
||||
ballMultiplier = 35;
|
||||
#endif
|
||||
break;
|
||||
case ITEM_QUICK_BALL:
|
||||
if (gBattleResults.battleTurnCounter == 0)
|
||||
#if B_QUICK_BALL_MODIFIER >= GEN_5
|
||||
ballMultiplier = 50;
|
||||
#else
|
||||
ballMultiplier = 40;
|
||||
#endif
|
||||
break;
|
||||
case ITEM_LEVEL_BALL:
|
||||
if (gBattleMons[gBattlerAttacker].level >= 4 * gBattleMons[gBattlerTarget].level)
|
||||
ballMultiplier = 80;
|
||||
}
|
||||
break;
|
||||
case ITEM_FAST_BALL:
|
||||
if (gBaseStats[gBattleMons[gBattlerTarget].species].baseSpeed >= 100)
|
||||
ballMultiplier = 40;
|
||||
break;
|
||||
case ITEM_HEAVY_BALL:
|
||||
i = GetPokedexHeightWeight(SpeciesToNationalPokedexNum(gBattleMons[gBattlerTarget].species), 1);
|
||||
#if B_HEAVY_BALL_MODIFIER >= GEN_7
|
||||
if (i < 1000)
|
||||
ballAddition = -20;
|
||||
else if (i < 2000)
|
||||
ballAddition = 0;
|
||||
else if (i < 3000)
|
||||
ballAddition = 20;
|
||||
else
|
||||
ballAddition = 30;
|
||||
#elif B_HEAVY_BALL_MODIFIER >= GEN_4
|
||||
if (i < 2048)
|
||||
ballAddition = -20;
|
||||
else if (i < 3072)
|
||||
ballAddition = 20;
|
||||
else if (i < 4096)
|
||||
ballAddition = 30;
|
||||
else
|
||||
ballAddition = 40;
|
||||
#else
|
||||
if (i < 1024)
|
||||
ballAddition = -20;
|
||||
else if (i < 2048)
|
||||
ballAddition = 0;
|
||||
else if (i < 3072)
|
||||
ballAddition = 20;
|
||||
else if (i < 4096)
|
||||
ballAddition = 30;
|
||||
else
|
||||
ballAddition = 40;
|
||||
#endif
|
||||
break;
|
||||
case ITEM_DREAM_BALL:
|
||||
#if B_DREAM_BALL_MODIFIER >= GEN_8
|
||||
if (gBattleMons[gBattlerTarget].status1 & STATUS1_SLEEP || GetBattlerAbility(gBattlerTarget) == ABILITY_COMATOSE)
|
||||
else if (gBattleMons[gBattlerAttacker].level > 2 * gBattleMons[gBattlerTarget].level)
|
||||
ballMultiplier = 40;
|
||||
#else
|
||||
ballMultiplier = 10;
|
||||
#endif
|
||||
break;
|
||||
case ITEM_BEAST_BALL:
|
||||
ballMultiplier = 1;
|
||||
break;
|
||||
#endif
|
||||
}
|
||||
else if (gBattleMons[gBattlerAttacker].level > gBattleMons[gBattlerTarget].level)
|
||||
ballMultiplier = 20;
|
||||
break;
|
||||
case ITEM_LURE_BALL:
|
||||
if (gIsFishingEncounter)
|
||||
#if B_LURE_BALL_MODIFIER >= GEN_7
|
||||
ballMultiplier = 50;
|
||||
#else
|
||||
ballMultiplier = 30;
|
||||
#endif
|
||||
break;
|
||||
case ITEM_MOON_BALL:
|
||||
for (i = 0; i < EVOS_PER_MON; i++)
|
||||
{
|
||||
if (gEvolutionTable[gBattleMons[gBattlerTarget].species][i].method == EVO_ITEM
|
||||
&& gEvolutionTable[gBattleMons[gBattlerTarget].species][i].param == ITEM_MOON_STONE)
|
||||
ballMultiplier = 40;
|
||||
}
|
||||
break;
|
||||
case ITEM_LOVE_BALL:
|
||||
if (gBattleMons[gBattlerTarget].species == gBattleMons[gBattlerAttacker].species)
|
||||
{
|
||||
u8 gender1 = GetMonGender(&gEnemyParty[gBattlerPartyIndexes[gBattlerTarget]]);
|
||||
u8 gender2 = GetMonGender(&gPlayerParty[gBattlerPartyIndexes[gBattlerAttacker]]);
|
||||
|
||||
#if defined POKEMON_EXPANSION && defined ITEM_EXPANSION
|
||||
if (gender1 != gender2 && gender1 != MON_GENDERLESS && gender2 != MON_GENDERLESS)
|
||||
ballMultiplier = 80;
|
||||
}
|
||||
break;
|
||||
case ITEM_FAST_BALL:
|
||||
if (gBaseStats[gBattleMons[gBattlerTarget].species].baseSpeed >= 100)
|
||||
ballMultiplier = 40;
|
||||
break;
|
||||
case ITEM_HEAVY_BALL:
|
||||
i = GetPokedexHeightWeight(SpeciesToNationalPokedexNum(gBattleMons[gBattlerTarget].species), 1);
|
||||
#if B_HEAVY_BALL_MODIFIER >= GEN_7
|
||||
if (i < 1000)
|
||||
ballAddition = -20;
|
||||
else if (i < 2000)
|
||||
ballAddition = 0;
|
||||
else if (i < 3000)
|
||||
ballAddition = 20;
|
||||
else
|
||||
ballAddition = 30;
|
||||
#elif B_HEAVY_BALL_MODIFIER >= GEN_4
|
||||
if (i < 2048)
|
||||
ballAddition = -20;
|
||||
else if (i < 3072)
|
||||
ballAddition = 20;
|
||||
else if (i < 4096)
|
||||
ballAddition = 30;
|
||||
else
|
||||
ballAddition = 40;
|
||||
#else
|
||||
if (i < 1024)
|
||||
ballAddition = -20;
|
||||
else if (i < 2048)
|
||||
ballAddition = 0;
|
||||
else if (i < 3072)
|
||||
ballAddition = 20;
|
||||
else if (i < 4096)
|
||||
ballAddition = 30;
|
||||
else
|
||||
ballAddition = 40;
|
||||
#endif
|
||||
break;
|
||||
case ITEM_DREAM_BALL:
|
||||
#if B_DREAM_BALL_MODIFIER >= GEN_8
|
||||
if (gBattleMons[gBattlerTarget].status1 & STATUS1_SLEEP || GetBattlerAbility(gBattlerTarget) == ABILITY_COMATOSE)
|
||||
ballMultiplier = 40;
|
||||
#else
|
||||
ballMultiplier = 10;
|
||||
#endif
|
||||
break;
|
||||
case ITEM_BEAST_BALL:
|
||||
ballMultiplier = 1;
|
||||
break;
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
// catchRate is unsigned, which means that it may potentially overflow if sum is applied directly.
|
||||
if (catchRate < 21 && ballAddition == -20)
|
||||
@ -13844,7 +13834,6 @@ static void Cmd_handleballthrow(void)
|
||||
else
|
||||
gBattleCommunication[MULTISTRING_CHOOSER] = 1;
|
||||
|
||||
#ifdef ITEM_EXPANSION
|
||||
if (gLastUsedItem == ITEM_HEAL_BALL)
|
||||
{
|
||||
MonRestorePP(&gEnemyParty[gBattlerPartyIndexes[gBattlerTarget]]);
|
||||
@ -13852,7 +13841,6 @@ static void Cmd_handleballthrow(void)
|
||||
gBattleMons[gBattlerTarget].hp = gBattleMons[gBattlerTarget].maxHP;
|
||||
SetMonData(&gEnemyParty[gBattlerPartyIndexes[gBattlerTarget]], MON_DATA_HP, &gBattleMons[gBattlerTarget].hp);
|
||||
}
|
||||
#endif
|
||||
}
|
||||
else // mon may be caught, calculate shakes
|
||||
{
|
||||
@ -13900,7 +13888,6 @@ static void Cmd_handleballthrow(void)
|
||||
else
|
||||
gBattleCommunication[MULTISTRING_CHOOSER] = 1;
|
||||
|
||||
#ifdef ITEM_EXPANSION
|
||||
if (gLastUsedItem == ITEM_HEAL_BALL)
|
||||
{
|
||||
MonRestorePP(&gEnemyParty[gBattlerPartyIndexes[gBattlerTarget]]);
|
||||
@ -13908,7 +13895,6 @@ static void Cmd_handleballthrow(void)
|
||||
gBattleMons[gBattlerTarget].hp = gBattleMons[gBattlerTarget].maxHP;
|
||||
SetMonData(&gEnemyParty[gBattlerPartyIndexes[gBattlerTarget]], MON_DATA_HP, &gBattleMons[gBattlerTarget].hp);
|
||||
}
|
||||
#endif
|
||||
}
|
||||
else // not caught
|
||||
{
|
||||
@ -14201,13 +14187,13 @@ static const u16 sTelekinesisBanList[] =
|
||||
{
|
||||
SPECIES_DIGLETT,
|
||||
SPECIES_DUGTRIO,
|
||||
#ifdef POKEMON_EXPANSION
|
||||
// #ifdef NEW_POKEMON
|
||||
SPECIES_DIGLETT_ALOLAN,
|
||||
SPECIES_DUGTRIO_ALOLAN,
|
||||
SPECIES_SANDYGAST,
|
||||
SPECIES_PALOSSAND,
|
||||
SPECIES_GENGAR_MEGA,
|
||||
#endif
|
||||
// #endif
|
||||
};
|
||||
|
||||
bool32 IsTelekinesisBannedSpecies(u16 species)
|
||||
|
@ -9445,12 +9445,10 @@ bool32 CanMegaEvolve(u8 battlerId)
|
||||
u8 partnerPosition = GetBattlerPosition(BATTLE_PARTNER(battlerId));
|
||||
struct MegaEvolutionData *mega = &(((struct ChooseMoveStruct*)(&gBattleResources->bufferA[gActiveBattler][4]))->mega);
|
||||
|
||||
#ifdef ITEM_EXPANSION
|
||||
// Check if Player has a Mega Ring
|
||||
if ((GetBattlerPosition(battlerId) == B_POSITION_PLAYER_LEFT || (!(gBattleTypeFlags & BATTLE_TYPE_MULTI) && GetBattlerPosition(battlerId) == B_POSITION_PLAYER_RIGHT))
|
||||
&& !CheckBagHasItem(ITEM_MEGA_RING, 1))
|
||||
return FALSE;
|
||||
#endif
|
||||
|
||||
// Check if trainer already mega evolved a pokemon.
|
||||
if (mega->alreadyEvolved[battlerPosition])
|
||||
@ -9483,13 +9481,8 @@ bool32 CanMegaEvolve(u8 battlerId)
|
||||
{
|
||||
if (B_ENABLE_DEBUG && gBattleStruct->debugHoldEffects[battlerId])
|
||||
holdEffect = gBattleStruct->debugHoldEffects[battlerId];
|
||||
#ifdef ITEM_EXPANSION
|
||||
else if (itemId == ITEM_ENIGMA_BERRY_E_READER)
|
||||
holdEffect = gEnigmaBerries[battlerId].holdEffect;
|
||||
#else
|
||||
else if (itemId == ITEM_ENIGMA_BERRY)
|
||||
holdEffect = gEnigmaBerries[battlerId].holdEffect;
|
||||
#endif
|
||||
else
|
||||
holdEffect = ItemId_GetHoldEffect(itemId);
|
||||
|
||||
|
@ -58,7 +58,7 @@ static u8 GetZMoveScore(u8 battlerAtk, u8 battlerDef, u16 baseMove, u16 zMove);
|
||||
// Const Data
|
||||
static const struct SignatureZMove sSignatureZMoves[] =
|
||||
{
|
||||
#ifdef POKEMON_EXPANSION
|
||||
// #ifdef NEW_POKEMON
|
||||
{SPECIES_PIKACHU_COSPLAY, ITEM_PIKANIUM_Z, MOVE_VOLT_TACKLE, MOVE_CATASTROPIKA},
|
||||
{SPECIES_PIKACHU_ROCK_STAR, ITEM_PIKANIUM_Z, MOVE_VOLT_TACKLE, MOVE_CATASTROPIKA},
|
||||
{SPECIES_PIKACHU_BELLE, ITEM_PIKANIUM_Z, MOVE_VOLT_TACKLE, MOVE_CATASTROPIKA},
|
||||
@ -95,7 +95,7 @@ static const struct SignatureZMove sSignatureZMoves[] =
|
||||
{SPECIES_TAPU_LELE, ITEM_TAPUNIUM_Z, MOVE_NATURES_MADNESS, MOVE_GUARDIAN_OF_ALOLA},
|
||||
{SPECIES_TAPU_FINI, ITEM_TAPUNIUM_Z, MOVE_NATURES_MADNESS, MOVE_GUARDIAN_OF_ALOLA},
|
||||
{SPECIES_NECROZMA_ULTRA, ITEM_ULTRANECROZIUM_Z, MOVE_PHOTON_GEYSER, MOVE_LIGHT_THAT_BURNS_THE_SKY},
|
||||
#endif
|
||||
// #endif
|
||||
{SPECIES_MEW, ITEM_MEWNIUM_Z, MOVE_PSYCHIC, MOVE_GENESIS_SUPERNOVA},
|
||||
{SPECIES_PIKACHU, ITEM_PIKANIUM_Z, MOVE_VOLT_TACKLE, MOVE_CATASTROPIKA},
|
||||
{SPECIES_EEVEE, ITEM_EEVIUM_Z, MOVE_LAST_RESORT, MOVE_EXTREME_EVOBOOST},
|
||||
|
163
src/data/items.h
163
src/data/items.h
@ -3186,14 +3186,9 @@ const struct Item gItems[] =
|
||||
.holdEffectParam = 0,
|
||||
.description = sRedNectarDesc,
|
||||
.pocket = POCKET_ITEMS,
|
||||
#ifdef POKEMON_EXPANSION
|
||||
.type = ITEM_USE_PARTY_MENU,
|
||||
.fieldUseFunc = ItemUseOutOfBattle_FormChange_ConsumedOnUse,
|
||||
.secondaryId = FORM_ITEM_USE,
|
||||
#else
|
||||
.type = ITEM_USE_BAG_MENU,
|
||||
.fieldUseFunc = ItemUseOutOfBattle_CannotUse,
|
||||
#endif
|
||||
.type = ITEM_USE_PARTY_MENU,
|
||||
.fieldUseFunc = ItemUseOutOfBattle_FormChange_ConsumedOnUse,
|
||||
.secondaryId = FORM_ITEM_USE,
|
||||
.flingPower = 10,
|
||||
},
|
||||
|
||||
@ -3205,14 +3200,9 @@ const struct Item gItems[] =
|
||||
.holdEffectParam = 0,
|
||||
.description = sYellowNectarDesc,
|
||||
.pocket = POCKET_ITEMS,
|
||||
#ifdef POKEMON_EXPANSION
|
||||
.type = ITEM_USE_PARTY_MENU,
|
||||
.fieldUseFunc = ItemUseOutOfBattle_FormChange_ConsumedOnUse,
|
||||
.secondaryId = FORM_ITEM_USE,
|
||||
#else
|
||||
.type = ITEM_USE_BAG_MENU,
|
||||
.fieldUseFunc = ItemUseOutOfBattle_CannotUse,
|
||||
#endif
|
||||
.type = ITEM_USE_PARTY_MENU,
|
||||
.fieldUseFunc = ItemUseOutOfBattle_FormChange_ConsumedOnUse,
|
||||
.secondaryId = FORM_ITEM_USE,
|
||||
.flingPower = 10,
|
||||
},
|
||||
|
||||
@ -3224,14 +3214,9 @@ const struct Item gItems[] =
|
||||
.holdEffectParam = 0,
|
||||
.description = sPinkNectarDesc,
|
||||
.pocket = POCKET_ITEMS,
|
||||
#ifdef POKEMON_EXPANSION
|
||||
.type = ITEM_USE_PARTY_MENU,
|
||||
.fieldUseFunc = ItemUseOutOfBattle_FormChange_ConsumedOnUse,
|
||||
.secondaryId = FORM_ITEM_USE,
|
||||
#else
|
||||
.type = ITEM_USE_BAG_MENU,
|
||||
.fieldUseFunc = ItemUseOutOfBattle_CannotUse,
|
||||
#endif
|
||||
.type = ITEM_USE_PARTY_MENU,
|
||||
.fieldUseFunc = ItemUseOutOfBattle_FormChange_ConsumedOnUse,
|
||||
.secondaryId = FORM_ITEM_USE,
|
||||
.flingPower = 10,
|
||||
},
|
||||
|
||||
@ -3243,14 +3228,9 @@ const struct Item gItems[] =
|
||||
.holdEffectParam = 0,
|
||||
.description = sPurpleNectarDesc,
|
||||
.pocket = POCKET_ITEMS,
|
||||
#ifdef POKEMON_EXPANSION
|
||||
.type = ITEM_USE_PARTY_MENU,
|
||||
.fieldUseFunc = ItemUseOutOfBattle_FormChange_ConsumedOnUse,
|
||||
.secondaryId = FORM_ITEM_USE,
|
||||
#else
|
||||
.type = ITEM_USE_BAG_MENU,
|
||||
.fieldUseFunc = ItemUseOutOfBattle_CannotUse,
|
||||
#endif
|
||||
.type = ITEM_USE_PARTY_MENU,
|
||||
.fieldUseFunc = ItemUseOutOfBattle_FormChange_ConsumedOnUse,
|
||||
.secondaryId = FORM_ITEM_USE,
|
||||
.flingPower = 10,
|
||||
},
|
||||
|
||||
@ -5310,7 +5290,7 @@ const struct Item gItems[] =
|
||||
.itemId = ITEM_SOUL_DEW,
|
||||
.price = 0,
|
||||
.holdEffect = HOLD_EFFECT_SOUL_DEW,
|
||||
#if defined(BATTLE_ENGINE) && B_SOUL_DEW_BOOST >= GEN_7
|
||||
#if B_SOUL_DEW_BOOST >= GEN_7
|
||||
.holdEffectParam = 20,
|
||||
#else
|
||||
.holdEffectParam = 50,
|
||||
@ -7021,7 +7001,7 @@ const struct Item gItems[] =
|
||||
.name = _("Sitrus Berry"),
|
||||
.itemId = ITEM_SITRUS_BERRY,
|
||||
.price = 20,
|
||||
#if defined(BATTLE_ENGINE) && I_SITRUS_BERRY_HEAL >= GEN_4
|
||||
#if I_SITRUS_BERRY_HEAL >= GEN_4
|
||||
.holdEffect = HOLD_EFFECT_RESTORE_PCT_HP,
|
||||
.holdEffectParam = 25,
|
||||
#else
|
||||
@ -7037,9 +7017,9 @@ const struct Item gItems[] =
|
||||
.flingPower = 10,
|
||||
},
|
||||
|
||||
#if defined(BATTLE_ENGINE) && B_CONFUSE_BERRIES_HEAL >= GEN_8
|
||||
#if B_CONFUSE_BERRIES_HEAL >= GEN_8
|
||||
#define CONFUSE_BERRY_HEAL_FRACTION 3
|
||||
#elif defined(BATTLE_ENGINE) && B_CONFUSE_BERRIES_HEAL == GEN_7
|
||||
#elif B_CONFUSE_BERRIES_HEAL == GEN_7
|
||||
#define CONFUSE_BERRY_HEAL_FRACTION 2
|
||||
#else
|
||||
#define CONFUSE_BERRY_HEAL_FRACTION 8
|
||||
@ -7921,7 +7901,7 @@ const struct Item gItems[] =
|
||||
.pocket = POCKET_TM_HM,
|
||||
.type = ITEM_USE_PARTY_MENU,
|
||||
.fieldUseFunc = ItemUseOutOfBattle_TMHM,
|
||||
#if (defined BATTLE_ENGINE && B_UPDATED_MOVE_DATA >= GEN_5)
|
||||
#if B_UPDATED_MOVE_DATA >= GEN_5
|
||||
.flingPower = 25,
|
||||
#else
|
||||
.flingPower = 10,
|
||||
@ -7937,7 +7917,7 @@ const struct Item gItems[] =
|
||||
.pocket = POCKET_TM_HM,
|
||||
.type = ITEM_USE_PARTY_MENU,
|
||||
.fieldUseFunc = ItemUseOutOfBattle_TMHM,
|
||||
#if (defined BATTLE_ENGINE && B_UPDATED_MOVE_DATA >= GEN_6)
|
||||
#if B_UPDATED_MOVE_DATA >= GEN_6
|
||||
.flingPower = 60,
|
||||
#else
|
||||
.flingPower = 10,
|
||||
@ -7977,7 +7957,7 @@ const struct Item gItems[] =
|
||||
.pocket = POCKET_TM_HM,
|
||||
.type = ITEM_USE_PARTY_MENU,
|
||||
.fieldUseFunc = ItemUseOutOfBattle_TMHM,
|
||||
#if (defined BATTLE_ENGINE && B_UPDATED_MOVE_DATA >= GEN_6)
|
||||
#if B_UPDATED_MOVE_DATA >= GEN_6
|
||||
.flingPower = 90,
|
||||
#else
|
||||
.flingPower = 95,
|
||||
@ -7993,7 +7973,7 @@ const struct Item gItems[] =
|
||||
.pocket = POCKET_TM_HM,
|
||||
.type = ITEM_USE_PARTY_MENU,
|
||||
.fieldUseFunc = ItemUseOutOfBattle_TMHM,
|
||||
#if (defined BATTLE_ENGINE && B_UPDATED_MOVE_DATA >= GEN_6)
|
||||
#if B_UPDATED_MOVE_DATA >= GEN_6
|
||||
.flingPower = 110,
|
||||
#else
|
||||
.flingPower = 120,
|
||||
@ -8057,7 +8037,7 @@ const struct Item gItems[] =
|
||||
.pocket = POCKET_TM_HM,
|
||||
.type = ITEM_USE_PARTY_MENU,
|
||||
.fieldUseFunc = ItemUseOutOfBattle_TMHM,
|
||||
#if (defined BATTLE_ENGINE && B_UPDATED_MOVE_DATA >= GEN_5)
|
||||
#if B_UPDATED_MOVE_DATA >= GEN_5
|
||||
.flingPower = 75,
|
||||
#else
|
||||
.flingPower = 60,
|
||||
@ -8121,7 +8101,7 @@ const struct Item gItems[] =
|
||||
.pocket = POCKET_TM_HM,
|
||||
.type = ITEM_USE_PARTY_MENU,
|
||||
.fieldUseFunc = ItemUseOutOfBattle_TMHM,
|
||||
#if (defined BATTLE_ENGINE && B_UPDATED_MOVE_DATA >= GEN_6)
|
||||
#if B_UPDATED_MOVE_DATA >= GEN_6
|
||||
.flingPower = 90,
|
||||
#else
|
||||
.flingPower = 95,
|
||||
@ -8137,7 +8117,7 @@ const struct Item gItems[] =
|
||||
.pocket = POCKET_TM_HM,
|
||||
.type = ITEM_USE_PARTY_MENU,
|
||||
.fieldUseFunc = ItemUseOutOfBattle_TMHM,
|
||||
#if (defined BATTLE_ENGINE && B_UPDATED_MOVE_DATA >= GEN_6)
|
||||
#if B_UPDATED_MOVE_DATA >= GEN_6
|
||||
.flingPower = 110,
|
||||
#else
|
||||
.flingPower = 120,
|
||||
@ -8177,7 +8157,7 @@ const struct Item gItems[] =
|
||||
.pocket = POCKET_TM_HM,
|
||||
.type = ITEM_USE_PARTY_MENU,
|
||||
.fieldUseFunc = ItemUseOutOfBattle_TMHM,
|
||||
#if (defined BATTLE_ENGINE && B_UPDATED_MOVE_DATA >= GEN_4)
|
||||
#if B_UPDATED_MOVE_DATA >= GEN_4
|
||||
.flingPower = 80,
|
||||
#else
|
||||
.flingPower = 60,
|
||||
@ -8265,7 +8245,7 @@ const struct Item gItems[] =
|
||||
.pocket = POCKET_TM_HM,
|
||||
.type = ITEM_USE_PARTY_MENU,
|
||||
.fieldUseFunc = ItemUseOutOfBattle_TMHM,
|
||||
#if (defined BATTLE_ENGINE && B_UPDATED_MOVE_DATA >= GEN_6)
|
||||
#if B_UPDATED_MOVE_DATA >= GEN_6
|
||||
.flingPower = 90,
|
||||
#else
|
||||
.flingPower = 95,
|
||||
@ -8305,7 +8285,7 @@ const struct Item gItems[] =
|
||||
.pocket = POCKET_TM_HM,
|
||||
.type = ITEM_USE_PARTY_MENU,
|
||||
.fieldUseFunc = ItemUseOutOfBattle_TMHM,
|
||||
#if (defined BATTLE_ENGINE && B_UPDATED_MOVE_DATA >= GEN_6)
|
||||
#if B_UPDATED_MOVE_DATA >= GEN_6
|
||||
.flingPower = 110,
|
||||
#else
|
||||
.flingPower = 120,
|
||||
@ -8321,7 +8301,7 @@ const struct Item gItems[] =
|
||||
.pocket = POCKET_TM_HM,
|
||||
.type = ITEM_USE_PARTY_MENU,
|
||||
.fieldUseFunc = ItemUseOutOfBattle_TMHM,
|
||||
#if (defined BATTLE_ENGINE && B_UPDATED_MOVE_DATA >= GEN_6)
|
||||
#if B_UPDATED_MOVE_DATA >= GEN_6
|
||||
.flingPower = 60,
|
||||
#else
|
||||
.flingPower = 50,
|
||||
@ -8409,7 +8389,7 @@ const struct Item gItems[] =
|
||||
.pocket = POCKET_TM_HM,
|
||||
.type = ITEM_USE_PARTY_MENU,
|
||||
.fieldUseFunc = ItemUseOutOfBattle_TMHM,
|
||||
#if (defined BATTLE_ENGINE && B_UPDATED_MOVE_DATA >= GEN_6)
|
||||
#if B_UPDATED_MOVE_DATA >= GEN_6
|
||||
.flingPower = 60,
|
||||
#else
|
||||
.flingPower = 40,
|
||||
@ -8461,7 +8441,7 @@ const struct Item gItems[] =
|
||||
.pocket = POCKET_TM_HM,
|
||||
.type = ITEM_USE_PARTY_MENU,
|
||||
.fieldUseFunc = ItemUseOutOfBattle_TMHM,
|
||||
#if (defined BATTLE_ENGINE && B_UPDATED_MOVE_DATA >= GEN_6)
|
||||
#if B_UPDATED_MOVE_DATA >= GEN_6
|
||||
.flingPower = 130,
|
||||
#else
|
||||
.flingPower = 140,
|
||||
@ -9041,7 +9021,7 @@ const struct Item gItems[] =
|
||||
.pocket = POCKET_TM_HM,
|
||||
.type = ITEM_USE_PARTY_MENU,
|
||||
.fieldUseFunc = ItemUseOutOfBattle_TMHM,
|
||||
#if (defined BATTLE_ENGINE && B_UPDATED_MOVE_DATA >= GEN_4)
|
||||
#if B_UPDATED_MOVE_DATA >= GEN_4
|
||||
.flingPower = 90,
|
||||
#else
|
||||
.flingPower = 70,
|
||||
@ -9058,7 +9038,7 @@ const struct Item gItems[] =
|
||||
.pocket = POCKET_TM_HM,
|
||||
.type = ITEM_USE_PARTY_MENU,
|
||||
.fieldUseFunc = ItemUseOutOfBattle_TMHM,
|
||||
#if (defined BATTLE_ENGINE && B_UPDATED_MOVE_DATA >= GEN_6)
|
||||
#if B_UPDATED_MOVE_DATA >= GEN_6
|
||||
.flingPower = 90,
|
||||
#else
|
||||
.flingPower = 95,
|
||||
@ -9101,7 +9081,7 @@ const struct Item gItems[] =
|
||||
.pocket = POCKET_TM_HM,
|
||||
.type = ITEM_USE_PARTY_MENU,
|
||||
.fieldUseFunc = ItemUseOutOfBattle_TMHM,
|
||||
#if (defined BATTLE_ENGINE && B_UPDATED_MOVE_DATA >= GEN_4)
|
||||
#if B_UPDATED_MOVE_DATA >= GEN_4
|
||||
.flingPower = 20,
|
||||
#else
|
||||
.flingPower = 40,
|
||||
@ -9131,7 +9111,7 @@ const struct Item gItems[] =
|
||||
.pocket = POCKET_TM_HM,
|
||||
.type = ITEM_USE_PARTY_MENU,
|
||||
.fieldUseFunc = ItemUseOutOfBattle_TMHM,
|
||||
#if (defined BATTLE_ENGINE && B_UPDATED_MOVE_DATA >= GEN_4)
|
||||
#if B_UPDATED_MOVE_DATA >= GEN_4
|
||||
.flingPower = 80,
|
||||
#else
|
||||
.flingPower = 60,
|
||||
@ -9210,14 +9190,9 @@ const struct Item gItems[] =
|
||||
.price = 0,
|
||||
.description = sGracideaDesc,
|
||||
.pocket = POCKET_KEY_ITEMS,
|
||||
#ifdef POKEMON_EXPANSION
|
||||
.type = ITEM_USE_PARTY_MENU,
|
||||
.fieldUseFunc = ItemUseOutOfBattle_FormChange,
|
||||
.secondaryId = FORM_ITEM_USE_TIME,
|
||||
#else
|
||||
.type = ITEM_USE_BAG_MENU,
|
||||
.fieldUseFunc = ItemUseOutOfBattle_CannotUse,
|
||||
#endif
|
||||
.type = ITEM_USE_PARTY_MENU,
|
||||
.fieldUseFunc = ItemUseOutOfBattle_FormChange,
|
||||
.secondaryId = FORM_ITEM_USE_TIME,
|
||||
},
|
||||
|
||||
[ITEM_REVEAL_GLASS] =
|
||||
@ -9227,14 +9202,9 @@ const struct Item gItems[] =
|
||||
.price = 0,
|
||||
.description = sRevealGlassDesc,
|
||||
.pocket = POCKET_KEY_ITEMS,
|
||||
#ifdef POKEMON_EXPANSION
|
||||
.type = ITEM_USE_PARTY_MENU,
|
||||
.fieldUseFunc = ItemUseOutOfBattle_FormChange,
|
||||
.secondaryId = FORM_ITEM_USE,
|
||||
#else
|
||||
.type = ITEM_USE_BAG_MENU,
|
||||
.fieldUseFunc = ItemUseOutOfBattle_CannotUse,
|
||||
#endif
|
||||
.type = ITEM_USE_PARTY_MENU,
|
||||
.fieldUseFunc = ItemUseOutOfBattle_FormChange,
|
||||
.secondaryId = FORM_ITEM_USE,
|
||||
},
|
||||
|
||||
[ITEM_DNA_SPLICERS] =
|
||||
@ -9244,14 +9214,9 @@ const struct Item gItems[] =
|
||||
.price = 0,
|
||||
.description = sDNASplicersDesc,
|
||||
.pocket = POCKET_KEY_ITEMS,
|
||||
#ifdef POKEMON_EXPANSION
|
||||
.type = ITEM_USE_PARTY_MENU,
|
||||
.fieldUseFunc = ItemUseOutOfBattle_FormChange,
|
||||
.secondaryId = FORM_ITEM_USE,
|
||||
#else
|
||||
.type = ITEM_USE_BAG_MENU,
|
||||
.fieldUseFunc = ItemUseOutOfBattle_CannotUse,
|
||||
#endif
|
||||
.type = ITEM_USE_PARTY_MENU,
|
||||
.fieldUseFunc = ItemUseOutOfBattle_FormChange,
|
||||
.secondaryId = FORM_ITEM_USE,
|
||||
},
|
||||
|
||||
[ITEM_ZYGARDE_CUBE] =
|
||||
@ -9273,14 +9238,9 @@ const struct Item gItems[] =
|
||||
.price = 0,
|
||||
.description = sPrisonBottleDesc,
|
||||
.pocket = POCKET_KEY_ITEMS,
|
||||
#ifdef POKEMON_EXPANSION
|
||||
.type = ITEM_USE_PARTY_MENU,
|
||||
.fieldUseFunc = ItemUseOutOfBattle_FormChange,
|
||||
.secondaryId = FORM_ITEM_USE,
|
||||
#else
|
||||
.type = ITEM_USE_BAG_MENU,
|
||||
.fieldUseFunc = ItemUseOutOfBattle_CannotUse,
|
||||
#endif
|
||||
.type = ITEM_USE_PARTY_MENU,
|
||||
.fieldUseFunc = ItemUseOutOfBattle_FormChange,
|
||||
.secondaryId = FORM_ITEM_USE,
|
||||
},
|
||||
|
||||
[ITEM_N_SOLARIZER] =
|
||||
@ -9290,14 +9250,9 @@ const struct Item gItems[] =
|
||||
.price = 0,
|
||||
.description = sNSolarizerDesc,
|
||||
.pocket = POCKET_KEY_ITEMS,
|
||||
#ifdef POKEMON_EXPANSION
|
||||
.type = ITEM_USE_PARTY_MENU,
|
||||
.fieldUseFunc = ItemUseOutOfBattle_FormChange,
|
||||
.secondaryId = FORM_ITEM_USE,
|
||||
#else
|
||||
.type = ITEM_USE_BAG_MENU,
|
||||
.fieldUseFunc = ItemUseOutOfBattle_CannotUse,
|
||||
#endif
|
||||
.type = ITEM_USE_PARTY_MENU,
|
||||
.fieldUseFunc = ItemUseOutOfBattle_FormChange,
|
||||
.secondaryId = FORM_ITEM_USE,
|
||||
},
|
||||
|
||||
[ITEM_N_LUNARIZER] =
|
||||
@ -9307,14 +9262,9 @@ const struct Item gItems[] =
|
||||
.price = 0,
|
||||
.description = sNLunarizerDesc,
|
||||
.pocket = POCKET_KEY_ITEMS,
|
||||
#ifdef POKEMON_EXPANSION
|
||||
.type = ITEM_USE_PARTY_MENU,
|
||||
.fieldUseFunc = ItemUseOutOfBattle_FormChange,
|
||||
.secondaryId = FORM_ITEM_USE,
|
||||
#else
|
||||
.type = ITEM_USE_BAG_MENU,
|
||||
.fieldUseFunc = ItemUseOutOfBattle_CannotUse,
|
||||
#endif
|
||||
.type = ITEM_USE_PARTY_MENU,
|
||||
.fieldUseFunc = ItemUseOutOfBattle_FormChange,
|
||||
.secondaryId = FORM_ITEM_USE,
|
||||
},
|
||||
|
||||
[ITEM_REINS_OF_UNITY] =
|
||||
@ -9324,14 +9274,9 @@ const struct Item gItems[] =
|
||||
.price = 0,
|
||||
.description = sReinsOfUnityDesc,
|
||||
.pocket = POCKET_KEY_ITEMS,
|
||||
#ifdef POKEMON_EXPANSION
|
||||
.type = ITEM_USE_PARTY_MENU,
|
||||
.fieldUseFunc = ItemUseOutOfBattle_FormChange,
|
||||
.secondaryId = FORM_ITEM_USE,
|
||||
#else
|
||||
.type = ITEM_USE_BAG_MENU,
|
||||
.fieldUseFunc = ItemUseOutOfBattle_CannotUse,
|
||||
#endif
|
||||
.type = ITEM_USE_PARTY_MENU,
|
||||
.fieldUseFunc = ItemUseOutOfBattle_FormChange,
|
||||
.secondaryId = FORM_ITEM_USE,
|
||||
},
|
||||
|
||||
// Battle Mechanic Key Items
|
||||
|
@ -1558,9 +1558,7 @@ const struct BaseStats gBaseStats[] =
|
||||
.catchRate = 255,
|
||||
.expYield = 60,
|
||||
.evYield_Defense = 1,
|
||||
#ifdef ITEM_EXPANSION
|
||||
.itemRare = ITEM_GRIP_CLAW,
|
||||
#endif
|
||||
.itemRare = ITEM_GRIP_CLAW,
|
||||
.genderRatio = PERCENT_FEMALE(50),
|
||||
.eggCycles = 20,
|
||||
.friendship = 70,
|
||||
@ -1585,9 +1583,7 @@ const struct BaseStats gBaseStats[] =
|
||||
.catchRate = 90,
|
||||
.expYield = 158,
|
||||
.evYield_Defense = 2,
|
||||
#ifdef ITEM_EXPANSION
|
||||
.itemRare = ITEM_GRIP_CLAW,
|
||||
#endif
|
||||
.itemRare = ITEM_GRIP_CLAW,
|
||||
.genderRatio = PERCENT_FEMALE(50),
|
||||
.eggCycles = 20,
|
||||
.friendship = 70,
|
||||
@ -1991,9 +1987,7 @@ const struct BaseStats gBaseStats[] =
|
||||
.catchRate = 255,
|
||||
.expYield = 64,
|
||||
.evYield_SpAttack = 1,
|
||||
#ifdef ITEM_EXPANSION
|
||||
.itemRare = ITEM_ABSORB_BULB,
|
||||
#endif
|
||||
.itemRare = ITEM_ABSORB_BULB,
|
||||
.genderRatio = PERCENT_FEMALE(50),
|
||||
.eggCycles = 20,
|
||||
.friendship = 70,
|
||||
@ -2018,9 +2012,7 @@ const struct BaseStats gBaseStats[] =
|
||||
.catchRate = 120,
|
||||
.expYield = 138,
|
||||
.evYield_SpAttack = 2,
|
||||
#ifdef ITEM_EXPANSION
|
||||
.itemRare = ITEM_ABSORB_BULB,
|
||||
#endif
|
||||
.itemRare = ITEM_ABSORB_BULB,
|
||||
.genderRatio = PERCENT_FEMALE(50),
|
||||
.eggCycles = 20,
|
||||
.friendship = 70,
|
||||
@ -2049,9 +2041,7 @@ const struct BaseStats gBaseStats[] =
|
||||
.catchRate = 45,
|
||||
.expYield = 221,
|
||||
.evYield_SpAttack = 3,
|
||||
#ifdef ITEM_EXPANSION
|
||||
.itemRare = ITEM_ABSORB_BULB,
|
||||
#endif
|
||||
.itemRare = ITEM_ABSORB_BULB,
|
||||
.genderRatio = PERCENT_FEMALE(50),
|
||||
.eggCycles = 20,
|
||||
.friendship = 70,
|
||||
@ -2154,9 +2144,7 @@ const struct BaseStats gBaseStats[] =
|
||||
.expYield = 158,
|
||||
.evYield_Speed = 1,
|
||||
.evYield_SpAttack = 1,
|
||||
#ifdef ITEM_EXPANSION
|
||||
.itemRare = ITEM_SHED_SHELL,
|
||||
#endif
|
||||
.itemRare = ITEM_SHED_SHELL,
|
||||
.genderRatio = PERCENT_FEMALE(50),
|
||||
.eggCycles = 20,
|
||||
.friendship = 70,
|
||||
@ -2914,9 +2902,7 @@ const struct BaseStats gBaseStats[] =
|
||||
.catchRate = 190,
|
||||
.expYield = 63,
|
||||
.evYield_HP = 1,
|
||||
#ifdef ITEM_EXPANSION
|
||||
.itemRare = ITEM_LAGGING_TAIL,
|
||||
#endif
|
||||
.itemRare = ITEM_LAGGING_TAIL,
|
||||
.genderRatio = PERCENT_FEMALE(50),
|
||||
.eggCycles = 20,
|
||||
.friendship = 70,
|
||||
@ -3147,9 +3133,7 @@ const struct BaseStats gBaseStats[] =
|
||||
.catchRate = 190,
|
||||
.expYield = 65,
|
||||
.evYield_HP = 1,
|
||||
#ifdef ITEM_EXPANSION
|
||||
.itemRare = ITEM_BLACK_SLUDGE,
|
||||
#endif
|
||||
.itemRare = ITEM_BLACK_SLUDGE,
|
||||
.genderRatio = PERCENT_FEMALE(50),
|
||||
.eggCycles = 20,
|
||||
.friendship = 70,
|
||||
@ -3175,9 +3159,7 @@ const struct BaseStats gBaseStats[] =
|
||||
.expYield = 175,
|
||||
.evYield_HP = 1,
|
||||
.evYield_Attack = 1,
|
||||
#ifdef ITEM_EXPANSION
|
||||
.itemCommon = ITEM_BLACK_SLUDGE,
|
||||
#endif
|
||||
.itemCommon = ITEM_BLACK_SLUDGE,
|
||||
.genderRatio = PERCENT_FEMALE(50),
|
||||
.eggCycles = 20,
|
||||
.friendship = 70,
|
||||
@ -3502,9 +3484,7 @@ const struct BaseStats gBaseStats[] =
|
||||
.catchRate = 90,
|
||||
.expYield = 65,
|
||||
.evYield_Defense = 1,
|
||||
#ifdef ITEM_EXPANSION
|
||||
.itemRare = ITEM_PSYCHIC_SEED,
|
||||
#endif
|
||||
.itemRare = ITEM_PSYCHIC_SEED,
|
||||
.genderRatio = PERCENT_FEMALE(50),
|
||||
.eggCycles = 20,
|
||||
.friendship = 70,
|
||||
@ -3655,9 +3635,7 @@ const struct BaseStats gBaseStats[] =
|
||||
.catchRate = 45,
|
||||
.expYield = 77,
|
||||
.evYield_HP = 2,
|
||||
#ifdef ITEM_EXPANSION
|
||||
.itemRare = ITEM_LAGGING_TAIL,
|
||||
#endif
|
||||
.itemRare = ITEM_LAGGING_TAIL,
|
||||
.genderRatio = PERCENT_FEMALE(50),
|
||||
.eggCycles = 20,
|
||||
.friendship = 70,
|
||||
@ -4083,9 +4061,7 @@ const struct BaseStats gBaseStats[] =
|
||||
.catchRate = 45,
|
||||
.expYield = 172,
|
||||
.evYield_Speed = 2,
|
||||
#ifdef ITEM_EXPANSION
|
||||
.itemRare = ITEM_ELECTIRIZER,
|
||||
#endif
|
||||
.itemRare = ITEM_ELECTIRIZER,
|
||||
.genderRatio = PERCENT_FEMALE(25),
|
||||
.eggCycles = 25,
|
||||
.friendship = 70,
|
||||
@ -4110,9 +4086,7 @@ const struct BaseStats gBaseStats[] =
|
||||
.catchRate = 45,
|
||||
.expYield = 173,
|
||||
.evYield_SpAttack = 2,
|
||||
#ifdef ITEM_EXPANSION
|
||||
.itemRare = ITEM_MAGMARIZER,
|
||||
#endif
|
||||
.itemRare = ITEM_MAGMARIZER,
|
||||
.genderRatio = PERCENT_FEMALE(25),
|
||||
.eggCycles = 25,
|
||||
.friendship = 70,
|
||||
@ -4260,9 +4234,7 @@ const struct BaseStats gBaseStats[] =
|
||||
.catchRate = 35,
|
||||
.expYield = 101,
|
||||
.evYield_HP = 1,
|
||||
#ifdef ITEM_EXPANSION
|
||||
.itemCommon = ITEM_QUICK_POWDER,
|
||||
#endif
|
||||
.itemCommon = ITEM_QUICK_POWDER,
|
||||
.itemRare = ITEM_METAL_POWDER,
|
||||
.genderRatio = MON_GENDERLESS,
|
||||
.eggCycles = 20,
|
||||
@ -5504,9 +5476,7 @@ const struct BaseStats gBaseStats[] =
|
||||
.catchRate = 45,
|
||||
.expYield = 221,
|
||||
.evYield_SpDefense = 3,
|
||||
#ifdef ITEM_EXPANSION
|
||||
.itemRare = ITEM_ABSORB_BULB,
|
||||
#endif
|
||||
.itemRare = ITEM_ABSORB_BULB,
|
||||
.genderRatio = PERCENT_FEMALE(50),
|
||||
.eggCycles = 20,
|
||||
.friendship = 70,
|
||||
@ -5790,9 +5760,7 @@ const struct BaseStats gBaseStats[] =
|
||||
.catchRate = 75,
|
||||
.expYield = 78,
|
||||
.evYield_Speed = 1,
|
||||
#ifdef ITEM_EXPANSION
|
||||
.itemRare = ITEM_WIDE_LENS,
|
||||
#endif
|
||||
.itemRare = ITEM_WIDE_LENS,
|
||||
.genderRatio = PERCENT_FEMALE(50),
|
||||
.eggCycles = 20,
|
||||
.friendship = 70,
|
||||
@ -6501,9 +6469,7 @@ const struct BaseStats gBaseStats[] =
|
||||
.expYield = 144,
|
||||
.evYield_Defense = 1,
|
||||
.evYield_SpDefense = 1,
|
||||
#ifdef ITEM_EXPANSION
|
||||
.itemRare = ITEM_LUMINOUS_MOSS,
|
||||
#endif
|
||||
.itemRare = ITEM_LUMINOUS_MOSS,
|
||||
.genderRatio = PERCENT_FEMALE(75),
|
||||
.eggCycles = 20,
|
||||
.friendship = 70,
|
||||
@ -6922,9 +6888,7 @@ const struct BaseStats gBaseStats[] =
|
||||
.catchRate = 45,
|
||||
.expYield = 72,
|
||||
.evYield_Speed = 1,
|
||||
#ifdef ITEM_EXPANSION
|
||||
.itemRare = ITEM_ELECTIRIZER,
|
||||
#endif
|
||||
.itemRare = ITEM_ELECTIRIZER,
|
||||
.genderRatio = PERCENT_FEMALE(25),
|
||||
.eggCycles = 25,
|
||||
.friendship = 70,
|
||||
@ -6949,9 +6913,7 @@ const struct BaseStats gBaseStats[] =
|
||||
.catchRate = 45,
|
||||
.expYield = 73,
|
||||
.evYield_Speed = 1,
|
||||
#ifdef ITEM_EXPANSION
|
||||
.itemRare = ITEM_MAGMARIZER,
|
||||
#endif
|
||||
.itemRare = ITEM_MAGMARIZER,
|
||||
.genderRatio = PERCENT_FEMALE(25),
|
||||
.eggCycles = 25,
|
||||
.friendship = 70,
|
||||
@ -7639,9 +7601,7 @@ const struct BaseStats gBaseStats[] =
|
||||
.catchRate = 45,
|
||||
.expYield = 178,
|
||||
.evYield_SpAttack = 3,
|
||||
#ifdef ITEM_EXPANSION
|
||||
.itemRare = ITEM_SHED_SHELL,
|
||||
#endif
|
||||
.itemRare = ITEM_SHED_SHELL,
|
||||
.genderRatio = PERCENT_FEMALE(50),
|
||||
.eggCycles = 15,
|
||||
.friendship = 70,
|
||||
@ -7690,9 +7650,7 @@ const struct BaseStats gBaseStats[] =
|
||||
.catchRate = 45,
|
||||
.expYield = 173,
|
||||
.evYield_SpDefense = 3,
|
||||
#ifdef ITEM_EXPANSION
|
||||
.itemRare = ITEM_SHED_SHELL,
|
||||
#endif
|
||||
.itemRare = ITEM_SHED_SHELL,
|
||||
.genderRatio = PERCENT_FEMALE(50),
|
||||
.eggCycles = 15,
|
||||
.friendship = 70,
|
||||
@ -7792,9 +7750,7 @@ const struct BaseStats gBaseStats[] =
|
||||
.catchRate = 255,
|
||||
.expYield = 44,
|
||||
.evYield_Defense = 1,
|
||||
#ifdef ITEM_EXPANSION
|
||||
.itemRare = ITEM_POWER_HERB,
|
||||
#endif
|
||||
.itemRare = ITEM_POWER_HERB,
|
||||
.genderRatio = PERCENT_FEMALE(50),
|
||||
.eggCycles = 15,
|
||||
.friendship = 70,
|
||||
@ -7819,9 +7775,7 @@ const struct BaseStats gBaseStats[] =
|
||||
.catchRate = 120,
|
||||
.expYield = 119,
|
||||
.evYield_Attack = 2,
|
||||
#ifdef ITEM_EXPANSION
|
||||
.itemRare = ITEM_POWER_HERB,
|
||||
#endif
|
||||
.itemRare = ITEM_POWER_HERB,
|
||||
.genderRatio = PERCENT_FEMALE(50),
|
||||
.eggCycles = 15,
|
||||
.friendship = 70,
|
||||
@ -7846,9 +7800,7 @@ const struct BaseStats gBaseStats[] =
|
||||
.catchRate = 45,
|
||||
.expYield = 216,
|
||||
.evYield_Attack = 3,
|
||||
#ifdef ITEM_EXPANSION
|
||||
.itemRare = ITEM_POWER_HERB,
|
||||
#endif
|
||||
.itemRare = ITEM_POWER_HERB,
|
||||
.genderRatio = PERCENT_FEMALE(50),
|
||||
.eggCycles = 15,
|
||||
.friendship = 70,
|
||||
@ -7925,9 +7877,7 @@ const struct BaseStats gBaseStats[] =
|
||||
.catchRate = 190,
|
||||
.expYield = 54,
|
||||
.evYield_Speed = 1,
|
||||
#ifdef ITEM_EXPANSION
|
||||
.itemCommon = ITEM_PRETTY_FEATHER,
|
||||
#endif
|
||||
.itemCommon = ITEM_PRETTY_FEATHER,
|
||||
.genderRatio = PERCENT_FEMALE(50),
|
||||
.eggCycles = 20,
|
||||
.friendship = 70,
|
||||
@ -7956,9 +7906,7 @@ const struct BaseStats gBaseStats[] =
|
||||
.catchRate = 45,
|
||||
.expYield = 154,
|
||||
.evYield_Defense = 2,
|
||||
#ifdef ITEM_EXPANSION
|
||||
.itemCommon = ITEM_PRETTY_FEATHER,
|
||||
#endif
|
||||
.itemCommon = ITEM_PRETTY_FEATHER,
|
||||
.genderRatio = PERCENT_FEMALE(50),
|
||||
.eggCycles = 20,
|
||||
.friendship = 70,
|
||||
@ -8569,9 +8517,7 @@ const struct BaseStats gBaseStats[] =
|
||||
.expYield = 133,
|
||||
.evYield_Attack = 1,
|
||||
.evYield_Defense = 1,
|
||||
#ifdef ITEM_EXPANSION
|
||||
.itemRare = ITEM_WIDE_LENS,
|
||||
#endif
|
||||
.itemRare = ITEM_WIDE_LENS,
|
||||
.genderRatio = PERCENT_FEMALE(50),
|
||||
.eggCycles = 25,
|
||||
.friendship = 35,
|
||||
@ -8602,9 +8548,7 @@ const struct BaseStats gBaseStats[] =
|
||||
.expYield = 133,
|
||||
.evYield_Attack = 1,
|
||||
.evYield_Defense = 1,
|
||||
#ifdef ITEM_EXPANSION
|
||||
.itemRare = ITEM_IRON_BALL,
|
||||
#endif
|
||||
.itemRare = ITEM_IRON_BALL,
|
||||
.genderRatio = PERCENT_FEMALE(50),
|
||||
.eggCycles = 20,
|
||||
.friendship = 70,
|
||||
@ -8800,9 +8744,7 @@ const struct BaseStats gBaseStats[] =
|
||||
.catchRate = 200,
|
||||
.expYield = 142,
|
||||
.evYield_Speed = 1,
|
||||
#ifdef ITEM_EXPANSION
|
||||
.itemRare = ITEM_CELL_BATTERY,
|
||||
#endif
|
||||
.itemRare = ITEM_CELL_BATTERY,
|
||||
.genderRatio = PERCENT_FEMALE(50),
|
||||
.eggCycles = 20,
|
||||
.friendship = 70,
|
||||
@ -8827,9 +8769,7 @@ const struct BaseStats gBaseStats[] =
|
||||
.catchRate = 200,
|
||||
.expYield = 142,
|
||||
.evYield_Speed = 1,
|
||||
#ifdef ITEM_EXPANSION
|
||||
.itemRare = ITEM_CELL_BATTERY,
|
||||
#endif
|
||||
.itemRare = ITEM_CELL_BATTERY,
|
||||
.genderRatio = PERCENT_FEMALE(50),
|
||||
.eggCycles = 20,
|
||||
.friendship = 70,
|
||||
@ -9322,9 +9262,7 @@ const struct BaseStats gBaseStats[] =
|
||||
.catchRate = 190,
|
||||
.expYield = 67,
|
||||
.evYield_SpAttack = 1,
|
||||
#ifdef ITEM_EXPANSION
|
||||
.itemRare = ITEM_STICKY_BARB,
|
||||
#endif
|
||||
.itemRare = ITEM_STICKY_BARB,
|
||||
.genderRatio = PERCENT_FEMALE(50),
|
||||
.eggCycles = 20,
|
||||
.friendship = 35,
|
||||
@ -9350,9 +9288,7 @@ const struct BaseStats gBaseStats[] =
|
||||
.expYield = 166,
|
||||
.evYield_Attack = 1,
|
||||
.evYield_SpAttack = 1,
|
||||
#ifdef ITEM_EXPANSION
|
||||
.itemRare = ITEM_STICKY_BARB,
|
||||
#endif
|
||||
.itemRare = ITEM_STICKY_BARB,
|
||||
.genderRatio = PERCENT_FEMALE(50),
|
||||
.eggCycles = 20,
|
||||
.friendship = 35,
|
||||
@ -9451,9 +9387,7 @@ const struct BaseStats gBaseStats[] =
|
||||
.expYield = 160,
|
||||
.evYield_Attack = 1,
|
||||
.evYield_SpAttack = 1,
|
||||
#ifdef ITEM_EXPANSION
|
||||
.itemRare = ITEM_SHED_SHELL,
|
||||
#endif
|
||||
.itemRare = ITEM_SHED_SHELL,
|
||||
.genderRatio = PERCENT_FEMALE(50),
|
||||
.eggCycles = 20,
|
||||
.friendship = 70,
|
||||
@ -9634,9 +9568,7 @@ const struct BaseStats gBaseStats[] =
|
||||
.catchRate = 255,
|
||||
.expYield = 60,
|
||||
.evYield_SpDefense = 1,
|
||||
#ifdef ITEM_EXPANSION
|
||||
.itemRare = ITEM_LIGHT_CLAY,
|
||||
#endif
|
||||
.itemRare = ITEM_LIGHT_CLAY,
|
||||
.genderRatio = MON_GENDERLESS,
|
||||
.eggCycles = 20,
|
||||
.friendship = 70,
|
||||
@ -9661,9 +9593,7 @@ const struct BaseStats gBaseStats[] =
|
||||
.catchRate = 90,
|
||||
.expYield = 175,
|
||||
.evYield_SpDefense = 2,
|
||||
#ifdef ITEM_EXPANSION
|
||||
.itemRare = ITEM_LIGHT_CLAY,
|
||||
#endif
|
||||
.itemRare = ITEM_LIGHT_CLAY,
|
||||
.genderRatio = MON_GENDERLESS,
|
||||
.eggCycles = 20,
|
||||
.friendship = 70,
|
||||
@ -9688,9 +9618,7 @@ const struct BaseStats gBaseStats[] =
|
||||
.catchRate = 45,
|
||||
.expYield = 71,
|
||||
.evYield_SpDefense = 1,
|
||||
#ifdef ITEM_EXPANSION
|
||||
.itemRare = ITEM_BIG_ROOT,
|
||||
#endif
|
||||
.itemRare = ITEM_BIG_ROOT,
|
||||
.genderRatio = PERCENT_FEMALE(12.5),
|
||||
.eggCycles = 30,
|
||||
.friendship = 70,
|
||||
@ -9715,9 +9643,7 @@ const struct BaseStats gBaseStats[] =
|
||||
.catchRate = 45,
|
||||
.expYield = 173,
|
||||
.evYield_SpDefense = 2,
|
||||
#ifdef ITEM_EXPANSION
|
||||
.itemRare = ITEM_BIG_ROOT,
|
||||
#endif
|
||||
.itemRare = ITEM_BIG_ROOT,
|
||||
.genderRatio = PERCENT_FEMALE(12.5),
|
||||
.eggCycles = 30,
|
||||
.friendship = 70,
|
||||
@ -10069,9 +9995,7 @@ const struct BaseStats gBaseStats[] =
|
||||
.catchRate = 190,
|
||||
.expYield = 60,
|
||||
.evYield_HP = 1,
|
||||
#ifdef ITEM_EXPANSION
|
||||
.itemRare = ITEM_SNOWBALL,
|
||||
#endif
|
||||
.itemRare = ITEM_SNOWBALL,
|
||||
.genderRatio = PERCENT_FEMALE(50),
|
||||
.eggCycles = 20,
|
||||
.friendship = 70,
|
||||
@ -11074,9 +10998,7 @@ const struct BaseStats gBaseStats[] =
|
||||
.catchRate = 255,
|
||||
.expYield = 39,
|
||||
.evYield_Defense = 1,
|
||||
#ifdef ITEM_EXPANSION
|
||||
.itemRare = ITEM_METRONOME,
|
||||
#endif
|
||||
.itemRare = ITEM_METRONOME,
|
||||
.genderRatio = PERCENT_FEMALE(50),
|
||||
.eggCycles = 15,
|
||||
.friendship = 70,
|
||||
@ -11102,9 +11024,7 @@ const struct BaseStats gBaseStats[] =
|
||||
.catchRate = 45,
|
||||
.expYield = 134,
|
||||
.evYield_Attack = 2,
|
||||
#ifdef ITEM_EXPANSION
|
||||
.itemRare = ITEM_METRONOME,
|
||||
#endif
|
||||
.itemRare = ITEM_METRONOME,
|
||||
.genderRatio = PERCENT_FEMALE(50),
|
||||
.eggCycles = 15,
|
||||
.friendship = 70,
|
||||
@ -11955,9 +11875,7 @@ const struct BaseStats gBaseStats[] =
|
||||
.catchRate = 130,
|
||||
.expYield = 110,
|
||||
.evYield_HP = 1,
|
||||
#ifdef ITEM_EXPANSION
|
||||
.itemCommon = ITEM_OVAL_STONE,
|
||||
#endif
|
||||
.itemCommon = ITEM_OVAL_STONE,
|
||||
.genderRatio = MON_FEMALE,
|
||||
.eggCycles = 40,
|
||||
.friendship = 140,
|
||||
@ -11982,9 +11900,7 @@ const struct BaseStats gBaseStats[] =
|
||||
.catchRate = 30,
|
||||
.expYield = 144,
|
||||
.evYield_Attack = 1,
|
||||
#ifdef ITEM_EXPANSION
|
||||
.itemRare = ITEM_METRONOME,
|
||||
#endif
|
||||
.itemRare = ITEM_METRONOME,
|
||||
.genderRatio = PERCENT_FEMALE(50),
|
||||
.eggCycles = 20,
|
||||
.friendship = 35,
|
||||
@ -12281,9 +12197,7 @@ const struct BaseStats gBaseStats[] =
|
||||
.catchRate = 140,
|
||||
.expYield = 60,
|
||||
.evYield_Attack = 1,
|
||||
#ifdef ITEM_EXPANSION
|
||||
.itemRare = ITEM_BLACK_SLUDGE,
|
||||
#endif
|
||||
.itemRare = ITEM_BLACK_SLUDGE,
|
||||
.genderRatio = PERCENT_FEMALE(50),
|
||||
.eggCycles = 10,
|
||||
.friendship = 100,
|
||||
@ -12308,9 +12222,7 @@ const struct BaseStats gBaseStats[] =
|
||||
.catchRate = 75,
|
||||
.expYield = 172,
|
||||
.evYield_Attack = 2,
|
||||
#ifdef ITEM_EXPANSION
|
||||
.itemRare = ITEM_BLACK_SLUDGE,
|
||||
#endif
|
||||
.itemRare = ITEM_BLACK_SLUDGE,
|
||||
.genderRatio = PERCENT_FEMALE(50),
|
||||
.eggCycles = 20,
|
||||
.friendship = 70,
|
||||
@ -12533,9 +12445,7 @@ const struct BaseStats gBaseStats[] =
|
||||
.catchRate = 30,
|
||||
.expYield = 180,
|
||||
.evYield_HP = 3,
|
||||
#ifdef ITEM_EXPANSION
|
||||
.itemRare = ITEM_LAGGING_TAIL,
|
||||
#endif
|
||||
.itemRare = ITEM_LAGGING_TAIL,
|
||||
.genderRatio = PERCENT_FEMALE(50),
|
||||
.eggCycles = 20,
|
||||
.friendship = 70,
|
||||
@ -12608,9 +12518,7 @@ const struct BaseStats gBaseStats[] =
|
||||
.catchRate = 30,
|
||||
.expYield = 243,
|
||||
.evYield_Attack = 3,
|
||||
#ifdef ITEM_EXPANSION
|
||||
.itemRare = ITEM_ELECTIRIZER,
|
||||
#endif
|
||||
.itemRare = ITEM_ELECTIRIZER,
|
||||
.genderRatio = PERCENT_FEMALE(25),
|
||||
.eggCycles = 25,
|
||||
.friendship = 70,
|
||||
@ -12635,9 +12543,7 @@ const struct BaseStats gBaseStats[] =
|
||||
.catchRate = 30,
|
||||
.expYield = 243,
|
||||
.evYield_SpAttack = 3,
|
||||
#ifdef ITEM_EXPANSION
|
||||
.itemRare = ITEM_MAGMARIZER,
|
||||
#endif
|
||||
.itemRare = ITEM_MAGMARIZER,
|
||||
.genderRatio = PERCENT_FEMALE(25),
|
||||
.eggCycles = 25,
|
||||
.friendship = 70,
|
||||
@ -12692,9 +12598,7 @@ const struct BaseStats gBaseStats[] =
|
||||
.catchRate = 30,
|
||||
.expYield = 180,
|
||||
.evYield_Attack = 2,
|
||||
#ifdef ITEM_EXPANSION
|
||||
.itemRare = ITEM_WIDE_LENS,
|
||||
#endif
|
||||
.itemRare = ITEM_WIDE_LENS,
|
||||
.genderRatio = PERCENT_FEMALE(50),
|
||||
.eggCycles = 20,
|
||||
.friendship = 70,
|
||||
@ -14637,9 +14541,7 @@ const struct BaseStats gBaseStats[] =
|
||||
.catchRate = 190,
|
||||
.expYield = 56,
|
||||
.evYield_Speed = 1,
|
||||
#ifdef ITEM_EXPANSION
|
||||
.itemRare = ITEM_ABSORB_BULB,
|
||||
#endif
|
||||
.itemRare = ITEM_ABSORB_BULB,
|
||||
.genderRatio = PERCENT_FEMALE(50),
|
||||
.eggCycles = 20,
|
||||
.friendship = 70,
|
||||
@ -14669,9 +14571,7 @@ const struct BaseStats gBaseStats[] =
|
||||
.catchRate = 75,
|
||||
.expYield = 168,
|
||||
.evYield_Speed = 2,
|
||||
#ifdef ITEM_EXPANSION
|
||||
.itemRare = ITEM_ABSORB_BULB,
|
||||
#endif
|
||||
.itemRare = ITEM_ABSORB_BULB,
|
||||
.genderRatio = PERCENT_FEMALE(50),
|
||||
.eggCycles = 20,
|
||||
.friendship = 70,
|
||||
@ -14696,9 +14596,7 @@ const struct BaseStats gBaseStats[] =
|
||||
.catchRate = 190,
|
||||
.expYield = 56,
|
||||
.evYield_SpAttack = 1,
|
||||
#ifdef ITEM_EXPANSION
|
||||
.itemRare = ITEM_ABSORB_BULB,
|
||||
#endif
|
||||
.itemRare = ITEM_ABSORB_BULB,
|
||||
.genderRatio = MON_FEMALE,
|
||||
.eggCycles = 20,
|
||||
.friendship = 70,
|
||||
@ -14723,9 +14621,7 @@ const struct BaseStats gBaseStats[] =
|
||||
.catchRate = 75,
|
||||
.expYield = 168,
|
||||
.evYield_SpAttack = 2,
|
||||
#ifdef ITEM_EXPANSION
|
||||
.itemRare = ITEM_ABSORB_BULB,
|
||||
#endif
|
||||
.itemRare = ITEM_ABSORB_BULB,
|
||||
.genderRatio = MON_FEMALE,
|
||||
.eggCycles = 20,
|
||||
.friendship = 70,
|
||||
@ -14981,9 +14877,7 @@ const struct BaseStats gBaseStats[] =
|
||||
.catchRate = 180,
|
||||
.expYield = 70,
|
||||
.evYield_Attack = 1,
|
||||
#ifdef ITEM_EXPANSION
|
||||
.itemRare = ITEM_SHED_SHELL,
|
||||
#endif
|
||||
.itemRare = ITEM_SHED_SHELL,
|
||||
.genderRatio = PERCENT_FEMALE(50),
|
||||
.eggCycles = 15,
|
||||
.friendship = 35,
|
||||
@ -15009,9 +14903,7 @@ const struct BaseStats gBaseStats[] =
|
||||
.expYield = 171,
|
||||
.evYield_Defense = 1,
|
||||
.evYield_SpDefense = 1,
|
||||
#ifdef ITEM_EXPANSION
|
||||
.itemRare = ITEM_SHED_SHELL,
|
||||
#endif
|
||||
.itemRare = ITEM_SHED_SHELL,
|
||||
.genderRatio = PERCENT_FEMALE(50),
|
||||
.eggCycles = 15,
|
||||
.friendship = 70,
|
||||
@ -15232,9 +15124,7 @@ const struct BaseStats gBaseStats[] =
|
||||
.expYield = 166,
|
||||
.evYield_Attack = 2,
|
||||
.itemCommon = ITEM_SILK_SCARF,
|
||||
#ifdef ITEM_EXPANSION
|
||||
.itemRare = ITEM_BLACK_SLUDGE,
|
||||
#endif
|
||||
.itemRare = ITEM_BLACK_SLUDGE,
|
||||
.genderRatio = PERCENT_FEMALE(50),
|
||||
.eggCycles = 20,
|
||||
.friendship = 70,
|
||||
@ -15872,9 +15762,7 @@ const struct BaseStats gBaseStats[] =
|
||||
.catchRate = 255,
|
||||
.expYield = 61,
|
||||
.evYield_Defense = 1,
|
||||
#ifdef ITEM_EXPANSION
|
||||
.itemRare = ITEM_STICKY_BARB,
|
||||
#endif
|
||||
.itemRare = ITEM_STICKY_BARB,
|
||||
.genderRatio = PERCENT_FEMALE(50),
|
||||
.eggCycles = 20,
|
||||
.friendship = 70,
|
||||
@ -15899,9 +15787,7 @@ const struct BaseStats gBaseStats[] =
|
||||
.catchRate = 90,
|
||||
.expYield = 171,
|
||||
.evYield_Defense = 2,
|
||||
#ifdef ITEM_EXPANSION
|
||||
.itemRare = ITEM_STICKY_BARB,
|
||||
#endif
|
||||
.itemRare = ITEM_STICKY_BARB,
|
||||
.genderRatio = PERCENT_FEMALE(50),
|
||||
.eggCycles = 20,
|
||||
.friendship = 70,
|
||||
@ -16502,9 +16388,7 @@ const struct BaseStats gBaseStats[] =
|
||||
.catchRate = 190,
|
||||
.expYield = 61,
|
||||
.evYield_Attack = 1,
|
||||
#ifdef ITEM_EXPANSION
|
||||
.itemRare = ITEM_LIGHT_CLAY,
|
||||
#endif
|
||||
.itemRare = ITEM_LIGHT_CLAY,
|
||||
.genderRatio = MON_GENDERLESS,
|
||||
.eggCycles = 25,
|
||||
.friendship = 70,
|
||||
@ -16529,9 +16413,7 @@ const struct BaseStats gBaseStats[] =
|
||||
.catchRate = 90,
|
||||
.expYield = 169,
|
||||
.evYield_Attack = 2,
|
||||
#ifdef ITEM_EXPANSION
|
||||
.itemRare = ITEM_LIGHT_CLAY,
|
||||
#endif
|
||||
.itemRare = ITEM_LIGHT_CLAY,
|
||||
.genderRatio = MON_GENDERLESS,
|
||||
.eggCycles = 25,
|
||||
.friendship = 70,
|
||||
@ -18379,9 +18261,7 @@ const struct BaseStats gBaseStats[] =
|
||||
.catchRate = 45,
|
||||
.expYield = 60,
|
||||
.evYield_SpDefense = 1,
|
||||
#ifdef ITEM_EXPANSION
|
||||
.itemRare = ITEM_SHED_SHELL,
|
||||
#endif
|
||||
.itemRare = ITEM_SHED_SHELL,
|
||||
.genderRatio = PERCENT_FEMALE(50),
|
||||
.eggCycles = 40,
|
||||
.friendship = 35,
|
||||
@ -18406,9 +18286,7 @@ const struct BaseStats gBaseStats[] =
|
||||
.catchRate = 45,
|
||||
.expYield = 158,
|
||||
.evYield_SpDefense = 2,
|
||||
#ifdef ITEM_EXPANSION
|
||||
.itemRare = ITEM_SHED_SHELL,
|
||||
#endif
|
||||
.itemRare = ITEM_SHED_SHELL,
|
||||
.genderRatio = PERCENT_FEMALE(50),
|
||||
.eggCycles = 40,
|
||||
.friendship = 35,
|
||||
@ -19133,9 +19011,7 @@ const struct BaseStats gBaseStats[] =
|
||||
.catchRate = 120,
|
||||
.expYield = 140,
|
||||
.evYield_Defense = 2,
|
||||
#ifdef ITEM_EXPANSION
|
||||
.itemRare = ITEM_CELL_BATTERY,
|
||||
#endif
|
||||
.itemRare = ITEM_CELL_BATTERY,
|
||||
.genderRatio = PERCENT_FEMALE(50),
|
||||
.eggCycles = 15,
|
||||
.friendship = 70,
|
||||
@ -19386,9 +19262,7 @@ const struct BaseStats gBaseStats[] =
|
||||
.catchRate = 190,
|
||||
.expYield = 77,
|
||||
.evYield_Attack = 1,
|
||||
#ifdef ITEM_EXPANSION
|
||||
.itemRare = ITEM_LIGHT_CLAY,
|
||||
#endif
|
||||
.itemRare = ITEM_LIGHT_CLAY,
|
||||
.genderRatio = PERCENT_FEMALE(50),
|
||||
.eggCycles = 20,
|
||||
.friendship = 70,
|
||||
@ -19413,9 +19287,7 @@ const struct BaseStats gBaseStats[] =
|
||||
.catchRate = 60,
|
||||
.expYield = 175,
|
||||
.evYield_Attack = 2,
|
||||
#ifdef ITEM_EXPANSION
|
||||
.itemRare = ITEM_LIGHT_CLAY,
|
||||
#endif
|
||||
.itemRare = ITEM_LIGHT_CLAY,
|
||||
.genderRatio = PERCENT_FEMALE(50),
|
||||
.eggCycles = 20,
|
||||
.friendship = 70,
|
||||
@ -19690,9 +19562,7 @@ const struct BaseStats gBaseStats[] =
|
||||
.catchRate = 235,
|
||||
.expYield = 42,
|
||||
.evYield_HP = 1,
|
||||
#ifdef ITEM_EXPANSION
|
||||
.itemRare = ITEM_GRASSY_SEED,
|
||||
#endif
|
||||
.itemRare = ITEM_GRASSY_SEED,
|
||||
.genderRatio = MON_FEMALE,
|
||||
.eggCycles = 20,
|
||||
.friendship = 70,
|
||||
@ -19717,9 +19587,7 @@ const struct BaseStats gBaseStats[] =
|
||||
.catchRate = 120,
|
||||
.expYield = 102,
|
||||
.evYield_Speed = 2,
|
||||
#ifdef ITEM_EXPANSION
|
||||
.itemRare = ITEM_GRASSY_SEED,
|
||||
#endif
|
||||
.itemRare = ITEM_GRASSY_SEED,
|
||||
.genderRatio = MON_FEMALE,
|
||||
.eggCycles = 20,
|
||||
.friendship = 70,
|
||||
@ -19744,9 +19612,7 @@ const struct BaseStats gBaseStats[] =
|
||||
.catchRate = 45,
|
||||
.expYield = 230,
|
||||
.evYield_Attack = 3,
|
||||
#ifdef ITEM_EXPANSION
|
||||
.itemCommon = ITEM_GRASSY_SEED,
|
||||
#endif
|
||||
.itemCommon = ITEM_GRASSY_SEED,
|
||||
.genderRatio = MON_FEMALE,
|
||||
.eggCycles = 20,
|
||||
.friendship = 70,
|
||||
@ -19771,9 +19637,7 @@ const struct BaseStats gBaseStats[] =
|
||||
.catchRate = 60,
|
||||
.expYield = 170,
|
||||
.evYield_SpDefense = 2,
|
||||
#ifdef ITEM_EXPANSION
|
||||
.itemRare = ITEM_MISTY_SEED,
|
||||
#endif
|
||||
.itemRare = ITEM_MISTY_SEED,
|
||||
.genderRatio = PERCENT_FEMALE(75),
|
||||
.eggCycles = 20,
|
||||
.friendship = 70,
|
||||
@ -20046,9 +19910,7 @@ const struct BaseStats gBaseStats[] =
|
||||
.catchRate = 180,
|
||||
.expYield = 152,
|
||||
.evYield_Attack = 2,
|
||||
#ifdef ITEM_EXPANSION
|
||||
.itemRare = ITEM_ELECTRIC_SEED,
|
||||
#endif
|
||||
.itemRare = ITEM_ELECTRIC_SEED,
|
||||
.genderRatio = PERCENT_FEMALE(50),
|
||||
.eggCycles = 10,
|
||||
.friendship = 70,
|
||||
@ -20075,9 +19937,7 @@ const struct BaseStats gBaseStats[] =
|
||||
.catchRate = 80,
|
||||
.expYield = 166,
|
||||
.evYield_Attack = 2,
|
||||
#ifdef ITEM_EXPANSION
|
||||
.itemRare = ITEM_RAZOR_FANG,
|
||||
#endif
|
||||
.itemRare = ITEM_RAZOR_FANG,
|
||||
.genderRatio = PERCENT_FEMALE(50),
|
||||
.eggCycles = 15,
|
||||
.friendship = 70,
|
||||
@ -20151,9 +20011,7 @@ const struct BaseStats gBaseStats[] =
|
||||
.catchRate = 45,
|
||||
.expYield = 60,
|
||||
.evYield_Defense = 1,
|
||||
#ifdef ITEM_EXPANSION
|
||||
.itemRare = ITEM_RAZOR_CLAW,
|
||||
#endif
|
||||
.itemRare = ITEM_RAZOR_CLAW,
|
||||
.genderRatio = PERCENT_FEMALE(50),
|
||||
.eggCycles = 40,
|
||||
.friendship = 70,
|
||||
@ -20178,9 +20036,7 @@ const struct BaseStats gBaseStats[] =
|
||||
.catchRate = 45,
|
||||
.expYield = 147,
|
||||
.evYield_Defense = 2,
|
||||
#ifdef ITEM_EXPANSION
|
||||
.itemRare = ITEM_RAZOR_CLAW,
|
||||
#endif
|
||||
.itemRare = ITEM_RAZOR_CLAW,
|
||||
.genderRatio = PERCENT_FEMALE(50),
|
||||
.eggCycles = 40,
|
||||
.friendship = 70,
|
||||
@ -20205,9 +20061,7 @@ const struct BaseStats gBaseStats[] =
|
||||
.catchRate = 45,
|
||||
.expYield = 270,
|
||||
.evYield_Defense = 3,
|
||||
#ifdef ITEM_EXPANSION
|
||||
.itemCommon = ITEM_RAZOR_CLAW,
|
||||
#endif
|
||||
.itemCommon = ITEM_RAZOR_CLAW,
|
||||
.genderRatio = PERCENT_FEMALE(50),
|
||||
.eggCycles = 40,
|
||||
.friendship = 70,
|
||||
@ -21203,9 +21057,7 @@ const struct BaseStats gBaseStats[] =
|
||||
.catchRate = 120,
|
||||
.expYield = 117,
|
||||
.evYield_SpDefense = 2,
|
||||
#ifdef ITEM_EXPANSION
|
||||
.itemRare = ITEM_PSYCHIC_SEED,
|
||||
#endif
|
||||
.itemRare = ITEM_PSYCHIC_SEED,
|
||||
.genderRatio = PERCENT_FEMALE(50),
|
||||
.eggCycles = 15,
|
||||
.friendship = 70,
|
||||
@ -21230,9 +21082,7 @@ const struct BaseStats gBaseStats[] =
|
||||
.catchRate = 45,
|
||||
.expYield = 253,
|
||||
.evYield_SpDefense = 3,
|
||||
#ifdef ITEM_EXPANSION
|
||||
.itemRare = ITEM_PSYCHIC_SEED,
|
||||
#endif
|
||||
.itemRare = ITEM_PSYCHIC_SEED,
|
||||
.genderRatio = PERCENT_FEMALE(50),
|
||||
.eggCycles = 15,
|
||||
.friendship = 70,
|
||||
@ -22229,9 +22079,7 @@ const struct BaseStats gBaseStats[] =
|
||||
.catchRate = 190,
|
||||
.expYield = 37,
|
||||
.evYield_SpAttack = 1,
|
||||
#ifdef ITEM_EXPANSION
|
||||
.itemRare = ITEM_SNOWBALL,
|
||||
#endif
|
||||
.itemRare = ITEM_SNOWBALL,
|
||||
.genderRatio = PERCENT_FEMALE(50),
|
||||
.eggCycles = 20,
|
||||
.friendship = 70,
|
||||
@ -22354,9 +22202,7 @@ const struct BaseStats gBaseStats[] =
|
||||
.catchRate = 190,
|
||||
.expYield = 66,
|
||||
.evYield_Attack = 1,
|
||||
#ifdef ITEM_EXPANSION
|
||||
.itemRare = ITEM_LAGGING_TAIL,
|
||||
#endif
|
||||
.itemRare = ITEM_LAGGING_TAIL,
|
||||
.genderRatio = PERCENT_FEMALE(50),
|
||||
.eggCycles = 25,
|
||||
.friendship = 70,
|
||||
@ -22381,9 +22227,7 @@ const struct BaseStats gBaseStats[] =
|
||||
.catchRate = 90,
|
||||
.expYield = 175,
|
||||
.evYield_Attack = 2,
|
||||
#ifdef ITEM_EXPANSION
|
||||
.itemRare = ITEM_LAGGING_TAIL,
|
||||
#endif
|
||||
.itemRare = ITEM_LAGGING_TAIL,
|
||||
.genderRatio = PERCENT_FEMALE(50),
|
||||
.eggCycles = 25,
|
||||
.friendship = 70,
|
||||
@ -24162,9 +24006,7 @@ const struct BaseStats gBaseStats[] =
|
||||
.catchRate = 255,
|
||||
.expYield = 60,
|
||||
.evYield_Defense = 1,
|
||||
#ifdef ITEM_EXPANSION
|
||||
.itemRare = ITEM_GRIP_CLAW,
|
||||
#endif
|
||||
.itemRare = ITEM_GRIP_CLAW,
|
||||
.genderRatio = PERCENT_FEMALE(50),
|
||||
.eggCycles = 20,
|
||||
.friendship = 70,
|
||||
@ -24215,9 +24057,7 @@ const struct BaseStats gBaseStats[] =
|
||||
.catchRate = 190,
|
||||
.expYield = 60,
|
||||
.evYield_Speed = 1,
|
||||
#ifdef ITEM_EXPANSION
|
||||
.itemRare = ITEM_SNOWBALL,
|
||||
#endif
|
||||
.itemRare = ITEM_SNOWBALL,
|
||||
.genderRatio = PERCENT_FEMALE(75),
|
||||
.eggCycles = 20,
|
||||
.friendship = 70,
|
||||
@ -24373,9 +24213,7 @@ const struct BaseStats gBaseStats[] =
|
||||
.catchRate = 255,
|
||||
.expYield = 60,
|
||||
.evYield_Defense = 1,
|
||||
#ifdef ITEM_EXPANSION
|
||||
.itemRare = ITEM_CELL_BATTERY,
|
||||
#endif
|
||||
.itemRare = ITEM_CELL_BATTERY,
|
||||
.genderRatio = PERCENT_FEMALE(50),
|
||||
.eggCycles = 15,
|
||||
.friendship = 70,
|
||||
@ -24401,9 +24239,7 @@ const struct BaseStats gBaseStats[] =
|
||||
.catchRate = 120,
|
||||
.expYield = 137,
|
||||
.evYield_Defense = 2,
|
||||
#ifdef ITEM_EXPANSION
|
||||
.itemRare = ITEM_CELL_BATTERY,
|
||||
#endif
|
||||
.itemRare = ITEM_CELL_BATTERY,
|
||||
.genderRatio = PERCENT_FEMALE(50),
|
||||
.eggCycles = 15,
|
||||
.friendship = 70,
|
||||
@ -24454,9 +24290,7 @@ const struct BaseStats gBaseStats[] =
|
||||
.catchRate = 190,
|
||||
.expYield = 65,
|
||||
.evYield_HP = 1,
|
||||
#ifdef ITEM_EXPANSION
|
||||
.itemRare = ITEM_BLACK_SLUDGE,
|
||||
#endif
|
||||
.itemRare = ITEM_BLACK_SLUDGE,
|
||||
.genderRatio = PERCENT_FEMALE(50),
|
||||
.eggCycles = 20,
|
||||
.friendship = 70,
|
||||
@ -24709,9 +24543,7 @@ const struct BaseStats gBaseStats[] =
|
||||
.catchRate = 60,
|
||||
.expYield = 172,
|
||||
.evYield_Defense = 2,
|
||||
#ifdef ITEM_EXPANSION
|
||||
.itemRare = ITEM_MISTY_SEED,
|
||||
#endif
|
||||
.itemRare = ITEM_MISTY_SEED,
|
||||
.genderRatio = PERCENT_FEMALE(50),
|
||||
.eggCycles = 20,
|
||||
.friendship = 70,
|
||||
|
@ -322,59 +322,37 @@ const u8 gItemEffect_DireHit[8] = {
|
||||
};
|
||||
|
||||
const u8 gItemEffect_XAttack[8] = {
|
||||
#ifdef BATTLE_ENGINE
|
||||
[1] = ITEM1_X_ATTACK,
|
||||
#else
|
||||
[0] = 1, // ITEM0_X_ATTACK
|
||||
#endif
|
||||
[5] = ITEM5_FRIENDSHIP_LOW | ITEM5_FRIENDSHIP_MID,
|
||||
STAT_BOOST_FRIENDSHIP_CHANGE,
|
||||
};
|
||||
|
||||
const u8 gItemEffect_XDefense[8] = {
|
||||
#ifdef BATTLE_ENGINE
|
||||
[1] = ITEM1_X_DEFENSE,
|
||||
#else
|
||||
[1] = 1 << 4, // ITEM1_X_DEFEND
|
||||
#endif
|
||||
[5] = ITEM5_FRIENDSHIP_LOW | ITEM5_FRIENDSHIP_MID,
|
||||
STAT_BOOST_FRIENDSHIP_CHANGE,
|
||||
};
|
||||
|
||||
const u8 gItemEffect_XSpeed[8] = {
|
||||
#ifdef BATTLE_ENGINE
|
||||
[1] = ITEM1_X_SPEED,
|
||||
#else
|
||||
[1] = 1, // ITEM1_X_SPEED
|
||||
#endif
|
||||
[5] = ITEM5_FRIENDSHIP_LOW | ITEM5_FRIENDSHIP_MID,
|
||||
STAT_BOOST_FRIENDSHIP_CHANGE,
|
||||
};
|
||||
|
||||
const u8 gItemEffect_XAccuracy[8] = {
|
||||
#ifdef BATTLE_ENGINE
|
||||
[1] = ITEM1_X_ACCURACY,
|
||||
#else
|
||||
[2] = 1 << 4, // ITEM2_X_ACCURACY
|
||||
#endif
|
||||
[5] = ITEM5_FRIENDSHIP_LOW | ITEM5_FRIENDSHIP_MID,
|
||||
STAT_BOOST_FRIENDSHIP_CHANGE,
|
||||
};
|
||||
|
||||
const u8 gItemEffect_XSpecialAttack[8] = {
|
||||
#ifdef BATTLE_ENGINE
|
||||
[1] = ITEM1_X_SPATK,
|
||||
#else
|
||||
[2] = 1, // ITEM2_X_SPATK
|
||||
#endif
|
||||
[5] = ITEM5_FRIENDSHIP_LOW | ITEM5_FRIENDSHIP_MID,
|
||||
STAT_BOOST_FRIENDSHIP_CHANGE,
|
||||
};
|
||||
|
||||
const u8 gItemEffect_XSpecialDefense[8] = {
|
||||
#ifdef BATTLE_ENGINE
|
||||
[1] = ITEM1_X_SPDEF,
|
||||
#endif
|
||||
[5] = ITEM5_FRIENDSHIP_LOW | ITEM5_FRIENDSHIP_MID,
|
||||
STAT_BOOST_FRIENDSHIP_CHANGE,
|
||||
};
|
||||
|
@ -108,7 +108,7 @@ static const u8 sHeavyBallDesc[] = _(
|
||||
"Pokémon.");
|
||||
|
||||
static const u8 sDreamBallDesc[] = _(
|
||||
#if defined(BATTLE_ENGINE) && B_DREAM_BALL_MODIFIER >= GEN_8
|
||||
#if B_DREAM_BALL_MODIFIER >= GEN_8
|
||||
"A Ball that works\n"
|
||||
"well on sleeping\n"
|
||||
"Pokémon.");
|
||||
@ -634,7 +634,7 @@ static const u8 sEscapeRopeDesc[] = _(
|
||||
|
||||
// Battle items
|
||||
static const u8 sXAttackDesc[] = _(
|
||||
#if defined(BATTLE_ENGINE) && B_X_ITEMS_BUFF >= GEN_7
|
||||
#if B_X_ITEMS_BUFF >= GEN_7
|
||||
"Sharply raises stat\n"
|
||||
"Attack during\n"
|
||||
"one battle.");
|
||||
@ -645,7 +645,7 @@ static const u8 sXAttackDesc[] = _(
|
||||
#endif
|
||||
|
||||
static const u8 sXDefenseDesc[] = _(
|
||||
#if defined(BATTLE_ENGINE) && B_X_ITEMS_BUFF >= GEN_7
|
||||
#if B_X_ITEMS_BUFF >= GEN_7
|
||||
"Sharply raises stat\n"
|
||||
"Defense during\n"
|
||||
"one battle.");
|
||||
@ -656,7 +656,7 @@ static const u8 sXDefenseDesc[] = _(
|
||||
#endif
|
||||
|
||||
static const u8 sXSpAtkDesc[] = _(
|
||||
#if defined(BATTLE_ENGINE) && B_X_ITEMS_BUFF >= GEN_7
|
||||
#if B_X_ITEMS_BUFF >= GEN_7
|
||||
"Sharply raises stat\n"
|
||||
"Sp. Atk during\n"
|
||||
"one battle.");
|
||||
@ -667,7 +667,7 @@ static const u8 sXSpAtkDesc[] = _(
|
||||
#endif
|
||||
|
||||
static const u8 sXSpDefDesc[] = _(
|
||||
#if defined(BATTLE_ENGINE) && B_X_ITEMS_BUFF >= GEN_7
|
||||
#if B_X_ITEMS_BUFF >= GEN_7
|
||||
"Sharply raises stat\n"
|
||||
"Sp. Def during\n"
|
||||
"one battle.");
|
||||
@ -678,7 +678,7 @@ static const u8 sXSpDefDesc[] = _(
|
||||
#endif
|
||||
|
||||
static const u8 sXSpeedDesc[] = _(
|
||||
#if defined(BATTLE_ENGINE) && B_X_ITEMS_BUFF >= GEN_7
|
||||
#if B_X_ITEMS_BUFF >= GEN_7
|
||||
"Sharply raises stat\n"
|
||||
"Speed during\n"
|
||||
"one battle.");
|
||||
@ -689,7 +689,7 @@ static const u8 sXSpeedDesc[] = _(
|
||||
#endif
|
||||
|
||||
static const u8 sXAccuracyDesc[] = _(
|
||||
#if defined(BATTLE_ENGINE) && B_X_ITEMS_BUFF >= GEN_7
|
||||
#if B_X_ITEMS_BUFF >= GEN_7
|
||||
"Sharply raises move\n"
|
||||
"accuracy during\n"
|
||||
"one battle.");
|
||||
@ -2070,7 +2070,7 @@ static const u8 sDeepSeaToothDesc[] = _(
|
||||
"of Clamperl.");
|
||||
|
||||
static const u8 sSoulDewDesc[] = _(
|
||||
#if defined(BATTLE_ENGINE) && B_SOUL_DEW_BOOST >= GEN_7
|
||||
#if B_SOUL_DEW_BOOST >= GEN_7
|
||||
"Powers up Latios' &\n"
|
||||
"Latias' Psychic and\n"
|
||||
"Dragon-type moves.");
|
||||
@ -2405,7 +2405,7 @@ static const u8 sSootheBellDesc[] = _(
|
||||
"calms spirits and\n"
|
||||
"fosters friendship.");
|
||||
|
||||
#if defined(BATTLE_ENGINE) && B_MENTAL_HERB >= GEN_5
|
||||
#if B_MENTAL_HERB >= GEN_5
|
||||
static const u8 sMentalHerbDesc[] = _(
|
||||
"Snaps Pokémon out\n"
|
||||
"of move-binding\n"
|
||||
|
@ -4488,17 +4488,11 @@ void Task_AbilityPatch(u8 taskId)
|
||||
switch (tState)
|
||||
{
|
||||
case 0:
|
||||
|
||||
// If Hidden Abilities have been implemented without the use of Pokémon Expansion and added to the `abilities` field
|
||||
// as ability no. 3 (eg. {ABILITY_OVERGROW, ABILITY_NONE, ABILITY_CHLOROPHYLL} )
|
||||
// you can remove this #ifdef.
|
||||
#ifdef POKEMON_EXPANSION
|
||||
// Can't use.
|
||||
if (gBaseStats[tSpecies].abilities[tAbilityNum] == 0
|
||||
|| !tSpecies
|
||||
|| GetMonData(&gPlayerParty[tMonId], MON_DATA_ABILITY_NUM, NULL) > 1
|
||||
)
|
||||
#endif
|
||||
{
|
||||
gPartyMenuUseExitCallback = FALSE;
|
||||
PlaySE(SE_SELECT);
|
||||
@ -5544,11 +5538,7 @@ u8 GetItemEffectType(u16 item)
|
||||
else
|
||||
itemEffect = gItemEffectTable[item - ITEM_POTION];
|
||||
|
||||
#ifndef ITEM_EXPANSION
|
||||
if ((itemEffect[0] & (ITEM0_DIRE_HIT | ITEM0_X_ATTACK)) || itemEffect[1] || itemEffect[2] || (itemEffect[3] & ITEM3_GUARD_SPEC))
|
||||
#else
|
||||
if ((itemEffect[0] & ITEM0_DIRE_HIT) || itemEffect[1] || (itemEffect[3] & ITEM3_GUARD_SPEC))
|
||||
#endif
|
||||
return ITEM_EFFECT_X_ITEM;
|
||||
else if (itemEffect[0] & ITEM0_SACRED_ASH)
|
||||
return ITEM_EFFECT_SACRED_ASH;
|
||||
|
107
src/pokemon.c
107
src/pokemon.c
@ -3065,11 +3065,7 @@ static const u8 sGetMonDataEVConstants[] =
|
||||
// For stat-raising items
|
||||
static const u8 sStatsToRaise[] =
|
||||
{
|
||||
#ifndef ITEM_EXPANSION
|
||||
STAT_ATK, STAT_ATK, STAT_SPEED, STAT_DEF, STAT_SPATK, STAT_ACC
|
||||
#else
|
||||
STAT_ATK, STAT_ATK, STAT_DEF, STAT_SPEED, STAT_SPATK, STAT_SPDEF, STAT_ACC
|
||||
#endif
|
||||
};
|
||||
|
||||
// 3 modifiers each for how much to change friendship for different ranges
|
||||
@ -5524,80 +5520,8 @@ bool8 PokemonUseItemEffects(struct Pokemon *mon, u16 item, u8 partyIndex, u8 mov
|
||||
gBattleMons[gActiveBattler].status2 |= STATUS2_FOCUS_ENERGY;
|
||||
retVal = FALSE;
|
||||
}
|
||||
#ifndef ITEM_EXPANSION
|
||||
// X Attack
|
||||
if ((itemEffect[i] & ITEM0_X_ATTACK)
|
||||
&& gBattleMons[gActiveBattler].statStages[STAT_ATK] < MAX_STAT_STAGE)
|
||||
{
|
||||
if (B_X_ITEMS_BUFF >= GEN_7)
|
||||
gBattleMons[gActiveBattler].statStages[STAT_ATK] += 2;
|
||||
else
|
||||
gBattleMons[gActiveBattler].statStages[STAT_ATK] += itemEffect[i] & ITEM0_X_ATTACK;
|
||||
if (gBattleMons[gActiveBattler].statStages[STAT_ATK] > MAX_STAT_STAGE)
|
||||
gBattleMons[gActiveBattler].statStages[STAT_ATK] = MAX_STAT_STAGE;
|
||||
retVal = FALSE;
|
||||
}
|
||||
#endif
|
||||
break;
|
||||
|
||||
// Handle ITEM1 effects (in-battle stat boosting effects)
|
||||
#ifndef ITEM_EXPANSION
|
||||
case 1:
|
||||
// X Defend
|
||||
if ((itemEffect[i] & ITEM1_X_DEFEND)
|
||||
&& gBattleMons[gActiveBattler].statStages[STAT_DEF] < MAX_STAT_STAGE)
|
||||
{
|
||||
if (B_X_ITEMS_BUFF >= GEN_7)
|
||||
gBattleMons[gActiveBattler].statStages[STAT_DEF] += 2;
|
||||
else
|
||||
gBattleMons[gActiveBattler].statStages[STAT_DEF] += (itemEffect[i] & ITEM1_X_DEFEND) >> 4;
|
||||
if (gBattleMons[gActiveBattler].statStages[STAT_DEF] > MAX_STAT_STAGE)
|
||||
gBattleMons[gActiveBattler].statStages[STAT_DEF] = MAX_STAT_STAGE;
|
||||
retVal = FALSE;
|
||||
}
|
||||
|
||||
// X Speed
|
||||
if ((itemEffect[i] & ITEM1_X_SPEED)
|
||||
&& gBattleMons[gActiveBattler].statStages[STAT_SPEED] < MAX_STAT_STAGE)
|
||||
{
|
||||
if (B_X_ITEMS_BUFF >= GEN_7)
|
||||
gBattleMons[gActiveBattler].statStages[STAT_SPEED] += 2;
|
||||
else
|
||||
gBattleMons[gActiveBattler].statStages[STAT_SPEED] += itemEffect[i] & ITEM1_X_SPEED;
|
||||
if (gBattleMons[gActiveBattler].statStages[STAT_SPEED] > MAX_STAT_STAGE)
|
||||
gBattleMons[gActiveBattler].statStages[STAT_SPEED] = MAX_STAT_STAGE;
|
||||
retVal = FALSE;
|
||||
}
|
||||
break;
|
||||
// Handle ITEM2 effects (more stat boosting effects)
|
||||
case 2:
|
||||
// X Accuracy
|
||||
if ((itemEffect[i] & ITEM2_X_ACCURACY)
|
||||
&& gBattleMons[gActiveBattler].statStages[STAT_ACC] < MAX_STAT_STAGE)
|
||||
{
|
||||
if (B_X_ITEMS_BUFF >= GEN_7)
|
||||
gBattleMons[gActiveBattler].statStages[STAT_ACC] += 2;
|
||||
else
|
||||
gBattleMons[gActiveBattler].statStages[STAT_ACC] += (itemEffect[i] & ITEM2_X_ACCURACY) >> 4;
|
||||
if (gBattleMons[gActiveBattler].statStages[STAT_ACC] > MAX_STAT_STAGE)
|
||||
gBattleMons[gActiveBattler].statStages[STAT_ACC] = MAX_STAT_STAGE;
|
||||
retVal = FALSE;
|
||||
}
|
||||
|
||||
// X Sp Attack
|
||||
if ((itemEffect[i] & ITEM2_X_SPATK)
|
||||
&& gBattleMons[gActiveBattler].statStages[STAT_SPATK] < MAX_STAT_STAGE)
|
||||
{
|
||||
if (B_X_ITEMS_BUFF >= GEN_7)
|
||||
gBattleMons[gActiveBattler].statStages[STAT_SPATK] += 2;
|
||||
else
|
||||
gBattleMons[gActiveBattler].statStages[STAT_SPATK] += itemEffect[i] & ITEM2_X_SPATK;
|
||||
if (gBattleMons[gActiveBattler].statStages[STAT_SPATK] > MAX_STAT_STAGE)
|
||||
gBattleMons[gActiveBattler].statStages[STAT_SPATK] = MAX_STAT_STAGE;
|
||||
retVal = FALSE;
|
||||
}
|
||||
break;
|
||||
#else
|
||||
// Handle ITEM1 effects (in-battle stat boosting effects)
|
||||
case 1:
|
||||
// X Attack
|
||||
@ -5681,7 +5605,7 @@ bool8 PokemonUseItemEffects(struct Pokemon *mon, u16 item, u8 partyIndex, u8 mov
|
||||
// Formerly used by the item effects of the X Sp. Atk and the X Accuracy
|
||||
case 2:
|
||||
break;
|
||||
#endif
|
||||
|
||||
// Handle ITEM3 effects (Guard Spec, Rare Candy, cure status)
|
||||
case 3:
|
||||
// Guard Spec
|
||||
@ -6263,32 +6187,6 @@ u8 *UseStatIncreaseItem(u16 itemId)
|
||||
|
||||
gPotentialItemEffectBattler = gBattlerInMenuId;
|
||||
|
||||
#ifndef ITEM_EXPANSION
|
||||
for (i = 0; i < 3; i++)
|
||||
{
|
||||
if (itemEffect[i] & (ITEM0_X_ATTACK | ITEM1_X_SPEED | ITEM2_X_SPATK))
|
||||
BufferStatRoseMessage(i * 2);
|
||||
|
||||
if (itemEffect[i] & (ITEM0_DIRE_HIT | ITEM1_X_DEFEND | ITEM2_X_ACCURACY))
|
||||
{
|
||||
if (i != 0) // Dire Hit is the only ITEM0 above
|
||||
{
|
||||
BufferStatRoseMessage(i * 2 + 1);
|
||||
}
|
||||
else
|
||||
{
|
||||
gBattlerAttacker = gBattlerInMenuId;
|
||||
BattleStringExpandPlaceholdersToDisplayedString(gText_PkmnGettingPumped);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (itemEffect[3] & ITEM3_GUARD_SPEC)
|
||||
{
|
||||
gBattlerAttacker = gBattlerInMenuId;
|
||||
BattleStringExpandPlaceholdersToDisplayedString(gText_PkmnShroudedInMist);
|
||||
}
|
||||
#else
|
||||
if (itemEffect[0] & ITEM0_DIRE_HIT)
|
||||
{
|
||||
gBattlerAttacker = gBattlerInMenuId;
|
||||
@ -6322,7 +6220,6 @@ u8 *UseStatIncreaseItem(u16 itemId)
|
||||
gBattlerAttacker = gBattlerInMenuId;
|
||||
BattleStringExpandPlaceholdersToDisplayedString(gText_PkmnShroudedInMist);
|
||||
}
|
||||
#endif
|
||||
|
||||
return gDisplayedStringBattle;
|
||||
}
|
||||
@ -6630,7 +6527,6 @@ u16 GetEvolutionTargetSpecies(struct Pokemon *mon, u8 mode, u16 evolutionItem, s
|
||||
}
|
||||
}
|
||||
break;
|
||||
#ifdef BATTLE_ENGINE
|
||||
// Battle evolution without leveling; party slot is being passed into the evolutionItem arg.
|
||||
case EVO_MODE_BATTLE_SPECIAL:
|
||||
for (i = 0; i < EVOS_PER_MON; i++)
|
||||
@ -6644,7 +6540,6 @@ u16 GetEvolutionTargetSpecies(struct Pokemon *mon, u8 mode, u16 evolutionItem, s
|
||||
}
|
||||
}
|
||||
break;
|
||||
#endif
|
||||
// Overworld evolution without leveling; evolution method is being passed into the evolutionItem arg.
|
||||
case EVO_MODE_OVERWORLD_SPECIAL:
|
||||
for (i = 0; i < EVOS_PER_MON; i++)
|
||||
|
Loading…
x
Reference in New Issue
Block a user