summaryrefslogtreecommitdiff
path: root/db/areas.php
blob: 185589eb560b3da1e86fd84645ff2801b4d729b5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
<?php

foreach (scandir(__DIR__ . '/areas') as $file) {
  if (in_array($file, ['.', '..'])) continue;

  $filePath = __DIR__ . '/areas/' . $file;
  $fileName = pathinfo($file, PATHINFO_FILENAME);

  $area = json_decode(file_get_contents($filePath), true);
  $encounters = json_decode(@file_get_contents(dirname(__DIR__) . "/modules/tuxemon/mods/tuxemon/db/encounter/$area[encounter_slug].json") ?? '', true);
  $environment = json_decode(file_get_contents(dirname(__DIR__) . "/modules/tuxemon/mods/tuxemon/db/environment/$area[environment_slug].json"), true);
  $map = @file_get_contents(__DIR__ . "/maps/$fileName.svg");

  array_push($area['encounters'], ...$encounters['monsters'] ?? []);
  $area['environment'] = $environment;
  $area['map'] = $map;

  foreach ($area['connections'] as $areaSlug => $connection) {
    $area['connections'][$areaSlug]['name'] = json_decode(file_get_contents(__DIR__ . "/areas/$areaSlug.json"), true)['name'];
  }

  foreach ($area['locations'] ?? [] as $locationId => $location) {
    if ($location['type'] == 'shop') {
      $scoop = json_decode(file_get_contents(dirname(__DIR__) . "/modules/tuxemon/mods/tuxemon/db/economy/$location[economy].json"), true);
      array_unshift($area['locations'][$locationId]['items'], ...$scoop['items']);
    }
  }

  file_put_contents(__DIR__ . "/_generated/areas/$fileName.json", json_encode($area));
}