Merge pull request #2073 from AsparagusEduardo/_pret/pr/pyramidLocation
Improve Pyramid location documentaion
This commit is contained in:
@@ -69,8 +69,8 @@
|
|||||||
.endm
|
.endm
|
||||||
|
|
||||||
@ VAR_RESULT is 1 if player is on a Pyramid floor, 2 if on the Pyramid peak, 0 otherwise
|
@ VAR_RESULT is 1 if player is on a Pyramid floor, 2 if on the Pyramid peak, 0 otherwise
|
||||||
.macro pyramid_inchallenge
|
.macro pyramid_getlocation
|
||||||
setvar VAR_0x8004, BATTLE_PYRAMID_FUNC_IS_IN
|
setvar VAR_0x8004, BATTLE_PYRAMID_FUNC_CURRENT_LOCATION
|
||||||
special CallBattlePyramidFunction
|
special CallBattlePyramidFunction
|
||||||
.endm
|
.endm
|
||||||
|
|
||||||
|
|||||||
@@ -29,9 +29,9 @@ EventScript_FrontierFieldWhiteOut::
|
|||||||
waitbuttonpress
|
waitbuttonpress
|
||||||
pike_inchallenge
|
pike_inchallenge
|
||||||
goto_if_eq VAR_RESULT, TRUE, BattleFrontier_BattlePike_EventScript_Retire
|
goto_if_eq VAR_RESULT, TRUE, BattleFrontier_BattlePike_EventScript_Retire
|
||||||
pyramid_inchallenge
|
pyramid_getlocation
|
||||||
goto_if_eq VAR_RESULT, 1, BattleFrontier_BattlePyramid_EventScript_WarpToLobbyLost @ On Pyramid floor
|
goto_if_eq VAR_RESULT, PYRAMID_LOCATION_FLOOR, BattleFrontier_BattlePyramid_EventScript_WarpToLobbyLost
|
||||||
goto_if_eq VAR_RESULT, 2, BattleFrontier_BattlePyramid_EventScript_WarpToLobbyLost @ On Pyramid peak
|
goto_if_eq VAR_RESULT, PYRAMID_LOCATION_TOP, BattleFrontier_BattlePyramid_EventScript_WarpToLobbyLost
|
||||||
trainerhill_inchallenge
|
trainerhill_inchallenge
|
||||||
goto_if_eq VAR_RESULT, TRUE, TrainerHill_1F_EventScript_Lost
|
goto_if_eq VAR_RESULT, TRUE, TrainerHill_1F_EventScript_Lost
|
||||||
special Script_FadeOutMapMusic
|
special Script_FadeOutMapMusic
|
||||||
|
|||||||
@@ -118,8 +118,8 @@ EventScript_PickUpItem::
|
|||||||
waitfanfare
|
waitfanfare
|
||||||
waitmessage
|
waitmessage
|
||||||
bufferitemnameplural STR_VAR_2, VAR_0x8004, VAR_0x8005
|
bufferitemnameplural STR_VAR_2, VAR_0x8004, VAR_0x8005
|
||||||
pyramid_inchallenge
|
pyramid_getlocation
|
||||||
goto_if_eq VAR_RESULT, TRUE, EventScript_PutBattlePyramidItemInBag
|
goto_if_eq VAR_RESULT, PYRAMID_LOCATION_FLOOR, EventScript_PutBattlePyramidItemInBag
|
||||||
msgbox gText_PutItemInPocket, MSGBOX_DEFAULT
|
msgbox gText_PutItemInPocket, MSGBOX_DEFAULT
|
||||||
return
|
return
|
||||||
|
|
||||||
|
|||||||
@@ -1,13 +1,15 @@
|
|||||||
#ifndef GUARD_BATTLE_PYRAMID_H
|
#ifndef GUARD_BATTLE_PYRAMID_H
|
||||||
#define GUARD_BATTLE_PYRAMID_H
|
#define GUARD_BATTLE_PYRAMID_H
|
||||||
|
|
||||||
|
#include "constants/battle_pyramid.h"
|
||||||
|
|
||||||
void CallBattlePyramidFunction(void);
|
void CallBattlePyramidFunction(void);
|
||||||
u16 LocalIdToPyramidTrainerId(u8 localId);
|
u16 LocalIdToPyramidTrainerId(u8 localId);
|
||||||
bool8 GetBattlePyramidTrainerFlag(u8 eventId);
|
bool8 GetBattlePyramidTrainerFlag(u8 eventId);
|
||||||
void MarkApproachingPyramidTrainersAsBattled(void);
|
void MarkApproachingPyramidTrainersAsBattled(void);
|
||||||
void GenerateBattlePyramidWildMon(void);
|
void GenerateBattlePyramidWildMon(void);
|
||||||
u8 GetPyramidRunMultiplier(void);
|
u8 GetPyramidRunMultiplier(void);
|
||||||
u8 InBattlePyramid(void);
|
u8 CurrentBattlePyramidLocation(void);
|
||||||
bool8 InBattlePyramid_(void);
|
bool8 InBattlePyramid_(void);
|
||||||
void PausePyramidChallenge(void);
|
void PausePyramidChallenge(void);
|
||||||
void SoftResetInBattlePyramid(void);
|
void SoftResetInBattlePyramid(void);
|
||||||
|
|||||||
@@ -43,7 +43,7 @@
|
|||||||
#define BATTLE_PYRAMID_FUNC_SET_TRAINERS 9
|
#define BATTLE_PYRAMID_FUNC_SET_TRAINERS 9
|
||||||
#define BATTLE_PYRAMID_FUNC_SHOW_HINT_TEXT 10
|
#define BATTLE_PYRAMID_FUNC_SHOW_HINT_TEXT 10
|
||||||
#define BATTLE_PYRAMID_FUNC_UPDATE_STREAK 11 // unused
|
#define BATTLE_PYRAMID_FUNC_UPDATE_STREAK 11 // unused
|
||||||
#define BATTLE_PYRAMID_FUNC_IS_IN 12
|
#define BATTLE_PYRAMID_FUNC_CURRENT_LOCATION 12
|
||||||
#define BATTLE_PYRAMID_FUNC_UPDATE_LIGHT 13
|
#define BATTLE_PYRAMID_FUNC_UPDATE_LIGHT 13
|
||||||
#define BATTLE_PYRAMID_FUNC_CLEAR_HELD_ITEMS 14
|
#define BATTLE_PYRAMID_FUNC_CLEAR_HELD_ITEMS 14
|
||||||
#define BATTLE_PYRAMID_FUNC_SET_FLOOR_PALETTE 15
|
#define BATTLE_PYRAMID_FUNC_SET_FLOOR_PALETTE 15
|
||||||
@@ -62,4 +62,8 @@
|
|||||||
#define PYRAMID_LIGHT_SET_RADIUS 0
|
#define PYRAMID_LIGHT_SET_RADIUS 0
|
||||||
#define PYRAMID_LIGHT_INCR_RADIUS 1
|
#define PYRAMID_LIGHT_INCR_RADIUS 1
|
||||||
|
|
||||||
|
#define PYRAMID_LOCATION_NONE 0 // Not in the Pyramid
|
||||||
|
#define PYRAMID_LOCATION_FLOOR 1
|
||||||
|
#define PYRAMID_LOCATION_TOP 2
|
||||||
|
|
||||||
#endif // GUARD_CONSTANTS_BATTLE_PYRAMID_H
|
#endif // GUARD_CONSTANTS_BATTLE_PYRAMID_H
|
||||||
|
|||||||
@@ -79,7 +79,7 @@ static void HidePyramidItem(void);
|
|||||||
static void SetPyramidFacilityTrainers(void);
|
static void SetPyramidFacilityTrainers(void);
|
||||||
static void ShowPostBattleHintText(void);
|
static void ShowPostBattleHintText(void);
|
||||||
static void UpdatePyramidWinStreak(void);
|
static void UpdatePyramidWinStreak(void);
|
||||||
static void GetInBattlePyramid(void);
|
static void GetCurrentBattlePyramidLocation(void);
|
||||||
static void UpdatePyramidLightRadius(void);
|
static void UpdatePyramidLightRadius(void);
|
||||||
static void ClearPyramidPartyHeldItems(void);
|
static void ClearPyramidPartyHeldItems(void);
|
||||||
static void SetPyramidFloorPalette(void);
|
static void SetPyramidFloorPalette(void);
|
||||||
@@ -798,7 +798,7 @@ static void (*const sBattlePyramidFunctions[])(void) =
|
|||||||
[BATTLE_PYRAMID_FUNC_SET_TRAINERS] = SetPyramidFacilityTrainers,
|
[BATTLE_PYRAMID_FUNC_SET_TRAINERS] = SetPyramidFacilityTrainers,
|
||||||
[BATTLE_PYRAMID_FUNC_SHOW_HINT_TEXT] = ShowPostBattleHintText,
|
[BATTLE_PYRAMID_FUNC_SHOW_HINT_TEXT] = ShowPostBattleHintText,
|
||||||
[BATTLE_PYRAMID_FUNC_UPDATE_STREAK] = UpdatePyramidWinStreak,
|
[BATTLE_PYRAMID_FUNC_UPDATE_STREAK] = UpdatePyramidWinStreak,
|
||||||
[BATTLE_PYRAMID_FUNC_IS_IN] = GetInBattlePyramid,
|
[BATTLE_PYRAMID_FUNC_CURRENT_LOCATION] = GetCurrentBattlePyramidLocation,
|
||||||
[BATTLE_PYRAMID_FUNC_UPDATE_LIGHT] = UpdatePyramidLightRadius,
|
[BATTLE_PYRAMID_FUNC_UPDATE_LIGHT] = UpdatePyramidLightRadius,
|
||||||
[BATTLE_PYRAMID_FUNC_CLEAR_HELD_ITEMS] = ClearPyramidPartyHeldItems,
|
[BATTLE_PYRAMID_FUNC_CLEAR_HELD_ITEMS] = ClearPyramidPartyHeldItems,
|
||||||
[BATTLE_PYRAMID_FUNC_SET_FLOOR_PALETTE] = SetPyramidFloorPalette,
|
[BATTLE_PYRAMID_FUNC_SET_FLOOR_PALETTE] = SetPyramidFloorPalette,
|
||||||
@@ -1113,9 +1113,9 @@ static void UpdatePyramidWinStreak(void)
|
|||||||
gSaveBlock2Ptr->frontier.pyramidRecordStreaks[lvlMode] = gSaveBlock2Ptr->frontier.pyramidWinStreaks[lvlMode];
|
gSaveBlock2Ptr->frontier.pyramidRecordStreaks[lvlMode] = gSaveBlock2Ptr->frontier.pyramidWinStreaks[lvlMode];
|
||||||
}
|
}
|
||||||
|
|
||||||
static void GetInBattlePyramid(void)
|
static void GetCurrentBattlePyramidLocation(void)
|
||||||
{
|
{
|
||||||
gSpecialVar_Result = InBattlePyramid();
|
gSpecialVar_Result = CurrentBattlePyramidLocation();
|
||||||
}
|
}
|
||||||
|
|
||||||
static void UpdatePyramidLightRadius(void)
|
static void UpdatePyramidLightRadius(void)
|
||||||
@@ -1419,14 +1419,14 @@ u8 GetPyramidRunMultiplier(void)
|
|||||||
return sPyramidFloorTemplates[id].runMultiplier;
|
return sPyramidFloorTemplates[id].runMultiplier;
|
||||||
}
|
}
|
||||||
|
|
||||||
u8 InBattlePyramid(void)
|
u8 CurrentBattlePyramidLocation(void)
|
||||||
{
|
{
|
||||||
if (gMapHeader.mapLayoutId == LAYOUT_BATTLE_FRONTIER_BATTLE_PYRAMID_FLOOR)
|
if (gMapHeader.mapLayoutId == LAYOUT_BATTLE_FRONTIER_BATTLE_PYRAMID_FLOOR)
|
||||||
return 1;
|
return PYRAMID_LOCATION_FLOOR;
|
||||||
else if (gMapHeader.mapLayoutId == LAYOUT_BATTLE_FRONTIER_BATTLE_PYRAMID_TOP)
|
else if (gMapHeader.mapLayoutId == LAYOUT_BATTLE_FRONTIER_BATTLE_PYRAMID_TOP)
|
||||||
return 2;
|
return PYRAMID_LOCATION_TOP;
|
||||||
else
|
else
|
||||||
return FALSE;
|
return PYRAMID_LOCATION_NONE;
|
||||||
}
|
}
|
||||||
|
|
||||||
bool8 InBattlePyramid_(void)
|
bool8 InBattlePyramid_(void)
|
||||||
@@ -1437,7 +1437,7 @@ bool8 InBattlePyramid_(void)
|
|||||||
|
|
||||||
void PausePyramidChallenge(void)
|
void PausePyramidChallenge(void)
|
||||||
{
|
{
|
||||||
if (InBattlePyramid())
|
if (CurrentBattlePyramidLocation() != PYRAMID_LOCATION_NONE)
|
||||||
{
|
{
|
||||||
RestorePyramidPlayerParty();
|
RestorePyramidPlayerParty();
|
||||||
gSaveBlock2Ptr->frontier.challengeStatus = CHALLENGE_STATUS_PAUSED;
|
gSaveBlock2Ptr->frontier.challengeStatus = CHALLENGE_STATUS_PAUSED;
|
||||||
@@ -1448,7 +1448,7 @@ void PausePyramidChallenge(void)
|
|||||||
|
|
||||||
void SoftResetInBattlePyramid(void)
|
void SoftResetInBattlePyramid(void)
|
||||||
{
|
{
|
||||||
if (InBattlePyramid())
|
if (CurrentBattlePyramidLocation() != PYRAMID_LOCATION_NONE)
|
||||||
DoSoftReset();
|
DoSoftReset();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -9684,7 +9684,7 @@ static void Cmd_pickup(void)
|
|||||||
{
|
{
|
||||||
|
|
||||||
}
|
}
|
||||||
else if (InBattlePyramid())
|
else if (CurrentBattlePyramidLocation() != PYRAMID_LOCATION_NONE)
|
||||||
{
|
{
|
||||||
for (i = 0; i < PARTY_SIZE; i++)
|
for (i = 0; i < PARTY_SIZE; i++)
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -406,7 +406,7 @@ static void DoStandardWildBattle(void)
|
|||||||
StopPlayerAvatar();
|
StopPlayerAvatar();
|
||||||
gMain.savedCallback = CB2_EndWildBattle;
|
gMain.savedCallback = CB2_EndWildBattle;
|
||||||
gBattleTypeFlags = 0;
|
gBattleTypeFlags = 0;
|
||||||
if (InBattlePyramid())
|
if (CurrentBattlePyramidLocation() != PYRAMID_LOCATION_NONE)
|
||||||
{
|
{
|
||||||
VarSet(VAR_TEMP_PLAYING_PYRAMID_MUSIC, 0);
|
VarSet(VAR_TEMP_PLAYING_PYRAMID_MUSIC, 0);
|
||||||
gBattleTypeFlags |= BATTLE_TYPE_PYRAMID;
|
gBattleTypeFlags |= BATTLE_TYPE_PYRAMID;
|
||||||
@@ -466,7 +466,7 @@ static void DoTrainerBattle(void)
|
|||||||
|
|
||||||
static void DoBattlePyramidTrainerHillBattle(void)
|
static void DoBattlePyramidTrainerHillBattle(void)
|
||||||
{
|
{
|
||||||
if (InBattlePyramid())
|
if (CurrentBattlePyramidLocation() != PYRAMID_LOCATION_NONE)
|
||||||
CreateBattleStartTask(GetSpecialBattleTransition(B_TRANSITION_GROUP_B_PYRAMID), 0);
|
CreateBattleStartTask(GetSpecialBattleTransition(B_TRANSITION_GROUP_B_PYRAMID), 0);
|
||||||
else
|
else
|
||||||
CreateBattleStartTask(GetSpecialBattleTransition(B_TRANSITION_GROUP_TRAINER_HILL), 0);
|
CreateBattleStartTask(GetSpecialBattleTransition(B_TRANSITION_GROUP_TRAINER_HILL), 0);
|
||||||
@@ -604,7 +604,7 @@ static void CB2_EndWildBattle(void)
|
|||||||
CpuFill16(0, (void *)(BG_PLTT), BG_PLTT_SIZE);
|
CpuFill16(0, (void *)(BG_PLTT), BG_PLTT_SIZE);
|
||||||
ResetOamRange(0, 128);
|
ResetOamRange(0, 128);
|
||||||
|
|
||||||
if (IsPlayerDefeated(gBattleOutcome) == TRUE && !InBattlePyramid() && !InBattlePike())
|
if (IsPlayerDefeated(gBattleOutcome) == TRUE && CurrentBattlePyramidLocation() == PYRAMID_LOCATION_NONE && !InBattlePike())
|
||||||
{
|
{
|
||||||
SetMainCallback2(CB2_WhiteOut);
|
SetMainCallback2(CB2_WhiteOut);
|
||||||
}
|
}
|
||||||
@@ -622,7 +622,7 @@ static void CB2_EndScriptedWildBattle(void)
|
|||||||
|
|
||||||
if (IsPlayerDefeated(gBattleOutcome) == TRUE)
|
if (IsPlayerDefeated(gBattleOutcome) == TRUE)
|
||||||
{
|
{
|
||||||
if (InBattlePyramid())
|
if (CurrentBattlePyramidLocation() != PYRAMID_LOCATION_NONE)
|
||||||
SetMainCallback2(CB2_ReturnToFieldContinueScriptPlayMapMusic);
|
SetMainCallback2(CB2_ReturnToFieldContinueScriptPlayMapMusic);
|
||||||
else
|
else
|
||||||
SetMainCallback2(CB2_WhiteOut);
|
SetMainCallback2(CB2_WhiteOut);
|
||||||
@@ -795,14 +795,14 @@ static u8 GetWildBattleTransition(void)
|
|||||||
|
|
||||||
if (enemyLevel < playerLevel)
|
if (enemyLevel < playerLevel)
|
||||||
{
|
{
|
||||||
if (InBattlePyramid())
|
if (CurrentBattlePyramidLocation() != PYRAMID_LOCATION_NONE)
|
||||||
return B_TRANSITION_BLUR;
|
return B_TRANSITION_BLUR;
|
||||||
else
|
else
|
||||||
return sBattleTransitionTable_Wild[transitionType][0];
|
return sBattleTransitionTable_Wild[transitionType][0];
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
if (InBattlePyramid())
|
if (CurrentBattlePyramidLocation() != PYRAMID_LOCATION_NONE)
|
||||||
return B_TRANSITION_GRID_SQUARES;
|
return B_TRANSITION_GRID_SQUARES;
|
||||||
else
|
else
|
||||||
return sBattleTransitionTable_Wild[transitionType][1];
|
return sBattleTransitionTable_Wild[transitionType][1];
|
||||||
@@ -1234,7 +1234,7 @@ u8 GetTrainerBattleMode(void)
|
|||||||
|
|
||||||
bool8 GetTrainerFlag(void)
|
bool8 GetTrainerFlag(void)
|
||||||
{
|
{
|
||||||
if (InBattlePyramid())
|
if (CurrentBattlePyramidLocation() != PYRAMID_LOCATION_NONE)
|
||||||
return GetBattlePyramidTrainerFlag(gSelectedObjectEvent);
|
return GetBattlePyramidTrainerFlag(gSelectedObjectEvent);
|
||||||
else if (InTrainerHill())
|
else if (InTrainerHill())
|
||||||
return GetHillTrainerFlag(gSelectedObjectEvent);
|
return GetHillTrainerFlag(gSelectedObjectEvent);
|
||||||
@@ -1276,7 +1276,7 @@ void BattleSetup_StartTrainerBattle(void)
|
|||||||
else
|
else
|
||||||
gBattleTypeFlags = (BATTLE_TYPE_TRAINER);
|
gBattleTypeFlags = (BATTLE_TYPE_TRAINER);
|
||||||
|
|
||||||
if (InBattlePyramid())
|
if (CurrentBattlePyramidLocation() != PYRAMID_LOCATION_NONE)
|
||||||
{
|
{
|
||||||
VarSet(VAR_TEMP_PLAYING_PYRAMID_MUSIC, 0);
|
VarSet(VAR_TEMP_PLAYING_PYRAMID_MUSIC, 0);
|
||||||
gBattleTypeFlags |= BATTLE_TYPE_PYRAMID;
|
gBattleTypeFlags |= BATTLE_TYPE_PYRAMID;
|
||||||
@@ -1316,7 +1316,7 @@ void BattleSetup_StartTrainerBattle(void)
|
|||||||
gWhichTrainerToFaceAfterBattle = 0;
|
gWhichTrainerToFaceAfterBattle = 0;
|
||||||
gMain.savedCallback = CB2_EndTrainerBattle;
|
gMain.savedCallback = CB2_EndTrainerBattle;
|
||||||
|
|
||||||
if (InBattlePyramid() || InTrainerHillChallenge())
|
if (CurrentBattlePyramidLocation() != PYRAMID_LOCATION_NONE || InTrainerHillChallenge())
|
||||||
DoBattlePyramidTrainerHillBattle();
|
DoBattlePyramidTrainerHillBattle();
|
||||||
else
|
else
|
||||||
DoTrainerBattle();
|
DoTrainerBattle();
|
||||||
@@ -1332,7 +1332,7 @@ static void CB2_EndTrainerBattle(void)
|
|||||||
}
|
}
|
||||||
else if (IsPlayerDefeated(gBattleOutcome) == TRUE)
|
else if (IsPlayerDefeated(gBattleOutcome) == TRUE)
|
||||||
{
|
{
|
||||||
if (InBattlePyramid() || InTrainerHillChallenge())
|
if (CurrentBattlePyramidLocation() != PYRAMID_LOCATION_NONE || InTrainerHillChallenge())
|
||||||
SetMainCallback2(CB2_ReturnToFieldContinueScriptPlayMapMusic);
|
SetMainCallback2(CB2_ReturnToFieldContinueScriptPlayMapMusic);
|
||||||
else
|
else
|
||||||
SetMainCallback2(CB2_WhiteOut);
|
SetMainCallback2(CB2_WhiteOut);
|
||||||
@@ -1340,7 +1340,7 @@ static void CB2_EndTrainerBattle(void)
|
|||||||
else
|
else
|
||||||
{
|
{
|
||||||
SetMainCallback2(CB2_ReturnToFieldContinueScriptPlayMapMusic);
|
SetMainCallback2(CB2_ReturnToFieldContinueScriptPlayMapMusic);
|
||||||
if (!InBattlePyramid() && !InTrainerHillChallenge())
|
if (CurrentBattlePyramidLocation() == PYRAMID_LOCATION_NONE && !InTrainerHillChallenge())
|
||||||
{
|
{
|
||||||
RegisterTrainerInMatchCall();
|
RegisterTrainerInMatchCall();
|
||||||
SetBattledTrainersFlags();
|
SetBattledTrainersFlags();
|
||||||
@@ -1377,7 +1377,7 @@ void BattleSetup_StartRematchBattle(void)
|
|||||||
|
|
||||||
void ShowTrainerIntroSpeech(void)
|
void ShowTrainerIntroSpeech(void)
|
||||||
{
|
{
|
||||||
if (InBattlePyramid())
|
if (CurrentBattlePyramidLocation() != PYRAMID_LOCATION_NONE)
|
||||||
{
|
{
|
||||||
if (gNoOfApproachingTrainers == 0 || gNoOfApproachingTrainers == 1)
|
if (gNoOfApproachingTrainers == 0 || gNoOfApproachingTrainers == 1)
|
||||||
CopyPyramidTrainerSpeechBefore(LocalIdToPyramidTrainerId(gSpecialVar_LastTalked));
|
CopyPyramidTrainerSpeechBefore(LocalIdToPyramidTrainerId(gSpecialVar_LastTalked));
|
||||||
|
|||||||
@@ -426,7 +426,7 @@ bool8 TryRunFromBattle(u8 battler)
|
|||||||
}
|
}
|
||||||
else if (gBattleMons[battler].ability == ABILITY_RUN_AWAY)
|
else if (gBattleMons[battler].ability == ABILITY_RUN_AWAY)
|
||||||
{
|
{
|
||||||
if (InBattlePyramid())
|
if (CurrentBattlePyramidLocation() != PYRAMID_LOCATION_NONE)
|
||||||
{
|
{
|
||||||
gBattleStruct->runTries++;
|
gBattleStruct->runTries++;
|
||||||
pyramidMultiplier = GetPyramidRunMultiplier();
|
pyramidMultiplier = GetPyramidRunMultiplier();
|
||||||
@@ -453,7 +453,7 @@ bool8 TryRunFromBattle(u8 battler)
|
|||||||
{
|
{
|
||||||
if (!(gBattleTypeFlags & BATTLE_TYPE_DOUBLE))
|
if (!(gBattleTypeFlags & BATTLE_TYPE_DOUBLE))
|
||||||
{
|
{
|
||||||
if (InBattlePyramid())
|
if (CurrentBattlePyramidLocation() != PYRAMID_LOCATION_NONE)
|
||||||
{
|
{
|
||||||
pyramidMultiplier = GetPyramidRunMultiplier();
|
pyramidMultiplier = GetPyramidRunMultiplier();
|
||||||
speedVar = (gBattleMons[battler].speed * pyramidMultiplier) / (gBattleMons[BATTLE_OPPOSITE(battler)].speed) + (gBattleStruct->runTries * 30);
|
speedVar = (gBattleMons[battler].speed * pyramidMultiplier) / (gBattleMons[BATTLE_OPPOSITE(battler)].speed) + (gBattleStruct->runTries * 30);
|
||||||
|
|||||||
@@ -1338,7 +1338,7 @@ u8 Unref_TryInitLocalObjectEvent(u8 localId)
|
|||||||
|
|
||||||
if (gMapHeader.events != NULL)
|
if (gMapHeader.events != NULL)
|
||||||
{
|
{
|
||||||
if (InBattlePyramid())
|
if (CurrentBattlePyramidLocation() != PYRAMID_LOCATION_NONE)
|
||||||
objectEventCount = GetNumBattlePyramidObjectEvents();
|
objectEventCount = GetNumBattlePyramidObjectEvents();
|
||||||
else if (InTrainerHill())
|
else if (InTrainerHill())
|
||||||
objectEventCount = HILL_TRAINERS_PER_FLOOR;
|
objectEventCount = HILL_TRAINERS_PER_FLOOR;
|
||||||
@@ -1654,7 +1654,7 @@ void TrySpawnObjectEvents(s16 cameraX, s16 cameraY)
|
|||||||
s16 top = gSaveBlock1Ptr->pos.y;
|
s16 top = gSaveBlock1Ptr->pos.y;
|
||||||
s16 bottom = gSaveBlock1Ptr->pos.y + MAP_OFFSET_H + 2;
|
s16 bottom = gSaveBlock1Ptr->pos.y + MAP_OFFSET_H + 2;
|
||||||
|
|
||||||
if (InBattlePyramid())
|
if (CurrentBattlePyramidLocation() != PYRAMID_LOCATION_NONE)
|
||||||
objectCount = GetNumBattlePyramidObjectEvents();
|
objectCount = GetNumBattlePyramidObjectEvents();
|
||||||
else if (InTrainerHill())
|
else if (InTrainerHill())
|
||||||
objectCount = HILL_TRAINERS_PER_FLOOR;
|
objectCount = HILL_TRAINERS_PER_FLOOR;
|
||||||
|
|||||||
@@ -90,9 +90,9 @@ static void Task_TryFieldPoisonWhiteOut(u8 taskId)
|
|||||||
{
|
{
|
||||||
// Battle facilities have their own white out script to handle the challenge loss
|
// Battle facilities have their own white out script to handle the challenge loss
|
||||||
#ifdef BUGFIX
|
#ifdef BUGFIX
|
||||||
if (InBattlePyramid() || InBattlePike() || InTrainerHillChallenge())
|
if (CurrentBattlePyramidLocation() || InBattlePike() || InTrainerHillChallenge())
|
||||||
#else
|
#else
|
||||||
if (InBattlePyramid() | InBattlePike() || InTrainerHillChallenge())
|
if (CurrentBattlePyramidLocation() | InBattlePike() || InTrainerHillChallenge())
|
||||||
#endif
|
#endif
|
||||||
gSpecialVar_Result = FLDPSN_FRONTIER_WHITEOUT;
|
gSpecialVar_Result = FLDPSN_FRONTIER_WHITEOUT;
|
||||||
else
|
else
|
||||||
|
|||||||
@@ -917,12 +917,12 @@ static void CB2_ReturnFromRecord(void)
|
|||||||
sPassData->cursorX = sSavedPassData.cursorX;
|
sPassData->cursorX = sSavedPassData.cursorX;
|
||||||
sPassData->cursorY = sSavedPassData.cursorY;
|
sPassData->cursorY = sSavedPassData.cursorY;
|
||||||
memset(&sSavedPassData, 0, sizeof(sSavedPassData));
|
memset(&sSavedPassData, 0, sizeof(sSavedPassData));
|
||||||
switch (InBattlePyramid())
|
switch (CurrentBattlePyramidLocation())
|
||||||
{
|
{
|
||||||
case 1:
|
case PYRAMID_LOCATION_FLOOR:
|
||||||
PlayBGM(MUS_B_PYRAMID);
|
PlayBGM(MUS_B_PYRAMID);
|
||||||
break;
|
break;
|
||||||
case 2:
|
case PYRAMID_LOCATION_TOP:
|
||||||
PlayBGM(MUS_B_PYRAMID_TOP);
|
PlayBGM(MUS_B_PYRAMID_TOP);
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
|
|||||||
@@ -133,7 +133,7 @@ bool8 CheckBagHasItem(u16 itemId, u16 count)
|
|||||||
|
|
||||||
if (GetItemPocket(itemId) == 0)
|
if (GetItemPocket(itemId) == 0)
|
||||||
return FALSE;
|
return FALSE;
|
||||||
if (InBattlePyramid() || FlagGet(FLAG_STORING_ITEMS_IN_PYRAMID_BAG) == TRUE)
|
if (CurrentBattlePyramidLocation() != PYRAMID_LOCATION_NONE || FlagGet(FLAG_STORING_ITEMS_IN_PYRAMID_BAG) == TRUE)
|
||||||
return CheckPyramidBagHasItem(itemId, count);
|
return CheckPyramidBagHasItem(itemId, count);
|
||||||
pocket = GetItemPocket(itemId) - 1;
|
pocket = GetItemPocket(itemId) - 1;
|
||||||
// Check for item slots that contain the item
|
// Check for item slots that contain the item
|
||||||
@@ -181,7 +181,7 @@ bool8 CheckBagHasSpace(u16 itemId, u16 count)
|
|||||||
if (GetItemPocket(itemId) == POCKET_NONE)
|
if (GetItemPocket(itemId) == POCKET_NONE)
|
||||||
return FALSE;
|
return FALSE;
|
||||||
|
|
||||||
if (InBattlePyramid() || FlagGet(FLAG_STORING_ITEMS_IN_PYRAMID_BAG) == TRUE)
|
if (CurrentBattlePyramidLocation() != PYRAMID_LOCATION_NONE || FlagGet(FLAG_STORING_ITEMS_IN_PYRAMID_BAG) == TRUE)
|
||||||
{
|
{
|
||||||
return CheckPyramidBagHasSpace(itemId, count);
|
return CheckPyramidBagHasSpace(itemId, count);
|
||||||
}
|
}
|
||||||
@@ -243,7 +243,7 @@ bool8 AddBagItem(u16 itemId, u16 count)
|
|||||||
return FALSE;
|
return FALSE;
|
||||||
|
|
||||||
// check Battle Pyramid Bag
|
// check Battle Pyramid Bag
|
||||||
if (InBattlePyramid() || FlagGet(FLAG_STORING_ITEMS_IN_PYRAMID_BAG) == TRUE)
|
if (CurrentBattlePyramidLocation() != PYRAMID_LOCATION_NONE || FlagGet(FLAG_STORING_ITEMS_IN_PYRAMID_BAG) == TRUE)
|
||||||
{
|
{
|
||||||
return AddPyramidBagItem(itemId, count);
|
return AddPyramidBagItem(itemId, count);
|
||||||
}
|
}
|
||||||
@@ -351,7 +351,7 @@ bool8 RemoveBagItem(u16 itemId, u16 count)
|
|||||||
return FALSE;
|
return FALSE;
|
||||||
|
|
||||||
// check Battle Pyramid Bag
|
// check Battle Pyramid Bag
|
||||||
if (InBattlePyramid() || FlagGet(FLAG_STORING_ITEMS_IN_PYRAMID_BAG) == TRUE)
|
if (CurrentBattlePyramidLocation() != PYRAMID_LOCATION_NONE || FlagGet(FLAG_STORING_ITEMS_IN_PYRAMID_BAG) == TRUE)
|
||||||
{
|
{
|
||||||
return RemovePyramidBagItem(itemId, count);
|
return RemovePyramidBagItem(itemId, count);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -565,7 +565,7 @@ void CB2_BagMenuFromStartMenu(void)
|
|||||||
|
|
||||||
void CB2_BagMenuFromBattle(void)
|
void CB2_BagMenuFromBattle(void)
|
||||||
{
|
{
|
||||||
if (!InBattlePyramid())
|
if (CurrentBattlePyramidLocation() == PYRAMID_LOCATION_NONE)
|
||||||
GoToBagMenu(ITEMMENULOCATION_BATTLE, POCKETS_COUNT, CB2_SetUpReshowBattleScreenAfterMenu2);
|
GoToBagMenu(ITEMMENULOCATION_BATTLE, POCKETS_COUNT, CB2_SetUpReshowBattleScreenAfterMenu2);
|
||||||
else
|
else
|
||||||
GoToBattlePyramidBagMenu(PYRAMIDBAG_LOC_BATTLE, CB2_SetUpReshowBattleScreenAfterMenu2);
|
GoToBattlePyramidBagMenu(PYRAMIDBAG_LOC_BATTLE, CB2_SetUpReshowBattleScreenAfterMenu2);
|
||||||
@@ -2036,7 +2036,7 @@ bool8 UseRegisteredKeyItemOnField(void)
|
|||||||
{
|
{
|
||||||
u8 taskId;
|
u8 taskId;
|
||||||
|
|
||||||
if (InUnionRoom() == TRUE || InBattlePyramid() || InBattlePike() || InMultiPartnerRoom() == TRUE)
|
if (InUnionRoom() == TRUE || CurrentBattlePyramidLocation() != PYRAMID_LOCATION_NONE || InBattlePike() || InMultiPartnerRoom() == TRUE)
|
||||||
return FALSE;
|
return FALSE;
|
||||||
HideMapNamePopUpWindow();
|
HideMapNamePopUpWindow();
|
||||||
ChangeBgY_ScreenOff(0, 0, BG_COORD_SET);
|
ChangeBgY_ScreenOff(0, 0, BG_COORD_SET);
|
||||||
|
|||||||
@@ -102,7 +102,7 @@ static void SetUpItemUseCallback(u8 taskId)
|
|||||||
type = gTasks[taskId].tEnigmaBerryType - 1;
|
type = gTasks[taskId].tEnigmaBerryType - 1;
|
||||||
else
|
else
|
||||||
type = GetItemType(gSpecialVar_ItemId) - 1;
|
type = GetItemType(gSpecialVar_ItemId) - 1;
|
||||||
if (!InBattlePyramid())
|
if (CurrentBattlePyramidLocation() == PYRAMID_LOCATION_NONE)
|
||||||
{
|
{
|
||||||
gBagMenu->newScreenCallback = sItemUseCallbacks[type];
|
gBagMenu->newScreenCallback = sItemUseCallbacks[type];
|
||||||
Task_FadeAndCloseBagMenu(taskId);
|
Task_FadeAndCloseBagMenu(taskId);
|
||||||
@@ -144,7 +144,7 @@ static void DisplayCannotUseItemMessage(u8 taskId, bool8 isUsingRegisteredKeyIte
|
|||||||
StringExpandPlaceholders(gStringVar4, str);
|
StringExpandPlaceholders(gStringVar4, str);
|
||||||
if (!isUsingRegisteredKeyItemOnField)
|
if (!isUsingRegisteredKeyItemOnField)
|
||||||
{
|
{
|
||||||
if (!InBattlePyramid())
|
if (CurrentBattlePyramidLocation() == PYRAMID_LOCATION_NONE)
|
||||||
DisplayItemMessage(taskId, FONT_NORMAL, gStringVar4, CloseItemMessage);
|
DisplayItemMessage(taskId, FONT_NORMAL, gStringVar4, CloseItemMessage);
|
||||||
else
|
else
|
||||||
DisplayItemMessageInBattlePyramid(taskId, gText_DadsAdvice, Task_CloseBattlePyramidBagMessage);
|
DisplayItemMessageInBattlePyramid(taskId, gText_DadsAdvice, Task_CloseBattlePyramidBagMessage);
|
||||||
@@ -826,7 +826,7 @@ static void RemoveUsedItem(void)
|
|||||||
RemoveBagItem(gSpecialVar_ItemId, 1);
|
RemoveBagItem(gSpecialVar_ItemId, 1);
|
||||||
CopyItemName(gSpecialVar_ItemId, gStringVar2);
|
CopyItemName(gSpecialVar_ItemId, gStringVar2);
|
||||||
StringExpandPlaceholders(gStringVar4, gText_PlayerUsedVar2);
|
StringExpandPlaceholders(gStringVar4, gText_PlayerUsedVar2);
|
||||||
if (!InBattlePyramid())
|
if (CurrentBattlePyramidLocation() == PYRAMID_LOCATION_NONE)
|
||||||
{
|
{
|
||||||
UpdatePocketItemList(GetItemPocket(gSpecialVar_ItemId));
|
UpdatePocketItemList(GetItemPocket(gSpecialVar_ItemId));
|
||||||
UpdatePocketListPosition(GetItemPocket(gSpecialVar_ItemId));
|
UpdatePocketListPosition(GetItemPocket(gSpecialVar_ItemId));
|
||||||
@@ -842,7 +842,7 @@ void ItemUseOutOfBattle_Repel(u8 taskId)
|
|||||||
{
|
{
|
||||||
if (VarGet(VAR_REPEL_STEP_COUNT) == 0)
|
if (VarGet(VAR_REPEL_STEP_COUNT) == 0)
|
||||||
gTasks[taskId].func = Task_StartUseRepel;
|
gTasks[taskId].func = Task_StartUseRepel;
|
||||||
else if (!InBattlePyramid())
|
else if (CurrentBattlePyramidLocation() == PYRAMID_LOCATION_NONE)
|
||||||
DisplayItemMessage(taskId, FONT_NORMAL, gText_RepelEffectsLingered, CloseItemMessage);
|
DisplayItemMessage(taskId, FONT_NORMAL, gText_RepelEffectsLingered, CloseItemMessage);
|
||||||
else
|
else
|
||||||
DisplayItemMessageInBattlePyramid(taskId, gText_RepelEffectsLingered, Task_CloseBattlePyramidBagMessage);
|
DisplayItemMessageInBattlePyramid(taskId, gText_RepelEffectsLingered, Task_CloseBattlePyramidBagMessage);
|
||||||
@@ -866,7 +866,7 @@ static void Task_UseRepel(u8 taskId)
|
|||||||
{
|
{
|
||||||
VarSet(VAR_REPEL_STEP_COUNT, GetItemHoldEffectParam(gSpecialVar_ItemId));
|
VarSet(VAR_REPEL_STEP_COUNT, GetItemHoldEffectParam(gSpecialVar_ItemId));
|
||||||
RemoveUsedItem();
|
RemoveUsedItem();
|
||||||
if (!InBattlePyramid())
|
if (CurrentBattlePyramidLocation() == PYRAMID_LOCATION_NONE)
|
||||||
DisplayItemMessage(taskId, FONT_NORMAL, gStringVar4, CloseItemMessage);
|
DisplayItemMessage(taskId, FONT_NORMAL, gStringVar4, CloseItemMessage);
|
||||||
else
|
else
|
||||||
DisplayItemMessageInBattlePyramid(taskId, gStringVar4, Task_CloseBattlePyramidBagMessage);
|
DisplayItemMessageInBattlePyramid(taskId, gStringVar4, Task_CloseBattlePyramidBagMessage);
|
||||||
@@ -878,7 +878,7 @@ static void Task_UsedBlackWhiteFlute(u8 taskId)
|
|||||||
if(++gTasks[taskId].data[8] > 7)
|
if(++gTasks[taskId].data[8] > 7)
|
||||||
{
|
{
|
||||||
PlaySE(SE_GLASS_FLUTE);
|
PlaySE(SE_GLASS_FLUTE);
|
||||||
if (!InBattlePyramid())
|
if (CurrentBattlePyramidLocation() == PYRAMID_LOCATION_NONE)
|
||||||
DisplayItemMessage(taskId, FONT_NORMAL, gStringVar4, CloseItemMessage);
|
DisplayItemMessage(taskId, FONT_NORMAL, gStringVar4, CloseItemMessage);
|
||||||
else
|
else
|
||||||
DisplayItemMessageInBattlePyramid(taskId, gStringVar4, Task_CloseBattlePyramidBagMessage);
|
DisplayItemMessageInBattlePyramid(taskId, gStringVar4, Task_CloseBattlePyramidBagMessage);
|
||||||
@@ -951,12 +951,12 @@ void ItemUseInBattle_PokeBall(u8 taskId)
|
|||||||
if (IsPlayerPartyAndPokemonStorageFull() == FALSE) // have room for mon?
|
if (IsPlayerPartyAndPokemonStorageFull() == FALSE) // have room for mon?
|
||||||
{
|
{
|
||||||
RemoveBagItem(gSpecialVar_ItemId, 1);
|
RemoveBagItem(gSpecialVar_ItemId, 1);
|
||||||
if (!InBattlePyramid())
|
if (CurrentBattlePyramidLocation() == PYRAMID_LOCATION_NONE)
|
||||||
Task_FadeAndCloseBagMenu(taskId);
|
Task_FadeAndCloseBagMenu(taskId);
|
||||||
else
|
else
|
||||||
CloseBattlePyramidBag(taskId);
|
CloseBattlePyramidBag(taskId);
|
||||||
}
|
}
|
||||||
else if (!InBattlePyramid())
|
else if (CurrentBattlePyramidLocation() == PYRAMID_LOCATION_NONE)
|
||||||
{
|
{
|
||||||
DisplayItemMessage(taskId, FONT_NORMAL, gText_BoxFull, CloseItemMessage);
|
DisplayItemMessage(taskId, FONT_NORMAL, gText_BoxFull, CloseItemMessage);
|
||||||
}
|
}
|
||||||
@@ -970,7 +970,7 @@ static void Task_CloseStatIncreaseMessage(u8 taskId)
|
|||||||
{
|
{
|
||||||
if (JOY_NEW(A_BUTTON | B_BUTTON))
|
if (JOY_NEW(A_BUTTON | B_BUTTON))
|
||||||
{
|
{
|
||||||
if (!InBattlePyramid())
|
if (CurrentBattlePyramidLocation() == PYRAMID_LOCATION_NONE)
|
||||||
Task_FadeAndCloseBagMenu(taskId);
|
Task_FadeAndCloseBagMenu(taskId);
|
||||||
else
|
else
|
||||||
CloseBattlePyramidBag(taskId);
|
CloseBattlePyramidBag(taskId);
|
||||||
@@ -983,7 +983,7 @@ static void Task_UseStatIncreaseItem(u8 taskId)
|
|||||||
{
|
{
|
||||||
PlaySE(SE_USE_ITEM);
|
PlaySE(SE_USE_ITEM);
|
||||||
RemoveBagItem(gSpecialVar_ItemId, 1);
|
RemoveBagItem(gSpecialVar_ItemId, 1);
|
||||||
if (!InBattlePyramid())
|
if (CurrentBattlePyramidLocation() == PYRAMID_LOCATION_NONE)
|
||||||
DisplayItemMessage(taskId, FONT_NORMAL, UseStatIncreaseItem(gSpecialVar_ItemId), Task_CloseStatIncreaseMessage);
|
DisplayItemMessage(taskId, FONT_NORMAL, UseStatIncreaseItem(gSpecialVar_ItemId), Task_CloseStatIncreaseMessage);
|
||||||
else
|
else
|
||||||
DisplayItemMessageInBattlePyramid(taskId, UseStatIncreaseItem(gSpecialVar_ItemId), Task_CloseStatIncreaseMessage);
|
DisplayItemMessageInBattlePyramid(taskId, UseStatIncreaseItem(gSpecialVar_ItemId), Task_CloseStatIncreaseMessage);
|
||||||
@@ -997,7 +997,7 @@ void ItemUseInBattle_StatIncrease(u8 taskId)
|
|||||||
|
|
||||||
if (ExecuteTableBasedItemEffect(&gPlayerParty[partyId], gSpecialVar_ItemId, partyId, 0) != FALSE)
|
if (ExecuteTableBasedItemEffect(&gPlayerParty[partyId], gSpecialVar_ItemId, partyId, 0) != FALSE)
|
||||||
{
|
{
|
||||||
if (!InBattlePyramid())
|
if (CurrentBattlePyramidLocation() == PYRAMID_LOCATION_NONE)
|
||||||
DisplayItemMessage(taskId, FONT_NORMAL, gText_WontHaveEffect, CloseItemMessage);
|
DisplayItemMessage(taskId, FONT_NORMAL, gText_WontHaveEffect, CloseItemMessage);
|
||||||
else
|
else
|
||||||
DisplayItemMessageInBattlePyramid(taskId, gText_WontHaveEffect, Task_CloseBattlePyramidBagMessage);
|
DisplayItemMessageInBattlePyramid(taskId, gText_WontHaveEffect, Task_CloseBattlePyramidBagMessage);
|
||||||
@@ -1011,7 +1011,7 @@ void ItemUseInBattle_StatIncrease(u8 taskId)
|
|||||||
|
|
||||||
static void ItemUseInBattle_ShowPartyMenu(u8 taskId)
|
static void ItemUseInBattle_ShowPartyMenu(u8 taskId)
|
||||||
{
|
{
|
||||||
if (!InBattlePyramid())
|
if (CurrentBattlePyramidLocation() == PYRAMID_LOCATION_NONE)
|
||||||
{
|
{
|
||||||
gBagMenu->newScreenCallback = ChooseMonForInBattleItem;
|
gBagMenu->newScreenCallback = ChooseMonForInBattleItem;
|
||||||
Task_FadeAndCloseBagMenu(taskId);
|
Task_FadeAndCloseBagMenu(taskId);
|
||||||
@@ -1049,7 +1049,7 @@ void ItemUseInBattle_Escape(u8 taskId)
|
|||||||
if((gBattleTypeFlags & BATTLE_TYPE_TRAINER) == FALSE)
|
if((gBattleTypeFlags & BATTLE_TYPE_TRAINER) == FALSE)
|
||||||
{
|
{
|
||||||
RemoveUsedItem();
|
RemoveUsedItem();
|
||||||
if (!InBattlePyramid())
|
if (CurrentBattlePyramidLocation() == PYRAMID_LOCATION_NONE)
|
||||||
DisplayItemMessage(taskId, FONT_NORMAL, gStringVar4, Task_FadeAndCloseBagMenu);
|
DisplayItemMessage(taskId, FONT_NORMAL, gStringVar4, Task_FadeAndCloseBagMenu);
|
||||||
else
|
else
|
||||||
DisplayItemMessageInBattlePyramid(taskId, gStringVar4, CloseBattlePyramidBag);
|
DisplayItemMessageInBattlePyramid(taskId, gStringVar4, CloseBattlePyramidBag);
|
||||||
|
|||||||
@@ -339,7 +339,7 @@ static void ShowMapNamePopUpWindow(void)
|
|||||||
u8 x;
|
u8 x;
|
||||||
const u8 *mapDisplayHeaderSource;
|
const u8 *mapDisplayHeaderSource;
|
||||||
|
|
||||||
if (InBattlePyramid())
|
if (CurrentBattlePyramidLocation() != PYRAMID_LOCATION_NONE)
|
||||||
{
|
{
|
||||||
if (gMapHeader.mapLayoutId == LAYOUT_BATTLE_FRONTIER_BATTLE_PYRAMID_TOP)
|
if (gMapHeader.mapLayoutId == LAYOUT_BATTLE_FRONTIER_BATTLE_PYRAMID_TOP)
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -3092,7 +3092,7 @@ static void CursorCb_Give(u8 taskId)
|
|||||||
|
|
||||||
static void CB2_SelectBagItemToGive(void)
|
static void CB2_SelectBagItemToGive(void)
|
||||||
{
|
{
|
||||||
if (InBattlePyramid() == FALSE)
|
if (CurrentBattlePyramidLocation() != PYRAMID_LOCATION_NONE == FALSE)
|
||||||
GoToBagMenu(ITEMMENULOCATION_PARTY, POCKETS_COUNT, CB2_GiveHoldItem);
|
GoToBagMenu(ITEMMENULOCATION_PARTY, POCKETS_COUNT, CB2_GiveHoldItem);
|
||||||
else
|
else
|
||||||
GoToBattlePyramidBagMenu(PYRAMIDBAG_LOC_PARTY, CB2_GiveHoldItem);
|
GoToBattlePyramidBagMenu(PYRAMIDBAG_LOC_PARTY, CB2_GiveHoldItem);
|
||||||
@@ -4275,7 +4275,7 @@ void CB2_ShowPartyMenuForItemUse(void)
|
|||||||
|
|
||||||
static void CB2_ReturnToBagMenu(void)
|
static void CB2_ReturnToBagMenu(void)
|
||||||
{
|
{
|
||||||
if (InBattlePyramid() == FALSE)
|
if (CurrentBattlePyramidLocation() != PYRAMID_LOCATION_NONE == FALSE)
|
||||||
GoToBagMenu(ITEMMENULOCATION_LAST, POCKETS_COUNT, NULL);
|
GoToBagMenu(ITEMMENULOCATION_LAST, POCKETS_COUNT, NULL);
|
||||||
else
|
else
|
||||||
GoToBattlePyramidBagMenu(PYRAMIDBAG_LOC_PREV, gPyramidBagMenuState.exitCallback);
|
GoToBattlePyramidBagMenu(PYRAMIDBAG_LOC_PREV, gPyramidBagMenuState.exitCallback);
|
||||||
@@ -5358,7 +5358,7 @@ void CB2_PartyMenuFromStartMenu(void)
|
|||||||
// As opposted to by selecting Give in the party menu, which is handled by CursorCb_Give
|
// As opposted to by selecting Give in the party menu, which is handled by CursorCb_Give
|
||||||
void CB2_ChooseMonToGiveItem(void)
|
void CB2_ChooseMonToGiveItem(void)
|
||||||
{
|
{
|
||||||
MainCallback callback = (InBattlePyramid() == FALSE) ? CB2_ReturnToBagMenu : CB2_ReturnToPyramidBagMenu;
|
MainCallback callback = (CurrentBattlePyramidLocation() == PYRAMID_LOCATION_NONE) ? CB2_ReturnToBagMenu : CB2_ReturnToPyramidBagMenu;
|
||||||
InitPartyMenu(PARTY_MENU_TYPE_FIELD, PARTY_LAYOUT_SINGLE, PARTY_ACTION_GIVE_ITEM, FALSE, PARTY_MSG_GIVE_TO_WHICH_MON, Task_HandleChooseMonInput, callback);
|
InitPartyMenu(PARTY_MENU_TYPE_FIELD, PARTY_LAYOUT_SINGLE, PARTY_ACTION_GIVE_ITEM, FALSE, PARTY_MSG_GIVE_TO_WHICH_MON, Task_HandleChooseMonInput, callback);
|
||||||
gPartyMenu.bagItem = gSpecialVar_ItemId;
|
gPartyMenu.bagItem = gSpecialVar_ItemId;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -5840,7 +5840,7 @@ s32 GetBattlerMultiplayerId(u16 id)
|
|||||||
|
|
||||||
u8 GetTrainerEncounterMusicId(u16 trainerOpponentId)
|
u8 GetTrainerEncounterMusicId(u16 trainerOpponentId)
|
||||||
{
|
{
|
||||||
if (InBattlePyramid())
|
if (CurrentBattlePyramidLocation() != PYRAMID_LOCATION_NONE)
|
||||||
return GetTrainerEncounterMusicIdInBattlePyramid(trainerOpponentId);
|
return GetTrainerEncounterMusicIdInBattlePyramid(trainerOpponentId);
|
||||||
else if (InTrainerHillChallenge())
|
else if (InTrainerHillChallenge())
|
||||||
return GetTrainerEncounterMusicIdInTrainerHill(trainerOpponentId);
|
return GetTrainerEncounterMusicIdInTrainerHill(trainerOpponentId);
|
||||||
@@ -6970,7 +6970,7 @@ static bool8 ShouldSkipFriendshipChange(void)
|
|||||||
{
|
{
|
||||||
if (gMain.inBattle && gBattleTypeFlags & (BATTLE_TYPE_FRONTIER))
|
if (gMain.inBattle && gBattleTypeFlags & (BATTLE_TYPE_FRONTIER))
|
||||||
return TRUE;
|
return TRUE;
|
||||||
if (!gMain.inBattle && (InBattlePike() || InBattlePyramid()))
|
if (!gMain.inBattle && (InBattlePike() || CurrentBattlePyramidLocation() != PYRAMID_LOCATION_NONE))
|
||||||
return TRUE;
|
return TRUE;
|
||||||
return FALSE;
|
return FALSE;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -293,7 +293,7 @@ static void BuildStartMenuActions(void)
|
|||||||
{
|
{
|
||||||
BuildBattlePikeStartMenu();
|
BuildBattlePikeStartMenu();
|
||||||
}
|
}
|
||||||
else if (InBattlePyramid())
|
else if (CurrentBattlePyramidLocation() != PYRAMID_LOCATION_NONE)
|
||||||
{
|
{
|
||||||
BuildBattlePyramidStartMenu();
|
BuildBattlePyramidStartMenu();
|
||||||
}
|
}
|
||||||
@@ -439,7 +439,7 @@ static void RemoveExtraStartMenuWindows(void)
|
|||||||
CopyWindowToVram(sSafariBallsWindowId, COPYWIN_GFX);
|
CopyWindowToVram(sSafariBallsWindowId, COPYWIN_GFX);
|
||||||
RemoveWindow(sSafariBallsWindowId);
|
RemoveWindow(sSafariBallsWindowId);
|
||||||
}
|
}
|
||||||
if (InBattlePyramid())
|
if (CurrentBattlePyramidLocation() != PYRAMID_LOCATION_NONE)
|
||||||
{
|
{
|
||||||
ClearStdWindowAndFrameToTransparent(sBattlePyramidFloorWindowId, FALSE);
|
ClearStdWindowAndFrameToTransparent(sBattlePyramidFloorWindowId, FALSE);
|
||||||
RemoveWindow(sBattlePyramidFloorWindowId);
|
RemoveWindow(sBattlePyramidFloorWindowId);
|
||||||
@@ -499,7 +499,7 @@ static bool32 InitStartMenuStep(void)
|
|||||||
case 3:
|
case 3:
|
||||||
if (GetSafariZoneFlag())
|
if (GetSafariZoneFlag())
|
||||||
ShowSafariBallsWindow();
|
ShowSafariBallsWindow();
|
||||||
if (InBattlePyramid())
|
if (CurrentBattlePyramidLocation() != PYRAMID_LOCATION_NONE)
|
||||||
ShowPyramidFloorWindow();
|
ShowPyramidFloorWindow();
|
||||||
sInitStartMenuData[0]++;
|
sInitStartMenuData[0]++;
|
||||||
break;
|
break;
|
||||||
@@ -720,7 +720,7 @@ static bool8 StartMenuPlayerNameCallback(void)
|
|||||||
|
|
||||||
static bool8 StartMenuSaveCallback(void)
|
static bool8 StartMenuSaveCallback(void)
|
||||||
{
|
{
|
||||||
if (InBattlePyramid())
|
if (CurrentBattlePyramidLocation() != PYRAMID_LOCATION_NONE)
|
||||||
RemoveExtraStartMenuWindows();
|
RemoveExtraStartMenuWindows();
|
||||||
|
|
||||||
gMenuCallback = SaveStartCallback; // Display save menu
|
gMenuCallback = SaveStartCallback; // Display save menu
|
||||||
@@ -981,7 +981,7 @@ static u8 SaveConfirmSaveCallback(void)
|
|||||||
RemoveStartMenuWindow();
|
RemoveStartMenuWindow();
|
||||||
ShowSaveInfoWindow();
|
ShowSaveInfoWindow();
|
||||||
|
|
||||||
if (InBattlePyramid())
|
if (CurrentBattlePyramidLocation() != PYRAMID_LOCATION_NONE)
|
||||||
{
|
{
|
||||||
ShowSaveMessage(gText_BattlePyramidConfirmRest, SaveYesNoCallback);
|
ShowSaveMessage(gText_BattlePyramidConfirmRest, SaveYesNoCallback);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -256,7 +256,7 @@ static u8 CheckTrainer(u8 objectEventId)
|
|||||||
else
|
else
|
||||||
scriptPtr = GetObjectEventScriptPointerByObjectEventId(objectEventId);
|
scriptPtr = GetObjectEventScriptPointerByObjectEventId(objectEventId);
|
||||||
|
|
||||||
if (InBattlePyramid())
|
if (CurrentBattlePyramidLocation() != PYRAMID_LOCATION_NONE)
|
||||||
{
|
{
|
||||||
if (GetBattlePyramidTrainerFlag(objectEventId))
|
if (GetBattlePyramidTrainerFlag(objectEventId))
|
||||||
return 0;
|
return 0;
|
||||||
|
|||||||
@@ -851,7 +851,7 @@ bool8 UpdateRepelCounter(void)
|
|||||||
{
|
{
|
||||||
u16 steps;
|
u16 steps;
|
||||||
|
|
||||||
if (InBattlePike() || InBattlePyramid())
|
if (InBattlePike() || CurrentBattlePyramidLocation() != PYRAMID_LOCATION_NONE)
|
||||||
return FALSE;
|
return FALSE;
|
||||||
if (InUnionRoom() == TRUE)
|
if (InUnionRoom() == TRUE)
|
||||||
return FALSE;
|
return FALSE;
|
||||||
|
|||||||
Reference in New Issue
Block a user