summaryrefslogtreecommitdiff
path: root/src/trade.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/trade.c')
-rw-r--r--src/trade.c28
1 files changed, 15 insertions, 13 deletions
diff --git a/src/trade.c b/src/trade.c
index bfbc24194..909abe540 100644
--- a/src/trade.c
+++ b/src/trade.c
@@ -481,7 +481,7 @@ static void CB2_CreateTradeMenu(void)
{
struct Pokemon *mon = &gPlayerParty[i];
sTradeMenuData->partySpriteIds[TRADE_PLAYER][i] = CreateMonIcon(GetMonData(mon, MON_DATA_SPECIES2),
- UpdateTradeMonIconFrame,
+ SpriteCB_MonIcon,
(sTradeMonSpriteCoords[i][0] * 8) + 14,
(sTradeMonSpriteCoords[i][1] * 8) - 12,
1,
@@ -493,7 +493,7 @@ static void CB2_CreateTradeMenu(void)
{
struct Pokemon *mon = &gEnemyParty[i];
sTradeMenuData->partySpriteIds[TRADE_PARTNER][i] = CreateMonIcon(GetMonData(mon, MON_DATA_SPECIES2, NULL),
- UpdateTradeMonIconFrame,
+ SpriteCB_MonIcon,
(sTradeMonSpriteCoords[i + PARTY_SIZE][0] * 8) + 14,
(sTradeMonSpriteCoords[i + PARTY_SIZE][1] * 8) - 12,
1,
@@ -668,7 +668,7 @@ static void CB2_ReturnToTradeMenu(void)
{
struct Pokemon *mon = &gPlayerParty[i];
sTradeMenuData->partySpriteIds[TRADE_PLAYER][i] = CreateMonIcon(GetMonData(mon, MON_DATA_SPECIES2, NULL),
- UpdateTradeMonIconFrame,
+ SpriteCB_MonIcon,
(sTradeMonSpriteCoords[i][0] * 8) + 14,
(sTradeMonSpriteCoords[i][1] * 8) - 12,
1,
@@ -680,7 +680,7 @@ static void CB2_ReturnToTradeMenu(void)
{
struct Pokemon *mon = &gEnemyParty[i];
sTradeMenuData->partySpriteIds[TRADE_PARTNER][i] = CreateMonIcon(GetMonData(mon, MON_DATA_SPECIES2, NULL),
- UpdateTradeMonIconFrame,
+ SpriteCB_MonIcon,
(sTradeMonSpriteCoords[i + PARTY_SIZE][0] * 8) + 14,
(sTradeMonSpriteCoords[i + PARTY_SIZE][1] * 8) - 12,
1,
@@ -1439,8 +1439,8 @@ static void TradeMenuProcessInput_SelectedMon(void)
QueueAction(QUEUE_DELAY_MSG, QUEUE_MON_CANT_BE_TRADED);
sTradeMenuData->tradeMenuFunc = TRADEMENUFUNC_REDRAW_MAIN_MENU;
break;
- case CANT_TRADE_EGG:
- case CANT_TRADE_EGG2:
+ case CANT_TRADE_EGG_YET:
+ case CANT_TRADE_EGG_YET2:
QueueAction(QUEUE_DELAY_MSG, QUEUE_EGG_CANT_BE_TRADED);
sTradeMenuData->tradeMenuFunc = TRADEMENUFUNC_REDRAW_MAIN_MENU;
break;
@@ -1809,7 +1809,7 @@ static void DrawTradeMenuParty(u8 whichParty)
gSprites[sTradeMenuData->partySpriteIds[0][partyIdx + (selectedMonParty * PARTY_SIZE)]].data[0] = 20;
gSprites[sTradeMenuData->partySpriteIds[0][partyIdx + (selectedMonParty * PARTY_SIZE)]].data[2] = (sTradeMonSpriteCoords[selectedMonParty * PARTY_SIZE][0] + sTradeMonSpriteCoords[selectedMonParty * PARTY_SIZE + 1][0]) / 2 * 8 + 14;
gSprites[sTradeMenuData->partySpriteIds[0][partyIdx + (selectedMonParty * PARTY_SIZE)]].data[4] = (sTradeMonSpriteCoords[selectedMonParty * PARTY_SIZE][1] * 8) - 12;
- StoreSpriteCallbackInData6(&gSprites[sTradeMenuData->partySpriteIds[0][partyIdx + (selectedMonParty * PARTY_SIZE)]], UpdateTradeMonIconFrame);
+ StoreSpriteCallbackInData6(&gSprites[sTradeMenuData->partySpriteIds[0][partyIdx + (selectedMonParty * PARTY_SIZE)]], SpriteCB_MonIcon);
sTradeMenuData->drawPartyState[whichParty]++;
TradeMenuBouncePartySprites(&gSprites[sTradeMenuData->partySpriteIds[0][partyIdx + (selectedMonParty * PARTY_SIZE)]]);
CopyToBgTilemapBufferRect_ChangePalette(1, sTradePartyBoxTilemap, whichParty * 15, 0, 15, 17, 0);
@@ -1820,7 +1820,7 @@ static void DrawTradeMenuParty(u8 whichParty)
PrintNicknamesForTradeMenu();
break;
case 2:
- if (gSprites[sTradeMenuData->partySpriteIds[0][partyIdx + (selectedMonParty * PARTY_SIZE)]].callback == UpdateTradeMonIconFrame)
+ if (gSprites[sTradeMenuData->partySpriteIds[0][partyIdx + (selectedMonParty * PARTY_SIZE)]].callback == SpriteCB_MonIcon)
sTradeMenuData->drawPartyState[whichParty] = 3;
break;
case 3:
@@ -2352,7 +2352,7 @@ static u32 CanTradeSelectedMon(struct Pokemon *playerParty, int partyCount, int
if (!IsNationalPokedexEnabled())
{
if (species2[monIdx] == SPECIES_EGG)
- return CANT_TRADE_EGG;
+ return CANT_TRADE_EGG_YET;
if (!IsSpeciesInHoennDex(species2[monIdx]))
return CANT_TRADE_NATIONAL;
@@ -2366,7 +2366,7 @@ static u32 CanTradeSelectedMon(struct Pokemon *playerParty, int partyCount, int
if (!(player->progressFlagsCopy & 0xF))
{
if (species2[monIdx] == SPECIES_EGG)
- return CANT_TRADE_EGG2;
+ return CANT_TRADE_EGG_YET2;
if (!IsSpeciesInHoennDex(species2[monIdx]))
return CANT_TRADE_INVALID_MON;
@@ -2542,8 +2542,10 @@ int CanRegisterMonForTradingBoard(struct UnkLinkRfuStruct_02022B14Substruct rfuP
}
// r6/r7 flip. Ugh.
+// Spin Trade wasnt fully implemented, but this checks if a mon would be valid to Spin Trade
+// Unlike later generations, this version of Spin Trade isnt only for Eggs
#ifdef NONMATCHING
-int CanTradeSelectedPartyMenuMon(struct Pokemon *mon, u16 monIdx)
+int CanSpinTradeMon(struct Pokemon *mon, u16 monIdx)
{
int i, version, versions, canTradeAnyMon, numMonsLeft;
int speciesArray[PARTY_SIZE];
@@ -2592,7 +2594,7 @@ int CanTradeSelectedPartyMenuMon(struct Pokemon *mon, u16 monIdx)
return CANT_TRADE_NATIONAL;
if (speciesArray[monIdx] == SPECIES_NONE)
- return CANT_TRADE_EGG;
+ return CANT_TRADE_EGG_YET;
}
numMonsLeft = 0;
@@ -2611,7 +2613,7 @@ int CanTradeSelectedPartyMenuMon(struct Pokemon *mon, u16 monIdx)
}
#else
NAKED
-int CanTradeSelectedPartyMenuMon(struct Pokemon *mon, u16 a1)
+int CanSpinTradeMon(struct Pokemon *mon, u16 a1)
{
asm_unified("push {r4-r7,lr}\n\
mov r7, r8\n\