Fix tera icon palettes (#9208)
This commit is contained in:
parent
757cbc2e7d
commit
a3d9aa7ae2
@ -206,13 +206,7 @@ static void PlayerPartnerHandleDrawTrainerPic(u32 battler)
|
||||
|
||||
enum DifficultyLevel difficulty = GetBattlePartnerDifficultyLevel(gPartnerTrainerId);
|
||||
|
||||
if (IsMultibattleTest())
|
||||
{
|
||||
trainerPicId = TRAINER_BACK_PIC_STEVEN;
|
||||
xPos = 90;
|
||||
yPos = (8 - gTrainerBacksprites[trainerPicId].coordinates.size) * 4 + 80;
|
||||
}
|
||||
else if (gPartnerTrainerId > TRAINER_PARTNER(PARTNER_NONE))
|
||||
if (gPartnerTrainerId > TRAINER_PARTNER(PARTNER_NONE))
|
||||
{
|
||||
trainerPicId = gBattlePartners[difficulty][gPartnerTrainerId - TRAINER_PARTNER(PARTNER_NONE)].trainerBackPic;
|
||||
xPos = 90;
|
||||
|
||||
@ -203,11 +203,32 @@ static void RecordedPartnerHandleDrawTrainerPic(u32 battler)
|
||||
s16 xPos, yPos;
|
||||
u32 trainerPicId;
|
||||
|
||||
trainerPicId = TRAINER_BACK_PIC_STEVEN;
|
||||
enum DifficultyLevel difficulty = GetBattlePartnerDifficultyLevel(gPartnerTrainerId);
|
||||
|
||||
if (gPartnerTrainerId > TRAINER_PARTNER(PARTNER_NONE))
|
||||
{
|
||||
trainerPicId = gBattlePartners[difficulty][gPartnerTrainerId - TRAINER_PARTNER(PARTNER_NONE)].trainerBackPic;
|
||||
xPos = 90;
|
||||
yPos = (8 - gTrainerBacksprites[trainerPicId].coordinates.size) * 4 + 80;
|
||||
}
|
||||
else if (IsAiVsAiBattle())
|
||||
{
|
||||
trainerPicId = GetTrainerPicFromId(gPartnerTrainerId);
|
||||
xPos = 60;
|
||||
yPos = 80;
|
||||
}
|
||||
else
|
||||
{
|
||||
trainerPicId = GetFrontierTrainerFrontSpriteId(gPartnerTrainerId);
|
||||
xPos = 32;
|
||||
yPos = 80;
|
||||
}
|
||||
|
||||
// Use back pic only if the partner Steven or is custom.
|
||||
if (gPartnerTrainerId > TRAINER_PARTNER(PARTNER_NONE))
|
||||
isFrontPic = FALSE;
|
||||
else
|
||||
isFrontPic = TRUE;
|
||||
|
||||
BtlController_HandleDrawTrainerPic(battler, trainerPicId, isFrontPic, xPos, yPos, -1);
|
||||
}
|
||||
@ -246,9 +267,9 @@ static void RecordedPartnerHandleIntroTrainerBallThrow(u32 battler)
|
||||
enum DifficultyLevel difficulty = GetBattlePartnerDifficultyLevel(gPartnerTrainerId);
|
||||
|
||||
if (gPartnerTrainerId > TRAINER_PARTNER(PARTNER_NONE))
|
||||
trainerPal = gTrainerBacksprites[gBattlePartners[difficulty][gPartnerTrainerId - TRAINER_PARTNER(PARTNER_NONE)].trainerPic].palette.data;
|
||||
trainerPal = gTrainerBacksprites[gBattlePartners[difficulty][gPartnerTrainerId - TRAINER_PARTNER(PARTNER_NONE)].trainerBackPic].palette.data;
|
||||
else if (IsAiVsAiBattle())
|
||||
trainerPal = gTrainerSprites[GetTrainerPicFromId(gPartnerTrainerId)].palette.data;
|
||||
trainerPal = gTrainerSprites[GetTrainerBackPicFromId(gPartnerTrainerId)].palette.data;
|
||||
else
|
||||
trainerPal = gTrainerSprites[GetFrontierTrainerFrontSpriteId(gPartnerTrainerId)].palette.data; // 2 vs 2 multi battle in Battle Frontier, load front sprite and pal.
|
||||
|
||||
|
||||
@ -2397,8 +2397,7 @@ void BtlController_HandleDrawTrainerPic(u32 battler, u32 trainerPicId, bool32 is
|
||||
if ((gBattleTypeFlags & BATTLE_TYPE_SAFARI) && GetBattlerPosition(battler) == B_POSITION_PLAYER_LEFT)
|
||||
gBattlerSpriteIds[battler] = gBattleStruct->trainerSlideSpriteIds[battler];
|
||||
|
||||
// Aiming for palette slots 8 and 9 for Player and PlayerPartner to prevent Trainer Slides causing mons to change colour
|
||||
gSprites[gBattleStruct->trainerSlideSpriteIds[battler]].oam.paletteNum = (8 + battler/2);
|
||||
gSprites[gBattleStruct->trainerSlideSpriteIds[battler]].oam.paletteNum = battler;
|
||||
}
|
||||
gSprites[gBattleStruct->trainerSlideSpriteIds[battler]].x2 = DISPLAY_WIDTH;
|
||||
gSprites[gBattleStruct->trainerSlideSpriteIds[battler]].sSpeedX = -2;
|
||||
@ -2423,8 +2422,7 @@ void BtlController_HandleTrainerSlide(u32 battler, u32 trainerPicId)
|
||||
30);
|
||||
if ((gBattleTypeFlags & BATTLE_TYPE_SAFARI) && GetBattlerPosition(battler) == B_POSITION_PLAYER_LEFT)
|
||||
gBattlerSpriteIds[battler] = gBattleStruct->trainerSlideSpriteIds[battler];
|
||||
// Aiming for palette slots 8 and 9 for Player and PlayerPartner to prevent Trainer Slides causing mons to change colour
|
||||
gSprites[gBattleStruct->trainerSlideSpriteIds[battler]].oam.paletteNum = (8 + battler/2);
|
||||
gSprites[gBattleStruct->trainerSlideSpriteIds[battler]].oam.paletteNum = battler;
|
||||
gSprites[gBattleStruct->trainerSlideSpriteIds[battler]].x2 = -96;
|
||||
gSprites[gBattleStruct->trainerSlideSpriteIds[battler]].sSpeedX = 2;
|
||||
}
|
||||
@ -2772,7 +2770,7 @@ void BtlController_HandleIntroTrainerBallThrow(u32 battler, u16 tagTrainerPal, c
|
||||
|
||||
paletteNum = AllocSpritePalette(tagTrainerPal);
|
||||
LoadPalette(trainerPal, OBJ_PLTT_ID(paletteNum), PLTT_SIZE_4BPP);
|
||||
gSprites[gBattleStruct->trainerSlideSpriteIds[battler]].oam.paletteNum = (8 + battler/2);
|
||||
gSprites[gBattleStruct->trainerSlideSpriteIds[battler]].oam.paletteNum = paletteNum;
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
@ -700,9 +700,8 @@ void DecompressTrainerBackPic(u16 backPicId, u8 battler)
|
||||
{
|
||||
u8 position = GetBattlerPosition(battler);
|
||||
CopyTrainerBackspriteFramesToDest(backPicId, gMonSpritesGfxPtr->spritesGfx[position]);
|
||||
// Aiming for palette slots 8 and 9 for Player and PlayerPartner to prevent Trainer Slides causing mons to change colour
|
||||
LoadPalette(gTrainerBacksprites[backPicId].palette.data,
|
||||
OBJ_PLTT_ID(8 + battler/2), PLTT_SIZE_4BPP);
|
||||
OBJ_PLTT_ID(battler), PLTT_SIZE_4BPP);
|
||||
}
|
||||
|
||||
void FreeTrainerFrontPicPalette(u16 frontPicId)
|
||||
|
||||
@ -324,7 +324,7 @@ void CreateBattlerSprite(u32 battler)
|
||||
gBattlerSpriteIds[battler] = CreateSprite(&gMultiuseSpriteTemplate, 0x50,
|
||||
(8 - gTrainerBacksprites[gSaveBlock2Ptr->playerGender].coordinates.size) * 4 + 80,
|
||||
GetBattlerSpriteSubpriority(0));
|
||||
gSprites[gBattlerSpriteIds[battler]].oam.paletteNum = (8 + battler / 2);
|
||||
gSprites[gBattlerSpriteIds[battler]].oam.paletteNum = battler;
|
||||
gSprites[gBattlerSpriteIds[battler]].callback = SpriteCallbackDummy;
|
||||
gSprites[gBattlerSpriteIds[battler]].data[0] = battler;
|
||||
}
|
||||
@ -334,7 +334,7 @@ void CreateBattlerSprite(u32 battler)
|
||||
gBattlerSpriteIds[battler] = CreateSprite(&gMultiuseSpriteTemplate, 0x50,
|
||||
(8 - gTrainerBacksprites[TRAINER_BACK_PIC_WALLY].coordinates.size) * 4 + 80,
|
||||
GetBattlerSpriteSubpriority(0));
|
||||
gSprites[gBattlerSpriteIds[battler]].oam.paletteNum = (8 + battler / 2);
|
||||
gSprites[gBattlerSpriteIds[battler]].oam.paletteNum = battler;
|
||||
gSprites[gBattlerSpriteIds[battler]].callback = SpriteCallbackDummy;
|
||||
gSprites[gBattlerSpriteIds[battler]].data[0] = battler;
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user