* Add PLA item data

* Add most item sprites

* Incorporate review feedback
This commit is contained in:
Bassoonian 2024-01-23 18:24:58 +01:00 committed by GitHub
parent 00e2ca6030
commit 4c21c85ee2
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
22 changed files with 440 additions and 1 deletions

View file

@ -0,0 +1,19 @@
JASC-PAL
0100
16
0 0 0
0 0 0
95 138 90
130 173 118
81 114 89
122 143 74
57 87 63
104 122 166
75 89 124
144 147 154
215 218 223
221 129 109
139 71 56
177 169 96
0 0 0
0 0 0

View file

@ -0,0 +1,19 @@
JASC-PAL
0100
16
0 0 0
0 0 0
157 115 95
109 85 77
194 183 165
82 9 28
121 22 47
192 46 108
249 242 228
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0

View file

@ -0,0 +1,19 @@
JASC-PAL
0100
16
0 0 0
0 0 0
252 199 106
242 224 67
247 179 73
83 64 44
231 215 174
237 150 35
134 69 19
161 139 106
60 68 13
176 174 52
153 153 16
117 117 23
157 159 43
0 0 0

View file

@ -0,0 +1,19 @@
JASC-PAL
0100
16
0 0 0
0 0 0
105 62 73
224 154 147
245 214 209
235 184 178
255 255 255
23 1 1
239 135 151
255 254 254
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0

View file

@ -0,0 +1,19 @@
JASC-PAL
0100
16
0 0 0
0 0 0
157 115 95
109 85 77
194 183 165
249 242 228
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0

View file

@ -0,0 +1,19 @@
JASC-PAL
0100
16
0 0 0
0 0 0
157 115 95
109 85 77
194 183 165
82 9 28
121 22 47
254 235 196
236 201 135
197 159 88
192 46 108
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0

View file

@ -0,0 +1,19 @@
JASC-PAL
0100
16
0 0 0
48 48 48
216 97 36
249 199 136
67 34 18
255 228 193
190 127 64
132 157 41
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0

View file

@ -0,0 +1,19 @@
JASC-PAL
0100
16
0 0 0
106 96 74
67 54 47
212 214 162
252 252 236
109 159 26
102 18 18
0 0 0
239 184 163
171 44 18
229 84 32
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0

Binary file not shown.

After

Width:  |  Height:  |  Size: 314 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 282 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 308 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 288 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 266 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 314 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 292 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 288 B

View file

@ -989,7 +989,23 @@
#define ITEM_METAL_ALLOY 814
#define ITEM_STELLAR_TERA_SHARD 815
#define ITEMS_COUNT 816
#define ITEM_JUBILIFE_MUFFIN 816
#define ITEM_REMEDY 817
#define ITEM_FINE_REMEDY 818
#define ITEM_SUPERB_REMEDY 819
#define ITEM_AUX_EVASION 820
#define ITEM_AUX_GUARD 821
#define ITEM_AUX_POWER 822
#define ITEM_AUX_POWERGUARD 823
#define ITEM_CHOICE_DUMPLING 824
#define ITEM_SWAP_SNACK 825
#define ITEM_TWICE_SPICED_RADISH 826
#define ITEM_POKESHI_DOLL 827
// HOPO BERRY
// LEGEND PLATE
#define ITEMS_COUNT 828
#define ITEM_FIELD_ARROW ITEMS_COUNT
// A special item id associated with "Cancel"/"Exit" etc. in a list of items or decorations

View file

@ -1709,6 +1709,23 @@ extern const u32 gItemIconPalette_HearthflameMask[];
extern const u32 gItemIcon_CornerstoneMask[];
extern const u32 gItemIconPalette_CornerstoneMask[];
extern const u32 gItemIcon_Remedy[];
extern const u32 gItemIconPalette_Remedy[];
extern const u32 gItemIcon_FineRemedy[];
extern const u32 gItemIconPalette_FineRemedy[];
extern const u32 gItemIcon_SuperbRemedy[];
extern const u32 gItemIconPalette_SuperbRemedy[];
extern const u32 gItemIcon_ChoiceDumpling[];
extern const u32 gItemIconPalette_ChoiceDumpling[];
extern const u32 gItemIcon_JubilifeMuffin[];
extern const u32 gItemIconPalette_JubilifeMuffin[];
extern const u32 gItemIcon_PokeshiDoll[];
extern const u32 gItemIconPalette_PokeshiDoll[];
extern const u32 gItemIcon_SwapSnack[];
extern const u32 gItemIconPalette_SwapSnack[];
extern const u32 gItemIcon_TwiceSpicedRadish[];
extern const u32 gItemIconPalette_TwiceSpicedRadish[];
extern const u32 gItemIcon_ReturnToFieldArrow[];
extern const u32 gItemIconPalette_ReturnToFieldArrow[];

