diff options
| author | Cameron Hall <camthesaxman@users.noreply.github.com> | 2017-11-27 17:29:29 -0600 | 
|---|---|---|
| committer | GitHub <noreply@github.com> | 2017-11-27 17:29:29 -0600 | 
| commit | b6934e4429a269240d2266663e1c3f75505e3d09 (patch) | |
| tree | da1790227e6ab7707e6ff7dde17aca23eda6a41b /src/field/landmark.c | |
| parent | 5498eaf94849bbc7b56d8c280862b61ecefa0643 (diff) | |
| parent | 8fd1e16862f119cf9cb25b7411cda0c8f7c4e354 (diff) | |
Merge pull request #479 from camthesaxman/landmark_data
convert landmark data to C
Diffstat (limited to 'src/field/landmark.c')
| -rw-r--r-- | src/field/landmark.c | 366 | 
1 files changed, 355 insertions, 11 deletions
| diff --git a/src/field/landmark.c b/src/field/landmark.c index 6a53716bb..1b7805e96 100644 --- a/src/field/landmark.c +++ b/src/field/landmark.c @@ -1,12 +1,11 @@  #include "global.h"  #include "landmark.h"  #include "event_data.h" - -#define MAPSEC_NONE 0x58 +#include "region_map_sections.h"  struct Landmark  { -    u8 *name; +    const u8 *name;      u16 flag;  }; @@ -14,16 +13,361 @@ struct LandmarkList  {      u8 mapSection;      u8 id; -    const struct Landmark **landmarks; +    const struct Landmark *const *landmarks; +}; + +extern const u8 gLandmarkName_FlowerShop[]; +extern const u8 gLandmarkName_PetalburgWoods[]; +extern const u8 gLandmarkName_MrBrineysCottage[]; +extern const u8 gLandmarkName_AbandonedShip[]; +extern const u8 gLandmarkName_SeashoreHouse[]; +extern const u8 gLandmarkName_SlateportBeach[]; +extern const u8 gLandmarkName_CyclingRoad[]; +extern const u8 gLandmarkName_NewMauville[]; +extern const u8 gLandmarkName_TrickHouse[]; +extern const u8 gLandmarkName_OldLadysRestShop[]; +extern const u8 gLandmarkName_Desert[]; +extern const u8 gLandmarkName_WinstrateFamily[]; +extern const u8 gLandmarkName_CableCar[]; +extern const u8 gLandmarkName_GlassWorkshop[]; +extern const u8 gLandmarkName_WeatherInstitute[]; +extern const u8 gLandmarkName_MeteorFalls[]; +extern const u8 gLandmarkName_TunnelersRestHouse[]; +extern const u8 gLandmarkName_RusturfTunnel[]; +extern const u8 gLandmarkName_PokemonDayCare[]; +extern const u8 gLandmarkName_SafariZoneEntrance[]; +extern const u8 gLandmarkName_MtPyre[]; +extern const u8 gLandmarkName_ShoalCave[]; +extern const u8 gLandmarkName_SeafloorCavern[]; +extern const u8 gLandmarkName_GraniteCave[]; +extern const u8 gLandmarkName_OceanCurrent[]; +extern const u8 gLandmarkName_LanettesHouse[]; +extern const u8 gLandmarkName_FieryPath[]; +extern const u8 gLandmarkName_JaggedPass[]; +extern const u8 gLandmarkName_BerryMastersHouse[]; +extern const u8 gLandmarkName_IslandCave[]; +extern const u8 gLandmarkName_DesertRuins[]; +extern const u8 gLandmarkName_ScorchedSlab[]; +extern const u8 gLandmarkName_AncientTomb[]; +extern const u8 gLandmarkName_SealedChamber[]; +extern const u8 gLandmarkName_FossilManiacsHouse[]; +extern const u8 gLandmarkName_HuntersHouse[]; +extern const u8 gLandmarkName_SkyPillar[]; + +static const struct Landmark Landmark_FlowerShop = {gLandmarkName_FlowerShop, 2108}; +static const struct Landmark Landmark_PetalburgWoods = {gLandmarkName_PetalburgWoods, -1}; +static const struct Landmark Landmark_MrBrineysCottage = {gLandmarkName_MrBrineysCottage, 2109}; +static const struct Landmark Landmark_AbandonedShip = {gLandmarkName_AbandonedShip, 2110}; +static const struct Landmark Landmark_SeashoreHouse = {gLandmarkName_SeashoreHouse, 2111}; +static const struct Landmark Landmark_SlateportBeach = {gLandmarkName_SlateportBeach, -1}; +static const struct Landmark Landmark_CyclingRoad = {gLandmarkName_CyclingRoad, -1}; +static const struct Landmark Landmark_NewMauville = {gLandmarkName_NewMauville, 2112}; +static const struct Landmark Landmark_TrickHouse = {gLandmarkName_TrickHouse, 2114}; +static const struct Landmark Landmark_OldLadysRestShop = {gLandmarkName_OldLadysRestShop, 2113}; +static const struct Landmark Landmark_Desert = {gLandmarkName_Desert, -1}; +static const struct Landmark Landmark_WinstrateFamily = {gLandmarkName_WinstrateFamily, 2115}; +static const struct Landmark Landmark_CableCar = {gLandmarkName_CableCar, -1}; +static const struct Landmark Landmark_GlassWorkshop = {gLandmarkName_GlassWorkshop, 2116}; +static const struct Landmark Landmark_WeatherInstitute = {gLandmarkName_WeatherInstitute, -1}; +static const struct Landmark Landmark_MeteorFalls = {gLandmarkName_MeteorFalls, -1}; +static const struct Landmark Landmark_TunnelersRestHouse = {gLandmarkName_TunnelersRestHouse, 2138}; +static const struct Landmark Landmark_RusturfTunnel = {gLandmarkName_RusturfTunnel, -1}; +static const struct Landmark Landmark_PokemonDayCare = {gLandmarkName_PokemonDayCare, 2118}; +static const struct Landmark Landmark_SafariZoneEntrance = {gLandmarkName_SafariZoneEntrance, -1}; +static const struct Landmark Landmark_MtPyre = {gLandmarkName_MtPyre, -1}; +static const struct Landmark Landmark_ShoalCave = {gLandmarkName_ShoalCave, -1}; +static const struct Landmark Landmark_SeafloorCavern = {gLandmarkName_SeafloorCavern, 2119}; +static const struct Landmark Landmark_GraniteCave = {gLandmarkName_GraniteCave, -1}; +static const struct Landmark Landmark_OceanCurrent = {gLandmarkName_OceanCurrent, -1}; +static const struct Landmark Landmark_LanettesHouse = {gLandmarkName_LanettesHouse, 2117}; +static const struct Landmark Landmark_FieryPath = {gLandmarkName_FieryPath, 2122}; +static const struct Landmark Landmark_JaggedPass = {gLandmarkName_JaggedPass, -1}; +static const struct Landmark Landmark_BerryMastersHouse = {gLandmarkName_BerryMastersHouse, 2147}; +static const struct Landmark Landmark_IslandCave = {gLandmarkName_IslandCave, 2133}; +static const struct Landmark Landmark_DesertRuins = {gLandmarkName_DesertRuins, 2134}; +static const struct Landmark Landmark_ScorchedSlab = {gLandmarkName_ScorchedSlab, 2136}; +static const struct Landmark Landmark_AncientTomb = {gLandmarkName_AncientTomb, 2137}; +static const struct Landmark Landmark_SealedChamber = {gLandmarkName_SealedChamber, 2140}; +static const struct Landmark Landmark_FossilManiacsHouse = {gLandmarkName_FossilManiacsHouse, 2135}; +static const struct Landmark Landmark_HuntersHouse = {gLandmarkName_HuntersHouse, 2139}; +static const struct Landmark Landmark_SkyPillar = {gLandmarkName_SkyPillar, 2142}; + +static const struct Landmark *const Landmarks_Route104_0[]  = +{ +    &Landmark_FlowerShop, +    NULL, +}; + +static const struct Landmark *const Landmarks_Route104_1[]  = +{ +    &Landmark_PetalburgWoods, +    &Landmark_MrBrineysCottage, +    NULL, +}; + +static const struct Landmark *const Landmarks_Route105_0[]  = +{ +    &Landmark_IslandCave, +    NULL, +}; + +static const struct Landmark *const Landmarks_Route106_1[]  = +{ +    &Landmark_GraniteCave, +    NULL, +}; + +static const struct Landmark *const Landmarks_Route108_0[]  = +{ +    &Landmark_AbandonedShip, +    NULL, +}; + +static const struct Landmark *const Landmarks_Route109_0[]  = +{ +    &Landmark_SeashoreHouse, +    &Landmark_SlateportBeach, +    NULL, +}; + +static const struct Landmark *const Landmarks_Route110_0[]  = +{ +    &Landmark_CyclingRoad, +    &Landmark_NewMauville, +    NULL, +}; + +static const struct Landmark *const Landmarks_Route110_1[]  = +{ +    &Landmark_CyclingRoad, +    NULL, +}; + +static const struct Landmark *const Landmarks_Route110_2[]  = +{ +    &Landmark_CyclingRoad, +    &Landmark_TrickHouse, +    NULL, +}; + +static const struct Landmark *const Landmarks_Route111_0[]  = +{ +    &Landmark_OldLadysRestShop, +    NULL, +}; + +static const struct Landmark *const Landmarks_Route111_1[]  = +{ +    &Landmark_Desert, +    NULL, +}; + +static const struct Landmark *const Landmarks_Route111_3[]  = +{ +    &Landmark_DesertRuins, +    &Landmark_Desert, +    NULL, +}; + +static const struct Landmark *const Landmarks_Route111_4[]  = +{ +    &Landmark_WinstrateFamily, +    &Landmark_Desert, +    NULL, +}; + +static const struct Landmark *const Landmarks_Route112_0[]  = +{ +    &Landmark_FieryPath, +    &Landmark_JaggedPass, +    NULL, +}; + +static const struct Landmark *const Landmarks_Route112_1[]  = +{ +    &Landmark_CableCar, +    &Landmark_FieryPath, +    NULL, +}; + +static const struct Landmark *const Landmarks_Route113_1[]  = +{ +    &Landmark_GlassWorkshop, +    NULL, +}; + +static const struct Landmark *const Landmarks_Route114_1[]  = +{ +    &Landmark_FossilManiacsHouse, +    NULL, +}; + +static const struct Landmark *const Landmarks_Route114_2[]  = +{ +    &Landmark_LanettesHouse, +    NULL, +}; + +static const struct Landmark *const Landmarks_MeteorFalls[]  = +{ +    &Landmark_MeteorFalls, +    NULL, +}; + +static const struct Landmark *const Landmarks_Route116_1[]  = +{ +    &Landmark_TunnelersRestHouse, +    &Landmark_RusturfTunnel, +    NULL, +}; + +static const struct Landmark *const Landmarks_Route116_2[]  = +{ +    &Landmark_RusturfTunnel, +    NULL, +}; + +static const struct Landmark *const Landmarks_Route117_2[]  = +{ +    &Landmark_PokemonDayCare, +    NULL,  }; -extern const struct LandmarkList gLandmarkLists[]; +static const struct Landmark *const Landmarks_Route119_1[]  = +{ +    &Landmark_WeatherInstitute, +    NULL, +}; + +static const struct Landmark *const Landmarks_Route120_0[]  = +{ +    &Landmark_ScorchedSlab, +    NULL, +}; + +static const struct Landmark *const Landmarks_Route120_2[]  = +{ +    &Landmark_AncientTomb, +    NULL, +}; + +static const struct Landmark *const Landmarks_Route121_2[]  = +{ +    &Landmark_SafariZoneEntrance, +    NULL, +}; + +static const struct Landmark *const Landmarks_Route122_0[]  = +{ +    &Landmark_MtPyre, +    NULL, +}; + +static const struct Landmark *const Landmarks_Route123_0[]  = +{ +    &Landmark_BerryMastersHouse, +    NULL, +}; + +static const struct Landmark *const Landmarks_Route124_7[]  = +{ +    &Landmark_HuntersHouse, +    NULL, +}; + +static const struct Landmark *const Landmarks_Route125_2[]  = +{ +    &Landmark_ShoalCave, +    NULL, +}; + +static const struct Landmark *const Landmarks_Route128_1[]  = +{ +    &Landmark_SeafloorCavern, +    NULL, +}; + +static const struct Landmark *const Landmarks_Route131_1[]  = +{ +    &Landmark_SkyPillar, +    NULL, +}; + +static const struct Landmark *const Landmarks_OceanCurrent[]  = +{ +    &Landmark_OceanCurrent, +    NULL, +}; + +static const struct Landmark *const Landmarks_Route134_2[]  = +{ +    &Landmark_SealedChamber, +    &Landmark_OceanCurrent, +    NULL, +}; + +static const struct Landmark *const Landmarks_MtChimney_2[]  = +{ +    &Landmark_CableCar, +    &Landmark_JaggedPass, +    NULL, +}; + +static const struct LandmarkList gLandmarkLists[] = +{ +	{MAPSEC_Route104, 0, Landmarks_Route104_0}, +    {MAPSEC_Route104, 1, Landmarks_Route104_1}, +    {MAPSEC_Route105, 0, Landmarks_Route105_0}, +    {MAPSEC_Route106, 1, Landmarks_Route106_1}, +    {MAPSEC_Route108, 0, Landmarks_Route108_0}, +    {MAPSEC_Route109, 0, Landmarks_Route109_0}, +    {MAPSEC_Route110, 0, Landmarks_Route110_0}, +    {MAPSEC_Route110, 1, Landmarks_Route110_1}, +    {MAPSEC_Route110, 2, Landmarks_Route110_2}, +    {MAPSEC_Route111, 0, Landmarks_Route111_0}, +    {MAPSEC_Route111, 1, Landmarks_Route111_1}, +    {MAPSEC_Route111, 2, Landmarks_Route111_1}, +    {MAPSEC_Route111, 3, Landmarks_Route111_3}, +    {MAPSEC_Route111, 4, Landmarks_Route111_4}, +    {MAPSEC_Route112, 0, Landmarks_Route112_0}, +    {MAPSEC_Route112, 1, Landmarks_Route112_1}, +    {MAPSEC_Route113, 1, Landmarks_Route113_1}, +    {MAPSEC_Route114, 1, Landmarks_Route114_1}, +    {MAPSEC_Route114, 2, Landmarks_Route114_2}, +    {MAPSEC_Route114, 3, Landmarks_MeteorFalls}, +    {MAPSEC_Route115, 0, Landmarks_MeteorFalls}, +    {MAPSEC_Route115, 1, Landmarks_MeteorFalls}, +    {MAPSEC_Route116, 1, Landmarks_Route116_1}, +    {MAPSEC_Route116, 2, Landmarks_Route116_2}, +    {MAPSEC_Route117, 2, Landmarks_Route117_2}, +    {MAPSEC_Route119, 1, Landmarks_Route119_1}, +    {MAPSEC_Route120, 0, Landmarks_Route120_0}, +    {MAPSEC_Route120, 2, Landmarks_Route120_2}, +    {MAPSEC_Route121, 2, Landmarks_Route121_2}, +    {MAPSEC_Route122, 0, Landmarks_Route122_0}, +    {MAPSEC_Route123, 0, Landmarks_Route123_0}, +    {MAPSEC_Route122, 1, Landmarks_Route122_0}, +    {MAPSEC_Route124, 7, Landmarks_Route124_7}, +    {MAPSEC_Route125, 2, Landmarks_Route125_2}, +    {MAPSEC_Route128, 1, Landmarks_Route128_1}, +    {MAPSEC_Route131, 1, Landmarks_Route131_1}, +    {MAPSEC_Route132, 0, Landmarks_OceanCurrent}, +    {MAPSEC_Route132, 1, Landmarks_OceanCurrent}, +    {MAPSEC_Route133, 0, Landmarks_OceanCurrent}, +    {MAPSEC_Route133, 1, Landmarks_OceanCurrent}, +    {MAPSEC_Route133, 2, Landmarks_OceanCurrent}, +    {MAPSEC_Route134, 0, Landmarks_OceanCurrent}, +    {MAPSEC_Route134, 1, Landmarks_OceanCurrent}, +    {MAPSEC_Route134, 2, Landmarks_Route134_2}, +    {MAPSEC_MtChimney, 2, Landmarks_MtChimney_2}, +    {MAPSEC_Nothing, 0, NULL}, +}; -static const struct Landmark **GetLandmarks(u8 mapSection, u8 id); +static const struct Landmark *const *GetLandmarks(u8 mapSection, u8 id); -u8 *GetLandmarkName(u8 mapSection, u8 id, u8 count) +const u8 *GetLandmarkName(u8 mapSection, u8 id, u8 count)  { -    const struct Landmark **landmarks = GetLandmarks(mapSection, id); +    const struct Landmark *const *landmarks = GetLandmarks(mapSection, id);      if (!landmarks)          return NULL; @@ -48,11 +392,11 @@ u8 *GetLandmarkName(u8 mapSection, u8 id, u8 count)      return (*landmarks)->name;  } -static const struct Landmark **GetLandmarks(u8 mapSection, u8 id) +static const struct Landmark *const *GetLandmarks(u8 mapSection, u8 id)  {      u16 i = 0; -    for (; gLandmarkLists[i].mapSection != MAPSEC_NONE; i++) +    for (; gLandmarkLists[i].mapSection != MAPSEC_Nothing; i++)      {          if (gLandmarkLists[i].mapSection > mapSection)              return NULL; @@ -60,7 +404,7 @@ static const struct Landmark **GetLandmarks(u8 mapSection, u8 id)              break;      } -    if (gLandmarkLists[i].mapSection == MAPSEC_NONE) +    if (gLandmarkLists[i].mapSection == MAPSEC_Nothing)          return NULL;      for (; gLandmarkLists[i].mapSection == mapSection; i++) | 
