summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorDizzyEggg <jajkodizzy@wp.pl>2018-12-03 17:19:10 +0100
committerDizzyEggg <jajkodizzy@wp.pl>2018-12-03 17:19:10 +0100
commit2821eafb99e98267c610bcd62cec8e9555805e58 (patch)
tree85ece8120155a34d677240b45ec6e4ce7db5582e /src
parentdcb1d78fa9e82d65d13d8131a95a4b8ac99bd168 (diff)
Clean up roamer
Diffstat (limited to 'src')
-rw-r--r--src/roamer.c59
1 files changed, 30 insertions, 29 deletions
diff --git a/src/roamer.c b/src/roamer.c
index fbd25bfad..be45642e0 100644
--- a/src/roamer.c
+++ b/src/roamer.c
@@ -1,9 +1,10 @@
#include "global.h"
-#include "roamer.h"
+#include "event_data.h"
#include "pokemon.h"
#include "random.h"
+#include "roamer.h"
+#include "constants/maps.h"
#include "constants/species.h"
-#include "event_data.h"
enum
{
@@ -16,26 +17,26 @@ EWRAM_DATA static u8 sRoamerLocation[2] = {0};
static const u8 sRoamerLocations[][6] =
{
- { 0x19, 0x1A, 0x20, 0x21, 0x31, 0xFF },
- { 0x1A, 0x19, 0x20, 0x21, 0xFF, 0xFF },
- { 0x20, 0x1A, 0x19, 0x21, 0xFF, 0xFF },
- { 0x21, 0x20, 0x19, 0x1A, 0x22, 0x26 },
- { 0x22, 0x21, 0x23, 0xFF, 0xFF, 0xFF },
- { 0x23, 0x22, 0x24, 0xFF, 0xFF, 0xFF },
- { 0x24, 0x23, 0x25, 0x26, 0xFF, 0xFF },
- { 0x25, 0x24, 0x26, 0xFF, 0xFF, 0xFF },
- { 0x26, 0x25, 0x21, 0xFF, 0xFF, 0xFF },
- { 0x27, 0x24, 0x28, 0x29, 0xFF, 0xFF },
- { 0x28, 0x27, 0x2A, 0xFF, 0xFF, 0xFF },
- { 0x29, 0x27, 0x2A, 0xFF, 0xFF, 0xFF },
- { 0x2A, 0x28, 0x29, 0x2B, 0xFF, 0xFF },
- { 0x2B, 0x2A, 0x2C, 0xFF, 0xFF, 0xFF },
- { 0x2C, 0x2B, 0x2D, 0xFF, 0xFF, 0xFF },
- { 0x2D, 0x2C, 0x2E, 0xFF, 0xFF, 0xFF },
- { 0x2E, 0x2D, 0x2F, 0xFF, 0xFF, 0xFF },
- { 0x2F, 0x2E, 0x30, 0xFF, 0xFF, 0xFF },
- { 0x30, 0x2F, 0x31, 0xFF, 0xFF, 0xFF },
- { 0x31, 0x30, 0x19, 0xFF, 0xFF, 0xFF },
+ { MAP_NUM(ROUTE110), MAP_NUM(ROUTE111), MAP_NUM(ROUTE117), MAP_NUM(ROUTE118), MAP_NUM(ROUTE134), 0xFF },
+ { MAP_NUM(ROUTE111), MAP_NUM(ROUTE110), MAP_NUM(ROUTE117), MAP_NUM(ROUTE118), 0xFF, 0xFF },
+ { MAP_NUM(ROUTE117), MAP_NUM(ROUTE111), MAP_NUM(ROUTE110), MAP_NUM(ROUTE118), 0xFF, 0xFF },
+ { MAP_NUM(ROUTE118), MAP_NUM(ROUTE117), MAP_NUM(ROUTE110), MAP_NUM(ROUTE111), MAP_NUM(ROUTE119), MAP_NUM(ROUTE123) },
+ { MAP_NUM(ROUTE119), MAP_NUM(ROUTE118), MAP_NUM(ROUTE120), 0xFF, 0xFF, 0xFF },
+ { MAP_NUM(ROUTE120), MAP_NUM(ROUTE119), MAP_NUM(ROUTE121), 0xFF, 0xFF, 0xFF },
+ { MAP_NUM(ROUTE121), MAP_NUM(ROUTE120), MAP_NUM(ROUTE122), MAP_NUM(ROUTE123), 0xFF, 0xFF },
+ { MAP_NUM(ROUTE122), MAP_NUM(ROUTE121), MAP_NUM(ROUTE123), 0xFF, 0xFF, 0xFF },
+ { MAP_NUM(ROUTE123), MAP_NUM(ROUTE122), MAP_NUM(ROUTE118), 0xFF, 0xFF, 0xFF },
+ { MAP_NUM(ROUTE124), MAP_NUM(ROUTE121), MAP_NUM(ROUTE125), MAP_NUM(ROUTE126), 0xFF, 0xFF },
+ { MAP_NUM(ROUTE125), MAP_NUM(ROUTE124), MAP_NUM(ROUTE127), 0xFF, 0xFF, 0xFF },
+ { MAP_NUM(ROUTE126), MAP_NUM(ROUTE124), MAP_NUM(ROUTE127), 0xFF, 0xFF, 0xFF },
+ { MAP_NUM(ROUTE127), MAP_NUM(ROUTE125), MAP_NUM(ROUTE126), MAP_NUM(ROUTE128), 0xFF, 0xFF },
+ { MAP_NUM(ROUTE128), MAP_NUM(ROUTE127), MAP_NUM(ROUTE129), 0xFF, 0xFF, 0xFF },
+ { MAP_NUM(ROUTE129), MAP_NUM(ROUTE128), MAP_NUM(ROUTE130), 0xFF, 0xFF, 0xFF },
+ { MAP_NUM(ROUTE130), MAP_NUM(ROUTE129), MAP_NUM(ROUTE131), 0xFF, 0xFF, 0xFF },
+ { MAP_NUM(ROUTE131), MAP_NUM(ROUTE130), MAP_NUM(ROUTE132), 0xFF, 0xFF, 0xFF },
+ { MAP_NUM(ROUTE132), MAP_NUM(ROUTE131), MAP_NUM(ROUTE133), 0xFF, 0xFF, 0xFF },
+ { MAP_NUM(ROUTE133), MAP_NUM(ROUTE132), MAP_NUM(ROUTE134), 0xFF, 0xFF, 0xFF },
+ { MAP_NUM(ROUTE134), MAP_NUM(ROUTE133), MAP_NUM(ROUTE110), 0xFF, 0xFF, 0xFF },
{ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF },
};
@@ -79,7 +80,7 @@ static void CreateInitialRoamerMon(bool16 createLatios)
(&gSaveBlock1Ptr->roamer)->smart = GetMonData(&gEnemyParty[0], MON_DATA_SMART);
(&gSaveBlock1Ptr->roamer)->tough = GetMonData(&gEnemyParty[0], MON_DATA_TOUGH);
sRoamerLocation[MAP_GRP] = 0;
- sRoamerLocation[MAP_NUM] = sRoamerLocations[Random() % 20][0];
+ sRoamerLocation[MAP_NUM] = sRoamerLocations[Random() % (ARRAY_COUNT(sRoamerLocations) - 1)][0];
}
void InitRoamer(void)
@@ -103,20 +104,20 @@ void UpdateLocationHistoryForRoamer(void)
void RoamerMoveToOtherLocationSet(void)
{
- u8 val = 0;
+ u8 mapNum = 0;
struct Roamer *roamer = &gSaveBlock1Ptr->roamer;
if (!roamer->active)
return;
- sRoamerLocation[MAP_GRP] = val;
+ sRoamerLocation[MAP_GRP] = 0;
while (1)
{
- val = sRoamerLocations[Random() % 20][0];
- if (sRoamerLocation[MAP_NUM] != val)
+ mapNum = sRoamerLocations[Random() % (ARRAY_COUNT(sRoamerLocations) - 1)][0];
+ if (sRoamerLocation[MAP_NUM] != mapNum)
{
- sRoamerLocation[MAP_NUM] = val;
+ sRoamerLocation[MAP_NUM] = mapNum;
return;
}
}
@@ -137,7 +138,7 @@ void RoamerMove(void)
if (!roamer->active)
return;
- while (locSet < 20)
+ while (locSet < (ARRAY_COUNT(sRoamerLocations) - 1))
{
if (sRoamerLocation[MAP_NUM] == sRoamerLocations[locSet][0])
{