View file

@ -2061,3 +2061,27 @@ const u32 gItemIconPalette_BerserkGene[] = INCBIN_U32("graphics/items/icon_palet
const u32 gItemIcon_FairyFeather[] = INCBIN_U32("graphics/items/icons/fairy_feather.4bpp.lz");
const u32 gItemIconPalette_FairyFeather[] = INCBIN_U32("graphics/items/icon_palettes/fairy_feather.gbapal.lz");
const u32 gItemIcon_Remedy[] = INCBIN_U32("graphics/items/icons/remedy.4bpp.lz");
const u32 gItemIconPalette_Remedy[] = INCBIN_U32("graphics/items/icon_palettes/remedy.gbapal.lz");
const u32 gItemIcon_FineRemedy[] = INCBIN_U32("graphics/items/icons/fine_remedy.4bpp.lz");
const u32 gItemIconPalette_FineRemedy[] = INCBIN_U32("graphics/items/icon_palettes/fine_remedy.gbapal.lz");
const u32 gItemIcon_SuperbRemedy[] = INCBIN_U32("graphics/items/icons/superb_remedy.4bpp.lz");
const u32 gItemIconPalette_SuperbRemedy[] = INCBIN_U32("graphics/items/icon_palettes/superb_remedy.gbapal.lz");
const u32 gItemIcon_ChoiceDumpling[] = INCBIN_U32("graphics/items/icons/choice_dumpling.4bpp.lz");
const u32 gItemIconPalette_ChoiceDumpling[] = INCBIN_U32("graphics/items/icon_palettes/choice_dumpling.gbapal.lz");
const u32 gItemIcon_JubilifeMuffin[] = INCBIN_U32("graphics/items/icons/jubilife_muffin.4bpp.lz");
const u32 gItemIconPalette_JubilifeMuffin[] = INCBIN_U32("graphics/items/icon_palettes/jubilife_muffin.gbapal.lz");
const u32 gItemIcon_PokeshiDoll[] = INCBIN_U32("graphics/items/icons/pokeshi_doll.4bpp.lz");
const u32 gItemIconPalette_PokeshiDoll[] = INCBIN_U32("graphics/items/icon_palettes/pokeshi_doll.gbapal.lz");
const u32 gItemIcon_SwapSnack[] = INCBIN_U32("graphics/items/icons/swap_snack.4bpp.lz");
const u32 gItemIconPalette_SwapSnack[] = INCBIN_U32("graphics/items/icon_palettes/swap_snack.gbapal.lz");
const u32 gItemIcon_TwiceSpicedRadish[] = INCBIN_U32("graphics/items/icons/twice_spiced_radish.4bpp.lz");
const u32 gItemIconPalette_TwiceSpicedRadish[] = INCBIN_U32("graphics/items/icon_palettes/twice_spiced_radish.gbapal.lz");

View file

@ -861,6 +861,18 @@ const u32 *const gItemIconTable[ITEMS_COUNT + 1][2] =
[ITEM_GLIMMERING_CHARM] = {gItemIcon_GlimmeringCharm, gItemIconPalette_GlimmeringCharm},
[ITEM_METAL_ALLOY] = {gItemIcon_MetalAlloy, gItemIconPalette_MetalAlloy},
[ITEM_STELLAR_TERA_SHARD] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark}, //{gItemIcon_TeraShard, gItemIconPalette_StellarTeraShard},
[ITEM_JUBILIFE_MUFFIN] = {gItemIcon_JubilifeMuffin, gItemIconPalette_JubilifeMuffin},
[ITEM_REMEDY] = {gItemIcon_Remedy, gItemIconPalette_Remedy},
[ITEM_FINE_REMEDY] = {gItemIcon_FineRemedy, gItemIconPalette_FineRemedy},
[ITEM_SUPERB_REMEDY] = {gItemIcon_SuperbRemedy, gItemIconPalette_SuperbRemedy},
[ITEM_AUX_EVASION] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark}, // {gItemIcon_AuxEvasion, gItemIconPalette_AuxEvasion},
[ITEM_AUX_GUARD] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark}, // {gItemIcon_AuxGuard, gItemIconPalette_AuxGuard},
[ITEM_AUX_POWER] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark}, // {gItemIcon_AuxPower, gItemIconPalette_AuxPower},
[ITEM_AUX_POWERGUARD] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark}, // {gItemIcon_AuxPowerguard, gItemIconPalette_AuxPowerguard},
[ITEM_CHOICE_DUMPLING] = {gItemIcon_ChoiceDumpling, gItemIconPalette_ChoiceDumpling},
[ITEM_SWAP_SNACK] = {gItemIcon_SwapSnack, gItemIconPalette_SwapSnack},
[ITEM_TWICE_SPICED_RADISH] = {gItemIcon_TwiceSpicedRadish, gItemIconPalette_TwiceSpicedRadish},
[ITEM_POKESHI_DOLL] = {gItemIcon_PokeshiDoll, gItemIconPalette_PokeshiDoll},
// Return to field arrow
[ITEMS_COUNT] = {gItemIcon_ReturnToFieldArrow, gItemIconPalette_ReturnToFieldArrow},
};

