@skullandbonestools/snbdata
Version:
Inofficial data package for the Skull and Bones game by Ubisoft.
29 lines • 1.08 kB
JavaScript
import territoriesData from "../../data/territories.json";
import { Factions } from "./factions";
import { Regions } from "./regions";
export class Territory {
constructor(id, factions, region, dateAdded, lastUpdated) {
this.id = id;
this.factions = factions;
this.region = region;
this.dateAdded = dateAdded;
this.lastUpdated = lastUpdated;
}
static fromRawData(rawData) {
const factions = rawData.factions.map((_faction) => {
const faction = _faction;
return Factions[faction];
});
const region = rawData.region;
return new Territory(rawData.id, factions, Regions[region], new Date(rawData.dateAdded), new Date(rawData.lastUpdated));
}
static loadTerritories() {
const Territories = {};
for (const [key, value] of Object.entries(territoriesData)) {
Territories[key] = Territory.fromRawData(value);
}
return Territories;
}
}
export const Territories = Territory.loadTerritories();
//# sourceMappingURL=territories.js.map