Trainer Hill --> Trainer Tower
This commit is contained in:
+3
-3
@@ -1718,7 +1718,7 @@ sub_8055864: @ 8055864
|
|||||||
bl sav1_reset_battle_music_maybe
|
bl sav1_reset_battle_music_maybe
|
||||||
bl mapheader_run_script_with_tag_x3
|
bl mapheader_run_script_with_tag_x3
|
||||||
bl TryRegenerateRenewableHiddenItems
|
bl TryRegenerateRenewableHiddenItems
|
||||||
bl not_trainer_hill_battle_pyramid
|
bl not_trainer_tower_battle_pyramid
|
||||||
ldr r4, _0805591C @ =gMapHeader
|
ldr r4, _0805591C @ =gMapHeader
|
||||||
ldr r0, [r4]
|
ldr r0, [r4]
|
||||||
bl copy_map_tileset2_to_vram_2
|
bl copy_map_tileset2_to_vram_2
|
||||||
@@ -1798,7 +1798,7 @@ _08055974:
|
|||||||
bl UpdateLocationHistoryForRoamer
|
bl UpdateLocationHistoryForRoamer
|
||||||
bl RoamerMoveToOtherLocationSet
|
bl RoamerMoveToOtherLocationSet
|
||||||
bl sub_8110920
|
bl sub_8110920
|
||||||
bl not_trainer_hill_battle_pyramid
|
bl not_trainer_tower_battle_pyramid
|
||||||
pop {r4}
|
pop {r4}
|
||||||
pop {r0}
|
pop {r0}
|
||||||
bx r0
|
bx r0
|
||||||
@@ -1823,7 +1823,7 @@ sub_80559A8: @ 80559A8
|
|||||||
bl sub_8110920
|
bl sub_8110920
|
||||||
bl sub_8111708
|
bl sub_8111708
|
||||||
bl set_current_map_header_from_sav1
|
bl set_current_map_header_from_sav1
|
||||||
bl not_trainer_hill_battle_pyramid
|
bl not_trainer_tower_battle_pyramid
|
||||||
pop {r0}
|
pop {r0}
|
||||||
bx r0
|
bx r0
|
||||||
.align 2, 0
|
.align 2, 0
|
||||||
|
|||||||
@@ -26,7 +26,7 @@ struct TrainerTowerFloor
|
|||||||
/* 0x3DC */ u32 checksum;
|
/* 0x3DC */ u32 checksum;
|
||||||
};
|
};
|
||||||
|
|
||||||
struct EReaderTrainerHillSetSubstruct
|
struct EReaderTrainerTowerSetSubstruct
|
||||||
{
|
{
|
||||||
u8 numFloors;
|
u8 numFloors;
|
||||||
u8 id;
|
u8 id;
|
||||||
@@ -34,7 +34,7 @@ struct EReaderTrainerHillSetSubstruct
|
|||||||
u32 checksum;
|
u32 checksum;
|
||||||
};
|
};
|
||||||
|
|
||||||
struct EReaderTrainerHillSet
|
struct EReaderTrainerTowerSet
|
||||||
{
|
{
|
||||||
u8 numFloors;
|
u8 numFloors;
|
||||||
u8 id;
|
u8 id;
|
||||||
@@ -43,9 +43,9 @@ struct EReaderTrainerHillSet
|
|||||||
struct TrainerTowerFloor floors[MAX_TRAINER_TOWER_FLOORS];
|
struct TrainerTowerFloor floors[MAX_TRAINER_TOWER_FLOORS];
|
||||||
};
|
};
|
||||||
|
|
||||||
bool32 ValidateTrainerTowerData(struct EReaderTrainerHillSet * ttdata);
|
bool32 ValidateTrainerTowerData(struct EReaderTrainerTowerSet * ttdata);
|
||||||
bool32 CEReaderTool_SaveTrainerTower(struct EReaderTrainerHillSet * ttdata);
|
bool32 CEReaderTool_SaveTrainerTower(struct EReaderTrainerTowerSet * ttdata);
|
||||||
bool32 CEReaderTool_LoadTrainerTower(struct EReaderTrainerHillSet * ttdata);
|
bool32 CEReaderTool_LoadTrainerTower(struct EReaderTrainerTowerSet * ttdata);
|
||||||
u8 sub_815D654(void);
|
u8 sub_815D654(void);
|
||||||
bool32 ReadTrainerTowerAndValidate(void);
|
bool32 ReadTrainerTowerAndValidate(void);
|
||||||
|
|
||||||
|
|||||||
@@ -71,7 +71,7 @@
|
|||||||
#define BATTLE_TYPE_x800000 0x800000
|
#define BATTLE_TYPE_x800000 0x800000
|
||||||
#define BATTLE_TYPE_RECORDED 0x1000000
|
#define BATTLE_TYPE_RECORDED 0x1000000
|
||||||
#define BATTLE_TYPE_x2000000 0x2000000
|
#define BATTLE_TYPE_x2000000 0x2000000
|
||||||
#define BATTLE_TYPE_TRAINER_HILL 0x4000000
|
#define BATTLE_TYPE_x4000000 0x4000000
|
||||||
#define BATTLE_TYPE_SECRET_BASE 0x8000000
|
#define BATTLE_TYPE_SECRET_BASE 0x8000000
|
||||||
#define BATTLE_TYPE_GROUDON 0x10000000
|
#define BATTLE_TYPE_GROUDON 0x10000000
|
||||||
#define BATTLE_TYPE_KYOGRE 0x20000000
|
#define BATTLE_TYPE_KYOGRE 0x20000000
|
||||||
|
|||||||
+7
-7
@@ -20,7 +20,7 @@ static bool32 ValidateTrainerTowerTrainer(struct TrainerTowerFloor * floor)
|
|||||||
return TRUE;
|
return TRUE;
|
||||||
}
|
}
|
||||||
|
|
||||||
bool32 ValidateTrainerTowerData(struct EReaderTrainerHillSet * ttdata)
|
bool32 ValidateTrainerTowerData(struct EReaderTrainerTowerSet * ttdata)
|
||||||
{
|
{
|
||||||
u32 numFloors = ttdata->numFloors;
|
u32 numFloors = ttdata->numFloors;
|
||||||
s32 i;
|
s32 i;
|
||||||
@@ -36,10 +36,10 @@ bool32 ValidateTrainerTowerData(struct EReaderTrainerHillSet * ttdata)
|
|||||||
return TRUE;
|
return TRUE;
|
||||||
}
|
}
|
||||||
|
|
||||||
#define SEC30_SIZE (offsetof(struct EReaderTrainerHillSet, floors[4]))
|
#define SEC30_SIZE (offsetof(struct EReaderTrainerTowerSet, floors[4]))
|
||||||
#define SEC31_SIZE (sizeof(struct EReaderTrainerHillSet) - SEC30_SIZE)
|
#define SEC31_SIZE (sizeof(struct EReaderTrainerTowerSet) - SEC30_SIZE)
|
||||||
|
|
||||||
static bool32 CEReaderTool_SaveTrainerTower_r(struct EReaderTrainerHillSet * ttdata, u8 * buffer)
|
static bool32 CEReaderTool_SaveTrainerTower_r(struct EReaderTrainerTowerSet * ttdata, u8 * buffer)
|
||||||
{
|
{
|
||||||
AGB_ASSERT_EX(ttdata->dummy == 0, ABSPATH("cereader_tool.c"), 198);
|
AGB_ASSERT_EX(ttdata->dummy == 0, ABSPATH("cereader_tool.c"), 198);
|
||||||
AGB_ASSERT_EX(ttdata->id == 0, ABSPATH("cereader_tool.c"), 199)
|
AGB_ASSERT_EX(ttdata->id == 0, ABSPATH("cereader_tool.c"), 199)
|
||||||
@@ -56,7 +56,7 @@ static bool32 CEReaderTool_SaveTrainerTower_r(struct EReaderTrainerHillSet * ttd
|
|||||||
return TRUE;
|
return TRUE;
|
||||||
}
|
}
|
||||||
|
|
||||||
bool32 CEReaderTool_SaveTrainerTower(struct EReaderTrainerHillSet * ttdata)
|
bool32 CEReaderTool_SaveTrainerTower(struct EReaderTrainerTowerSet * ttdata)
|
||||||
{
|
{
|
||||||
u8 * buffer = AllocZeroed(0x1000);
|
u8 * buffer = AllocZeroed(0x1000);
|
||||||
bool32 result = CEReaderTool_SaveTrainerTower_r(ttdata, buffer);
|
bool32 result = CEReaderTool_SaveTrainerTower_r(ttdata, buffer);
|
||||||
@@ -64,7 +64,7 @@ bool32 CEReaderTool_SaveTrainerTower(struct EReaderTrainerHillSet * ttdata)
|
|||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
static bool32 CEReaderTool_LoadTrainerTower_r(struct EReaderTrainerHillSet * ttdata, void * buffer)
|
static bool32 CEReaderTool_LoadTrainerTower_r(struct EReaderTrainerTowerSet * ttdata, void * buffer)
|
||||||
{
|
{
|
||||||
if (TryCopySpecialSaveSection(SECTOR_TTOWER(0), buffer) != 1)
|
if (TryCopySpecialSaveSection(SECTOR_TTOWER(0), buffer) != 1)
|
||||||
return FALSE;
|
return FALSE;
|
||||||
@@ -79,7 +79,7 @@ static bool32 CEReaderTool_LoadTrainerTower_r(struct EReaderTrainerHillSet * ttd
|
|||||||
return TRUE;
|
return TRUE;
|
||||||
}
|
}
|
||||||
|
|
||||||
bool32 CEReaderTool_LoadTrainerTower(struct EReaderTrainerHillSet * ttdata)
|
bool32 CEReaderTool_LoadTrainerTower(struct EReaderTrainerTowerSet * ttdata)
|
||||||
{
|
{
|
||||||
void * buffer = AllocZeroed(0x1000);
|
void * buffer = AllocZeroed(0x1000);
|
||||||
bool32 success = CEReaderTool_LoadTrainerTower_r(ttdata, buffer);
|
bool32 success = CEReaderTool_LoadTrainerTower_r(ttdata, buffer);
|
||||||
|
|||||||
+1
-1
@@ -63,7 +63,7 @@ const struct MapHeader * mapconnection_get_mapheader(struct MapConnection * conn
|
|||||||
return Overworld_GetMapHeaderByGroupAndId(connection->mapGroup, connection->mapNum);
|
return Overworld_GetMapHeaderByGroupAndId(connection->mapGroup, connection->mapNum);
|
||||||
}
|
}
|
||||||
|
|
||||||
void not_trainer_hill_battle_pyramid(void)
|
void not_trainer_tower_battle_pyramid(void)
|
||||||
{
|
{
|
||||||
sub_8058A00(&gMapHeader);
|
sub_8058A00(&gMapHeader);
|
||||||
mapheader_run_script_with_tag_x1();
|
mapheader_run_script_with_tag_x1();
|
||||||
|
|||||||
+2
-2
@@ -423,7 +423,7 @@ void sub_8143910(u8 taskId)
|
|||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case 15:
|
case 15:
|
||||||
data->t0E = ValidateTrainerTowerData((struct EReaderTrainerHillSet *)gDecompressionBuffer);
|
data->t0E = ValidateTrainerTowerData((struct EReaderTrainerTowerSet *)gDecompressionBuffer);
|
||||||
sub_800AA80(data->t0E);
|
sub_800AA80(data->t0E);
|
||||||
data->state = 16;
|
data->state = 16;
|
||||||
break;
|
break;
|
||||||
@@ -437,7 +437,7 @@ void sub_8143910(u8 taskId)
|
|||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case 17:
|
case 17:
|
||||||
if (CEReaderTool_SaveTrainerTower((struct EReaderTrainerHillSet *)gDecompressionBuffer))
|
if (CEReaderTool_SaveTrainerTower((struct EReaderTrainerTowerSet *)gDecompressionBuffer))
|
||||||
{
|
{
|
||||||
AddTextPrinterToWindow1(gUnknown_841DE99);
|
AddTextPrinterToWindow1(gUnknown_841DE99);
|
||||||
ResetDelayTimer(&data->t00);
|
ResetDelayTimer(&data->t00);
|
||||||
|
|||||||
+4
-4
@@ -38,7 +38,7 @@
|
|||||||
struct UnkStruct_203F458
|
struct UnkStruct_203F458
|
||||||
{
|
{
|
||||||
/* 0x0000 */ u8 floorIdx;
|
/* 0x0000 */ u8 floorIdx;
|
||||||
/* 0x0004 */ struct EReaderTrainerHillSet unk_0004;
|
/* 0x0004 */ struct EReaderTrainerTowerSet unk_0004;
|
||||||
};
|
};
|
||||||
|
|
||||||
struct TrainerTowerOpponent
|
struct TrainerTowerOpponent
|
||||||
@@ -435,7 +435,7 @@ static const u8 sKnockoutChallengeMonIdxs[][3] = {
|
|||||||
{0x01, 0x04, 0x05}
|
{0x01, 0x04, 0x05}
|
||||||
};
|
};
|
||||||
|
|
||||||
extern const struct EReaderTrainerHillSetSubstruct gUnknown_84827AC;
|
extern const struct EReaderTrainerTowerSetSubstruct gUnknown_84827AC;
|
||||||
extern const struct TrainerTowerFloor *const gUnknown_84827B4[][MAX_TRAINER_TOWER_FLOORS];
|
extern const struct TrainerTowerFloor *const gUnknown_84827B4[][MAX_TRAINER_TOWER_FLOORS];
|
||||||
|
|
||||||
void CallTrainerTowerFunc(void)
|
void CallTrainerTowerFunc(void)
|
||||||
@@ -527,8 +527,8 @@ static void SetUpTrainerTowerDataStruct(void) // fakematching
|
|||||||
else
|
else
|
||||||
{
|
{
|
||||||
struct UnkStruct_203F458 * r0_ = sTrainerTowerState;
|
struct UnkStruct_203F458 * r0_ = sTrainerTowerState;
|
||||||
const struct EReaderTrainerHillSetSubstruct * r1 = &gUnknown_84827AC;
|
const struct EReaderTrainerTowerSetSubstruct * r1 = &gUnknown_84827AC;
|
||||||
memcpy(&r0_->unk_0004, r1, sizeof(struct EReaderTrainerHillSetSubstruct));
|
memcpy(&r0_->unk_0004, r1, sizeof(struct EReaderTrainerTowerSetSubstruct));
|
||||||
r7 = gUnknown_84827B4[challengeType];
|
r7 = gUnknown_84827B4[challengeType];
|
||||||
for (r4 = 0; r4 < MAX_TRAINER_TOWER_FLOORS; r4++)
|
for (r4 = 0; r4 < MAX_TRAINER_TOWER_FLOORS; r4++)
|
||||||
{
|
{
|
||||||
|
|||||||
Reference in New Issue
Block a user