View file

@ -11778,4 +11778,195 @@ const struct Item gItems[] =
.type = ITEM_USE_BAG_MENU,
.fieldUseFunc = ItemUseOutOfBattle_CannotUse,
},
[ITEM_JUBILIFE_MUFFIN] =
{
.name = _("JublifeMuffin"),
.price = 250,
.description = sFullHealDesc,
.pocket = POCKET_ITEMS,
.type = ITEM_USE_PARTY_MENU,
.fieldUseFunc = ItemUseOutOfBattle_Medicine,
.battleUsage = EFFECT_ITEM_CURE_STATUS,
.flingPower = 30,
},
[ITEM_REMEDY] =
{
.name = _("Remedy"),
.price = 150,
.description = COMPOUND_STRING("A bitter powder\n"
"that restores HP\n"
"by 20 points."),
.pocket = POCKET_ITEMS,
.type = ITEM_USE_PARTY_MENU,
.fieldUseFunc = ItemUseOutOfBattle_Medicine,
.battleUsage = EFFECT_ITEM_RESTORE_HP,
.effect = gItemEffect_Remedy,
.flingPower = 30,
},
[ITEM_FINE_REMEDY] =
{
.name = _("Fine Remedy"),
.price = 150,
#if I_HEALTH_RECOVERY >= GEN_7
.description = COMPOUND_STRING("A bitter powder\n"
"that restores HP\n"
"by 60 points."),
#else
.description = COMPOUND_STRING("A bitter powder\n"
"that restores HP\n"
"by 50 points."),
#endif
.pocket = POCKET_ITEMS,
.type = ITEM_USE_PARTY_MENU,
.fieldUseFunc = ItemUseOutOfBattle_Medicine,
.battleUsage = EFFECT_ITEM_RESTORE_HP,
.effect = gItemEffect_FineRemedy,
.flingPower = 30,
},
[ITEM_SUPERB_REMEDY] =
{
.name = _("Superb Remedy"),
.price = 750,
#if I_HEALTH_RECOVERY >= GEN_7
.description = COMPOUND_STRING("A bitter powder\n"
"that restores HP\n"
"by 120 points."),
#else
.description = COMPOUND_STRING("A bitter powder\n"
"that restores HP\n"
"by 200 points."),
#endif
.pocket = POCKET_ITEMS,
.type = ITEM_USE_PARTY_MENU,
.fieldUseFunc = ItemUseOutOfBattle_Medicine,
.battleUsage = EFFECT_ITEM_RESTORE_HP,
.effect = gItemEffect_SuperbRemedy,
.flingPower = 30,
},
[ITEM_AUX_EVASION] =
{
.name = _("Aux Evasion"),
.price = 800,
.holdEffectParam = X_ITEM_STAGES,
#if B_X_ITEMS_BUFF >= GEN_7
.description = COMPOUND_STRING("Sharply raises\n"
"evasiveness during\n"
"one battle."),
#else
.description = COMPOUND_STRING("Raises evasiveness\n"
"during one battle."),
#endif
.pocket = POCKET_ITEMS,
.type = ITEM_USE_BAG_MENU,
.fieldUseFunc = ItemUseOutOfBattle_CannotUse,
//.effect = currently missing
},
[ITEM_AUX_GUARD] =
{
.name = _("Aux Guard"),
.price = 400,
.holdEffectParam = X_ITEM_STAGES,
#if B_X_ITEMS_BUFF >= GEN_7
.description = COMPOUND_STRING("Sharply raises\n"
"defenses during\n"
"one battle."),
#else
.description = COMPOUND_STRING("Raises defenses\n"
"during one battle."),
#endif
.pocket = POCKET_ITEMS,
.type = ITEM_USE_BAG_MENU,
.fieldUseFunc = ItemUseOutOfBattle_CannotUse,
//.effect = currently missing
},
[ITEM_AUX_POWER] =
{
.name = _("Aux Power"),
.price = 400,
.holdEffectParam = X_ITEM_STAGES,
#if B_X_ITEMS_BUFF >= GEN_7
.description = COMPOUND_STRING("Sharply raises\n"
"offenses during\n"
"one battle."),
#else
.description = COMPOUND_STRING("Raises offenses\n"
"during one battle."),
#endif
.pocket = POCKET_ITEMS,
.type = ITEM_USE_BAG_MENU,
.fieldUseFunc = ItemUseOutOfBattle_CannotUse,
//.effect = currently missing
},
[ITEM_AUX_POWERGUARD] =
{
.name = _("AuxPowerguard"),
.price = 1200,
.holdEffectParam = X_ITEM_STAGES,
#if B_X_ITEMS_BUFF >= GEN_7
.description = COMPOUND_STRING("Sharply raises\n"
"offenses & defenses\n"
"during one battle."),
#else
.description = COMPOUND_STRING("Raises offenses\n"
"and defenses during\n"
"one battle."),
#endif
.pocket = POCKET_ITEMS,
.type = ITEM_USE_BAG_MENU,
.fieldUseFunc = ItemUseOutOfBattle_CannotUse,
//.effect = currently missing
},
[ITEM_CHOICE_DUMPLING] =
{
.name = _("ChoiceDumplng"),
.price = 1200,
.description = sQuestionMarksDesc,
.pocket = POCKET_ITEMS,
.type = ITEM_USE_BAG_MENU,
.fieldUseFunc = ItemUseOutOfBattle_CannotUse,
//.effect = currently missing
},
[ITEM_SWAP_SNACK] =
{
.name = _("Swap Snack"),
.price = 1200,
.description = sQuestionMarksDesc,
.pocket = POCKET_ITEMS,
.type = ITEM_USE_BAG_MENU,
.fieldUseFunc = ItemUseOutOfBattle_CannotUse,
//.effect = currently missing
},
[ITEM_TWICE_SPICED_RADISH] =
{
.name = _("2xSpicedRadsh"),
.price = 1600,
.description = sQuestionMarksDesc,
.pocket = POCKET_ITEMS,
.type = ITEM_USE_BAG_MENU,
.fieldUseFunc = ItemUseOutOfBattle_CannotUse,
//.effect = currently missing
},
[ITEM_POKESHI_DOLL] =
{
.name = _("Pokéshi Doll"),
.price = 2000,
.description = COMPOUND_STRING("A wooden toy carved\n"
"in the image of a\n"
"Pokémon. Can be sold."),
.pocket = POCKET_ITEMS,
.type = ITEM_USE_BAG_MENU,
.fieldUseFunc = ItemUseOutOfBattle_CannotUse,
},
};

