diff --git a/src/layers/renderers/drawProvinces.js b/src/layers/renderers/drawProvinces.ts similarity index 100% rename from src/layers/renderers/drawProvinces.js rename to src/layers/renderers/drawProvinces.ts diff --git a/src/scripts/generation/generation.ts b/src/scripts/generation/generation.ts index 5d90ff9a..afbe73db 100644 --- a/src/scripts/generation/generation.ts +++ b/src/scripts/generation/generation.ts @@ -69,8 +69,8 @@ async function generate(options?: IGenerationOptions) { // renderLayer("biomes"); renderLayer("burgs"); renderLayer("routes"); - renderLayer("states"); - // renderLayer("religions"); + // renderLayer("states"); + renderLayer("provinces"); // pack.cells.route.forEach((route, index) => { // if (route === 2) drawPoint(pack.cells.p[index], {color: "black"}); diff --git a/src/scripts/generation/pack/provinces/generateProvinces.ts b/src/scripts/generation/pack/provinces/generateProvinces.ts index cbdd29d4..906ccfaa 100644 --- a/src/scripts/generation/pack/provinces/generateProvinces.ts +++ b/src/scripts/generation/pack/provinces/generateProvinces.ts @@ -10,12 +10,11 @@ export function generateProvinces( cultures: TCultures, features: TPackFeatures, cells: Pick -) { +): {provinceIds: Uint16Array; provinces: TProvinces} { TIME && console.time("generateProvinces"); const percentage = getInputNumber("provincesInput"); - if (states.length < 2 || percentage === 0) - return {provinceIds: new Uint16Array(cells.i.length), provinces: [] as TProvinces[]}; + if (states.length < 2 || percentage === 0) return {provinceIds: new Uint16Array(cells.i.length), provinces: [0]}; const coreProvinces = generateCoreProvinces(states, burgs, cultures, percentage); const provinceIds = expandProvinces(percentage, coreProvinces, cells); @@ -31,7 +30,7 @@ export function generateProvinces( cells }); // mutates provinceIds - const provinces = [...coreProvinces, ...wildProvinces]; + const provinces: TProvinces = [0, ...coreProvinces, ...wildProvinces]; TIME && console.timeEnd("generateProvinces"); return {provinceIds, provinces}; diff --git a/src/types/pack/provinces.d.ts b/src/types/pack/provinces.d.ts index a055a542..a9b202b7 100644 --- a/src/types/pack/provinces.d.ts +++ b/src/types/pack/provinces.d.ts @@ -11,4 +11,6 @@ interface IProvince { removed?: boolean; } -type TProvinces = IProvince[]; +type TNoProvince = 0; + +type TProvinces = [TNoProvince, ...IProvince[]];