mirror of
https://github.com/pret/pokefirered.git
synced 2026-09-30 12:59:43 -05:00
added fairy type
This commit is contained in:
1
.gitignore
vendored
1
.gitignore
vendored
@@ -44,7 +44,6 @@ ld_script_ruby.txt
|
||||
ld_script_sapphire.txt
|
||||
sound/**/*.bin
|
||||
sound/songs/midi/*.s
|
||||
src/data/items.h
|
||||
src/data/wild_encounters.h
|
||||
src/data/region_map/region_map_entries.h
|
||||
src/data/region_map/region_map_entry_strings.h
|
||||
|
||||
@@ -1230,6 +1230,7 @@ AI_CV_SpAtkDown_SpecialTypeList::
|
||||
.byte TYPE_ICE
|
||||
.byte TYPE_DRAGON
|
||||
.byte TYPE_DARK
|
||||
.byte TYPE_FAIRY
|
||||
.byte -1
|
||||
|
||||
AI_CV_SpDefDown::
|
||||
@@ -1471,6 +1472,7 @@ AI_CV_LightScreen_SpecialTypeList::
|
||||
.byte TYPE_ICE
|
||||
.byte TYPE_DRAGON
|
||||
.byte TYPE_DARK
|
||||
.byte TYPE_FAIRY
|
||||
.byte -1
|
||||
|
||||
AI_CV_Rest::
|
||||
@@ -2305,6 +2307,7 @@ AI_CV_MirrorCoat_SpecialTypeList::
|
||||
.byte TYPE_ICE
|
||||
.byte TYPE_DRAGON
|
||||
.byte TYPE_DARK
|
||||
.byte TYPE_FAIRY
|
||||
.byte -1
|
||||
|
||||
AI_CV_ChargeUpMove::
|
||||
|
||||
@@ -69,6 +69,8 @@ ViridianCity_Mart_Items::
|
||||
.2byte ITEM_POTION
|
||||
.2byte ITEM_ANTIDOTE
|
||||
.2byte ITEM_PARALYZE_HEAL
|
||||
.2byte ITEM_RARE_CANDY
|
||||
.2byte ITEM_MASTER_BALL
|
||||
.2byte ITEM_NONE
|
||||
release
|
||||
end
|
||||
|
||||
Binary file not shown.
|
Before Width: | Height: | Size: 20 KiB After Width: | Height: | Size: 26 KiB |
@@ -57,7 +57,7 @@ extern const u8 gStatusConditionString_IceJpn[8];
|
||||
extern const u8 gStatusConditionString_ConfusionJpn[8];
|
||||
extern const u8 gStatusConditionString_LoveJpn[8];
|
||||
extern const u8 *const gStatusConditionStringsTable[7][2];
|
||||
extern const u8 gTypeEffectiveness[336];
|
||||
extern const u8 gTypeEffectiveness[372];
|
||||
extern const struct TrainerMoney gTrainerMoneyTable[];
|
||||
extern const u8 *const gAbilityDescriptionPointers[ABILITIES_COUNT];
|
||||
extern const u8 gAbilityNames[ABILITIES_COUNT][ABILITY_NAME_LENGTH + 1];
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
#define GUARD_CONFIG_POKEMON_H
|
||||
|
||||
// Species data settings
|
||||
#define P_UPDATED_TYPES GEN_3 // Since Gen 6, several Pokémon were changed to be partially or fully Fairy type.
|
||||
#define P_UPDATED_TYPES GEN_LATEST // Since Gen 6, several Pokémon were changed to be partially or fully Fairy type.
|
||||
#define P_UPDATED_STATS GEN_LATEST // Since Gen 6, Pokémon stats are updated with each passing generation.
|
||||
#define P_UPDATED_ABILITIES GEN_LATEST // Since Gen 6, certain Pokémon have their abilities changed.
|
||||
#define P_UPDATED_EGG_GROUPS GEN_LATEST // Since Gen 8, certain Pokémon have gained new egg groups.
|
||||
|
||||
@@ -69,4 +69,7 @@
|
||||
#define HOLD_EFFECT_THICK_CLUB 65
|
||||
#define HOLD_EFFECT_STICK 66
|
||||
|
||||
|
||||
#define HOLD_EFFECT_FAIRY_POWER 139
|
||||
|
||||
#endif // GUARD_HOLD_EFFECTS_H
|
||||
|
||||
@@ -112,7 +112,8 @@
|
||||
#define TYPE_ICE 15
|
||||
#define TYPE_DRAGON 16
|
||||
#define TYPE_DARK 17
|
||||
#define NUMBER_OF_MON_TYPES 18
|
||||
#define TYPE_FAIRY 18
|
||||
#define NUMBER_OF_MON_TYPES 19
|
||||
|
||||
// Pokemon egg groups
|
||||
#define EGG_GROUP_NONE 0
|
||||
|
||||
@@ -7,8 +7,8 @@ typedef void (*ItemUseFunc)(u8);
|
||||
|
||||
struct Item
|
||||
{
|
||||
u8 name[ITEM_NAME_LENGTH];
|
||||
u16 itemId;
|
||||
u8 name[ITEM_NAME_LENGTH];
|
||||
u16 price;
|
||||
u8 holdEffect;
|
||||
u8 holdEffectParam;
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
# JSON files are run through jsonproc, which is a tool that converts JSON data to an output file
|
||||
# based on an Inja template. https://github.com/pantor/inja
|
||||
|
||||
AUTO_GEN_TARGETS += $(DATA_C_SUBDIR)/items.h
|
||||
# AUTO_GEN_TARGETS += $(DATA_C_SUBDIR)/items.h
|
||||
|
||||
$(DATA_C_SUBDIR)/items.h: $(DATA_C_SUBDIR)/items.json $(DATA_C_SUBDIR)/items.json.txt
|
||||
$(JSONPROC) $^ $@
|
||||
# $(DATA_C_SUBDIR)/items.h: $(DATA_C_SUBDIR)/items.json $(DATA_C_SUBDIR)/items.json.txt
|
||||
# $(JSONPROC) $^ $@
|
||||
|
||||
$(C_BUILDDIR)/item.o: c_dep += $(DATA_C_SUBDIR)/items.h
|
||||
# $(C_BUILDDIR)/item.o: c_dep += $(DATA_C_SUBDIR)/items.h
|
||||
|
||||
AUTO_GEN_TARGETS += $(DATA_C_SUBDIR)/wild_encounters.h
|
||||
$(DATA_C_SUBDIR)/wild_encounters.h: $(DATA_C_SUBDIR)/wild_encounters.json $(DATA_C_SUBDIR)/wild_encounters.json.txt
|
||||
|
||||
@@ -309,7 +309,7 @@ static const s8 sPlayerThrowXTranslation[] = { -32, -16, -16, -32, -32, 0, 0, 0
|
||||
// 10 is ×1.0 TYPE_MUL_NORMAL
|
||||
// 05 is ×0.5 TYPE_MUL_NOT_EFFECTIVE
|
||||
// 00 is ×0.0 TYPE_MUL_NO_EFFECT
|
||||
const u8 gTypeEffectiveness[336] =
|
||||
const u8 gTypeEffectiveness[372] =
|
||||
{
|
||||
TYPE_NORMAL, TYPE_ROCK, TYPE_MUL_NOT_EFFECTIVE,
|
||||
TYPE_NORMAL, TYPE_STEEL, TYPE_MUL_NOT_EFFECTIVE,
|
||||
@@ -360,12 +360,14 @@ const u8 gTypeEffectiveness[336] =
|
||||
TYPE_FIGHTING, TYPE_ROCK, TYPE_MUL_SUPER_EFFECTIVE,
|
||||
TYPE_FIGHTING, TYPE_DARK, TYPE_MUL_SUPER_EFFECTIVE,
|
||||
TYPE_FIGHTING, TYPE_STEEL, TYPE_MUL_SUPER_EFFECTIVE,
|
||||
TYPE_FIGHTING, TYPE_FAIRY, TYPE_MUL_NOT_EFFECTIVE,
|
||||
TYPE_POISON, TYPE_GRASS, TYPE_MUL_SUPER_EFFECTIVE,
|
||||
TYPE_POISON, TYPE_POISON, TYPE_MUL_NOT_EFFECTIVE,
|
||||
TYPE_POISON, TYPE_GROUND, TYPE_MUL_NOT_EFFECTIVE,
|
||||
TYPE_POISON, TYPE_ROCK, TYPE_MUL_NOT_EFFECTIVE,
|
||||
TYPE_POISON, TYPE_GHOST, TYPE_MUL_NOT_EFFECTIVE,
|
||||
TYPE_POISON, TYPE_STEEL, TYPE_MUL_NO_EFFECT,
|
||||
TYPE_POISON, TYPE_FAIRY, TYPE_MUL_SUPER_EFFECTIVE,
|
||||
TYPE_GROUND, TYPE_FIRE, TYPE_MUL_SUPER_EFFECTIVE,
|
||||
TYPE_GROUND, TYPE_ELECTRIC, TYPE_MUL_SUPER_EFFECTIVE,
|
||||
TYPE_GROUND, TYPE_GRASS, TYPE_MUL_NOT_EFFECTIVE,
|
||||
@@ -394,6 +396,7 @@ const u8 gTypeEffectiveness[336] =
|
||||
TYPE_BUG, TYPE_GHOST, TYPE_MUL_NOT_EFFECTIVE,
|
||||
TYPE_BUG, TYPE_DARK, TYPE_MUL_SUPER_EFFECTIVE,
|
||||
TYPE_BUG, TYPE_STEEL, TYPE_MUL_NOT_EFFECTIVE,
|
||||
TYPE_BUG, TYPE_FAIRY, TYPE_MUL_NOT_EFFECTIVE,
|
||||
TYPE_ROCK, TYPE_FIRE, TYPE_MUL_SUPER_EFFECTIVE,
|
||||
TYPE_ROCK, TYPE_ICE, TYPE_MUL_SUPER_EFFECTIVE,
|
||||
TYPE_ROCK, TYPE_FIGHTING, TYPE_MUL_NOT_EFFECTIVE,
|
||||
@@ -408,17 +411,26 @@ const u8 gTypeEffectiveness[336] =
|
||||
TYPE_GHOST, TYPE_GHOST, TYPE_MUL_SUPER_EFFECTIVE,
|
||||
TYPE_DRAGON, TYPE_DRAGON, TYPE_MUL_SUPER_EFFECTIVE,
|
||||
TYPE_DRAGON, TYPE_STEEL, TYPE_MUL_NOT_EFFECTIVE,
|
||||
TYPE_DRAGON, TYPE_FAIRY, TYPE_MUL_NO_EFFECT,
|
||||
TYPE_DARK, TYPE_FIGHTING, TYPE_MUL_NOT_EFFECTIVE,
|
||||
TYPE_DARK, TYPE_PSYCHIC, TYPE_MUL_SUPER_EFFECTIVE,
|
||||
TYPE_DARK, TYPE_GHOST, TYPE_MUL_SUPER_EFFECTIVE,
|
||||
TYPE_DARK, TYPE_DARK, TYPE_MUL_NOT_EFFECTIVE,
|
||||
TYPE_DARK, TYPE_STEEL, TYPE_MUL_NOT_EFFECTIVE,
|
||||
TYPE_DARK, TYPE_FAIRY, TYPE_MUL_NOT_EFFECTIVE,
|
||||
TYPE_STEEL, TYPE_FIRE, TYPE_MUL_NOT_EFFECTIVE,
|
||||
TYPE_STEEL, TYPE_WATER, TYPE_MUL_NOT_EFFECTIVE,
|
||||
TYPE_STEEL, TYPE_ELECTRIC, TYPE_MUL_NOT_EFFECTIVE,
|
||||
TYPE_STEEL, TYPE_ICE, TYPE_MUL_SUPER_EFFECTIVE,
|
||||
TYPE_STEEL, TYPE_ROCK, TYPE_MUL_SUPER_EFFECTIVE,
|
||||
TYPE_STEEL, TYPE_STEEL, TYPE_MUL_NOT_EFFECTIVE,
|
||||
TYPE_STEEL, TYPE_FAIRY, TYPE_MUL_SUPER_EFFECTIVE,
|
||||
TYPE_FAIRY, TYPE_FIGHTING, TYPE_MUL_SUPER_EFFECTIVE,
|
||||
TYPE_FAIRY, TYPE_POISON, TYPE_MUL_NOT_EFFECTIVE,
|
||||
TYPE_FAIRY, TYPE_STEEL, TYPE_MUL_NOT_EFFECTIVE,
|
||||
TYPE_FAIRY, TYPE_FIRE, TYPE_MUL_NOT_EFFECTIVE,
|
||||
TYPE_FAIRY, TYPE_DRAGON, TYPE_MUL_SUPER_EFFECTIVE,
|
||||
TYPE_FAIRY, TYPE_DARK, TYPE_MUL_SUPER_EFFECTIVE,
|
||||
TYPE_FORESIGHT, TYPE_FORESIGHT, TYPE_MUL_NO_EFFECT,
|
||||
TYPE_NORMAL, TYPE_GHOST, TYPE_MUL_NO_EFFECT,
|
||||
TYPE_FIGHTING, TYPE_GHOST, TYPE_MUL_NO_EFFECT,
|
||||
@@ -445,6 +457,7 @@ const u8 gTypeNames[NUMBER_OF_MON_TYPES][TYPE_NAME_LENGTH + 1] =
|
||||
[TYPE_ICE] = _("ICE"),
|
||||
[TYPE_DRAGON] = _("DRAGON"),
|
||||
[TYPE_DARK] = _("DARK"),
|
||||
[TYPE_FAIRY] = _("FAIRY"),
|
||||
};
|
||||
|
||||
// This is a factor in how much money you get for beating a trainer.
|
||||
|
||||
@@ -1349,6 +1349,7 @@ const u8 gText_APsychicMove[] = _("a PSYCHIC move");
|
||||
const u8 gText_AnIceMove[] = _("an ICE move");
|
||||
const u8 gText_ADragonMove[] = _("a DRAGON move");
|
||||
const u8 gText_ADarkMove[] = _("a DARK move");
|
||||
const u8 gText_AFairyMove[] = _("a FAIRY move");
|
||||
const u8 gText_TimeBoard[] = _("TIME BOARD");
|
||||
const u8 gText_ClearTime[] = _("CLEAR TIME"); // Unused
|
||||
const u8 gText_XMinYZSec[] = _("{STR_VAR_1}MIN. {STR_VAR_2}.{STR_VAR_3}SEC.");
|
||||
@@ -1392,7 +1393,8 @@ static const u8 *const sATypeMove_Table[NUMBER_OF_MON_TYPES] =
|
||||
[TYPE_PSYCHIC] = gText_APsychicMove,
|
||||
[TYPE_ICE] = gText_AnIceMove,
|
||||
[TYPE_DRAGON] = gText_ADragonMove,
|
||||
[TYPE_DARK] = gText_ADarkMove
|
||||
[TYPE_DARK] = gText_ADarkMove,
|
||||
[TYPE_FAIRY] = gText_AFairyMove,
|
||||
};
|
||||
|
||||
static const u16 sGrammarMoveUsedTable[] =
|
||||
|
||||
@@ -7636,9 +7636,9 @@ const struct BattleMove gBattleMoves[MOVES_COUNT_DYNAMAX] =
|
||||
|
||||
[MOVE_DISARMING_VOICE] =
|
||||
{
|
||||
.effect = EFFECT_HIT,
|
||||
.effect = EFFECT_ALWAYS_HIT,
|
||||
.power = 40,
|
||||
.type = TYPE_NORMAL,
|
||||
.type = TYPE_FAIRY,
|
||||
.accuracy = 0,
|
||||
.pp = 15,
|
||||
.secondaryEffectChance = 0,
|
||||
|
||||
5221
src/data/items.h
Normal file
5221
src/data/items.h
Normal file
File diff suppressed because it is too large
Load Diff
@@ -3,7 +3,9 @@
|
||||
## if item.pocket == "POCKET_TM_CASE"
|
||||
extern const u8 s{{ item.moveId }}Description[];
|
||||
## endif
|
||||
{% if item.itemId != "ITEM_NONE" %}const u8 gItemDescription_{{ item.itemId }}[] = _("{{ item.description_english }}");{% endif %}
|
||||
{% if item.itemId != "ITEM_NONE" %}
|
||||
const u8 gItemDescription_{{ item.itemId }}[] = _("{{ item.description_english }}");
|
||||
{% endif %}
|
||||
## endfor
|
||||
const u8 gItemDescription_ITEM_NONE[] = _("?????");
|
||||
|
||||
|
||||
@@ -2652,7 +2652,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] =
|
||||
|
||||
#if P_FAMILY_CLEFAIRY
|
||||
#if P_UPDATED_TYPES >= GEN_6
|
||||
#define CLEFAIRY_FAMILY_TYPES { TYPE_NORMAL, TYPE_NORMAL }
|
||||
#define CLEFAIRY_FAMILY_TYPES { TYPE_FAIRY, TYPE_FAIRY }
|
||||
#else
|
||||
#define CLEFAIRY_FAMILY_TYPES { TYPE_NORMAL, TYPE_NORMAL }
|
||||
#endif
|
||||
@@ -2950,7 +2950,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] =
|
||||
.baseSpeed = 109,
|
||||
.baseSpAttack = 81,
|
||||
.baseSpDefense = 100,
|
||||
.types = { TYPE_ICE, TYPE_NORMAL },
|
||||
.types = { TYPE_ICE, TYPE_FAIRY },
|
||||
.abilities = { ABILITY_SNOW_CLOAK, ABILITY_NONE, ABILITY_SNOW_WARNING },
|
||||
.bodyColor = BODY_COLOR_BLUE,
|
||||
.description = COMPOUND_STRING(
|
||||
@@ -2975,7 +2975,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] =
|
||||
|
||||
#if P_FAMILY_JIGGLYPUFF
|
||||
#if P_UPDATED_TYPES >= GEN_6
|
||||
#define JIGGLYPUFF_FAMILY_TYPES { TYPE_NORMAL, TYPE_NORMAL}
|
||||
#define JIGGLYPUFF_FAMILY_TYPES { TYPE_NORMAL, TYPE_FAIRY}
|
||||
#else
|
||||
#define JIGGLYPUFF_FAMILY_TYPES { TYPE_NORMAL, TYPE_NORMAL}
|
||||
#endif
|
||||
@@ -5810,7 +5810,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] =
|
||||
{
|
||||
GALARIAN_PONYTA_FAMILY_INFO,
|
||||
RAPIDASH_MISC_INFO,
|
||||
.types = { TYPE_PSYCHIC, TYPE_NORMAL },
|
||||
.types = { TYPE_PSYCHIC, TYPE_FAIRY },
|
||||
.categoryName = _("Unique Horn"),
|
||||
.weight = 800,
|
||||
.description = COMPOUND_STRING(
|
||||
@@ -8353,7 +8353,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] =
|
||||
[SPECIES_WEEZING_GALARIAN] =
|
||||
{
|
||||
WEEZING_MISC_INFO,
|
||||
.types = { TYPE_POISON, TYPE_NORMAL },
|
||||
.types = { TYPE_POISON, TYPE_FAIRY },
|
||||
.abilities = { ABILITY_LEVITATE, ABILITY_NEUTRALIZING_GAS, ABILITY_MISTY_SURGE },
|
||||
.bodyColor = BODY_COLOR_GRAY,
|
||||
.isGalarianForm = TRUE,
|
||||
@@ -9243,7 +9243,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] =
|
||||
.baseSpAttack = 70,
|
||||
.baseSpDefense = 90,
|
||||
#if P_UPDATED_TYPES >= GEN_6
|
||||
.types = { TYPE_PSYCHIC, TYPE_NORMAL },
|
||||
.types = { TYPE_PSYCHIC, TYPE_FAIRY },
|
||||
#else
|
||||
.types = { TYPE_PSYCHIC, TYPE_PSYCHIC },
|
||||
#endif
|
||||
@@ -9312,7 +9312,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] =
|
||||
.baseSpAttack = 100,
|
||||
.baseSpDefense = 120,
|
||||
#if P_UPDATED_TYPES >= GEN_6
|
||||
.types = { TYPE_PSYCHIC, TYPE_NORMAL },
|
||||
.types = { TYPE_PSYCHIC, TYPE_FAIRY },
|
||||
#else
|
||||
.types = { TYPE_PSYCHIC, TYPE_PSYCHIC },
|
||||
#endif
|
||||
|
||||
@@ -984,7 +984,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
|
||||
#endif //P_FAMILY_CHINCHOU
|
||||
|
||||
#if P_FAMILY_TOGEPI
|
||||
#define TOGEPI_FAMILY_TYPE (P_UPDATED_TYPES >= GEN_6 ? TYPE_NORMAL : TYPE_NORMAL)
|
||||
#define TOGEPI_FAMILY_TYPE (P_UPDATED_TYPES >= GEN_6 ? TYPE_FAIRY : TYPE_NORMAL)
|
||||
|
||||
[SPECIES_TOGEPI] =
|
||||
{
|
||||
|
||||
@@ -1616,7 +1616,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] =
|
||||
#endif //P_FAMILY_WINGULL
|
||||
|
||||
#if P_FAMILY_RALTS
|
||||
#define RALTS_FAMILY_TYPE2 (P_UPDATED_TYPES >= GEN_6 ? TYPE_PSYCHIC : TYPE_PSYCHIC)
|
||||
#define RALTS_FAMILY_TYPE2 (P_UPDATED_TYPES >= GEN_6 ? TYPE_FAIRY : TYPE_PSYCHIC)
|
||||
|
||||
#if P_UPDATED_EGG_GROUPS >= GEN_8
|
||||
#define RALTS_FAMILY_EGG_GROUPS { EGG_GROUP_HUMAN_LIKE, EGG_GROUP_AMORPHOUS }
|
||||
@@ -2931,7 +2931,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] =
|
||||
|
||||
#if P_FAMILY_MAWILE
|
||||
#if P_UPDATED_TYPES >= GEN_6
|
||||
#define MAWILE_TYPES { TYPE_STEEL, TYPE_STEEL }
|
||||
#define MAWILE_TYPES { TYPE_STEEL, TYPE_FAIRY }
|
||||
#else
|
||||
#define MAWILE_TYPES { TYPE_STEEL, TYPE_STEEL }
|
||||
#endif
|
||||
@@ -4916,7 +4916,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] =
|
||||
.baseSpeed = 80,
|
||||
.baseSpAttack = 110,
|
||||
.baseSpDefense = 105,
|
||||
.types = { TYPE_DRAGON, TYPE_DRAGON },
|
||||
.types = { TYPE_DRAGON, TYPE_FAIRY },
|
||||
.expYield = 207,
|
||||
.abilities = { ABILITY_PIXILATE, ABILITY_PIXILATE, ABILITY_PIXILATE },
|
||||
.cryId = CRY_ALTARIA_MEGA,
|
||||
|
||||
@@ -265,6 +265,7 @@ static const struct ListMenuItem sListMenuItems_TypeNames[NUMBER_OF_MON_TYPES] =
|
||||
{ gTypeNames[TYPE_DRAGON], TYPE_DRAGON },
|
||||
{ gTypeNames[TYPE_STEEL], TYPE_STEEL },
|
||||
{ gTypeNames[TYPE_DARK], TYPE_DARK },
|
||||
{ gTypeNames[TYPE_FAIRY], TYPE_FAIRY },
|
||||
{ gText_UR_Exit, NUMBER_OF_MON_TYPES }
|
||||
};
|
||||
|
||||
|
||||
@@ -8263,62 +8263,62 @@
|
||||
{
|
||||
"min_level": 3,
|
||||
"max_level": 3,
|
||||
"species": "SPECIES_PIDGEY"
|
||||
"species": "SPECIES_CLEFAIRY"
|
||||
},
|
||||
{
|
||||
"min_level": 3,
|
||||
"max_level": 3,
|
||||
"species": "SPECIES_RATTATA"
|
||||
"species": "SPECIES_CLEFAIRY"
|
||||
},
|
||||
{
|
||||
"min_level": 3,
|
||||
"max_level": 3,
|
||||
"species": "SPECIES_PIDGEY"
|
||||
"species": "SPECIES_CLEFAIRY"
|
||||
},
|
||||
{
|
||||
"min_level": 3,
|
||||
"max_level": 3,
|
||||
"species": "SPECIES_RATTATA"
|
||||
"species": "SPECIES_RATTATA_ALOLAN"
|
||||
},
|
||||
{
|
||||
"min_level": 2,
|
||||
"max_level": 2,
|
||||
"species": "SPECIES_PIDGEY"
|
||||
"species": "SPECIES_RATTATA_ALOLAN"
|
||||
},
|
||||
{
|
||||
"min_level": 2,
|
||||
"max_level": 2,
|
||||
"species": "SPECIES_RATTATA"
|
||||
"species": "SPECIES_RATTATA_ALOLAN"
|
||||
},
|
||||
{
|
||||
"min_level": 3,
|
||||
"max_level": 3,
|
||||
"species": "SPECIES_PIDGEY"
|
||||
"species": "SPECIES_CHARIZARD_MEGA_Y"
|
||||
},
|
||||
{
|
||||
"min_level": 3,
|
||||
"max_level": 3,
|
||||
"species": "SPECIES_RATTATA"
|
||||
"species": "SPECIES_CHARIZARD_MEGA_Y"
|
||||
},
|
||||
{
|
||||
"min_level": 4,
|
||||
"max_level": 4,
|
||||
"species": "SPECIES_PIDGEY"
|
||||
"species": "SPECIES_CHARIZARD_MEGA_Y"
|
||||
},
|
||||
{
|
||||
"min_level": 4,
|
||||
"max_level": 4,
|
||||
"species": "SPECIES_RATTATA"
|
||||
"species": "SPECIES_CHARIZARD_MEGA_Y"
|
||||
},
|
||||
{
|
||||
"min_level": 5,
|
||||
"max_level": 5,
|
||||
"species": "SPECIES_PIDGEY"
|
||||
"species": "SPECIES_CHARIZARD_MEGA_Y"
|
||||
},
|
||||
{
|
||||
"min_level": 4,
|
||||
"max_level": 4,
|
||||
"species": "SPECIES_RATTATA"
|
||||
"species": "SPECIES_CHARIZARD_MEGA_Y"
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
@@ -70,6 +70,7 @@ static const struct MoveMenuInfoIcon sMenuInfoIcons[] =
|
||||
[TYPE_ICE + 1] = { 32, 12, 0x4C },
|
||||
[TYPE_DRAGON + 1] = { 32, 12, 0xA0 },
|
||||
[TYPE_DARK + 1] = { 32, 12, 0x8C },
|
||||
[TYPE_FAIRY + 1] = { 32, 12, 0x0C },
|
||||
[MENU_INFO_ICON_TYPE] = { 40, 12, 0xA8 },
|
||||
[MENU_INFO_ICON_POWER] = { 40, 12, 0xC0 },
|
||||
[MENU_INFO_ICON_ACCURACY] = { 40, 12, 0xC8 },
|
||||
|
||||
@@ -491,6 +491,7 @@ static const u8 sHoldEffectToType[][2] =
|
||||
{HOLD_EFFECT_FIRE_POWER, TYPE_FIRE},
|
||||
{HOLD_EFFECT_DRAGON_POWER, TYPE_DRAGON},
|
||||
{HOLD_EFFECT_NORMAL_POWER, TYPE_NORMAL},
|
||||
{HOLD_EFFECT_FAIRY_POWER, TYPE_FAIRY},
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gSpriteTemplates_Battlers[MAX_BATTLERS_COUNT] =
|
||||
|
||||
@@ -410,7 +410,8 @@ static const u16 sTMSpritePaletteOffsetByType[NUMBER_OF_MON_TYPES] = {
|
||||
[TYPE_PSYCHIC] = 0x0d0,
|
||||
[TYPE_STEEL] = 0x0e0,
|
||||
[TYPE_DARK] = 0x0f0,
|
||||
[TYPE_DRAGON] = 0x100
|
||||
[TYPE_DRAGON] = 0x100,
|
||||
[TYPE_FAIRY] = 0x0f0,
|
||||
};
|
||||
|
||||
void InitTMCase(u8 type, void (* exitCallback)(void), bool8 allowSelectClose)
|
||||
|
||||
Reference in New Issue
Block a user