View file

@ -113,6 +113,33 @@ const u8 gItemEffect_RevivalHerb[10] = {
[9] = -20, // Friendship change, high
};
const u8 gItemEffect_Remedy[10] = {
[4] = ITEM4_HEAL_HP,
[5] = ITEM5_FRIENDSHIP_ALL,
[6] = 20, // Amount of HP to recover
[7] = -5, // Friendship change, low
[8] = -5, // Friendship change, mid
[9] = -10, // Friendship change, high
};
const u8 gItemEffect_FineRemedy[10] = {
[4] = ITEM4_HEAL_HP,
[5] = ITEM5_FRIENDSHIP_ALL,
[6] = I_HEALTH_RECOVERY >= GEN_7 ? 60 : 50, // Amount of HP to recover
[7] = -10, // Friendship change, low
[8] = -10, // Friendship change, mid
[9] = -15, // Friendship change, high
};
const u8 gItemEffect_SuperbRemedy[10] = {
[4] = ITEM4_HEAL_HP,
[5] = ITEM5_FRIENDSHIP_ALL,
[6] = I_HEALTH_RECOVERY >= GEN_7 ? 120 : 200, // Amount of HP to recover
[7] = -15, // Friendship change, low
[8] = -15, // Friendship change, mid
[9] = -20, // Friendship change, high
};
const u8 gItemEffect_Ether[7] = {
[4] = ITEM4_HEAL_PP_ONE | ITEM4_HEAL_PP,
[6] = 10,