Burg Type now filtered properly in generations.ts

This commit is contained in:
kruschen 2024-08-26 19:23:30 +00:00
parent f90652b68c
commit 195a4676ad

View file

@ -26,6 +26,7 @@ import {createGrid} from "./grid/grid";
import {createPack} from "./pack/pack"; import {createPack} from "./pack/pack";
import {getInputValue, setInputValue} from "utils/nodeUtils"; import {getInputValue, setInputValue} from "utils/nodeUtils";
import {calculateMapCoordinates} from "modules/coordinates"; import {calculateMapCoordinates} from "modules/coordinates";
import { isBurg } from "utils/typeUtils";
const {Zoom, ThreeD} = window; const {Zoom, ThreeD} = window;
@ -195,6 +196,7 @@ function focusOn() {
if (burgParam) { if (burgParam) {
const burg = isNaN(+burgParam) ? pack.burgs.find(burg => burg.name === burgParam) : pack.burgs[+burgParam]; const burg = isNaN(+burgParam) ? pack.burgs.find(burg => burg.name === burgParam) : pack.burgs[+burgParam];
if (!burg) return; if (!burg) return;
if (!isBurg(burg)) return;
const {x, y} = burg; const {x, y} = burg;
Zoom.to(x, y, scale, 1600); Zoom.to(x, y, scale, 1600);
@ -209,8 +211,8 @@ function focusOn() {
// find burg for MFCG and focus on it // find burg for MFCG and focus on it
function findBurgForMFCG(params: URLSearchParams) { function findBurgForMFCG(params: URLSearchParams) {
const {cells, burgs} = pack; const {cells, burgs: burgsT} = pack;
const burgs = burgsT.filter(isBurg);
if (pack.burgs.length < 2) { if (pack.burgs.length < 2) {
ERROR && console.error("Cannot select a burg for MFCG"); ERROR && console.error("Cannot select a burg for MFCG");
return; return;
@ -247,13 +249,13 @@ function findBurgForMFCG(params: URLSearchParams) {
if (param === "name") b.name = value; if (param === "name") b.name = value;
else if (param === "size") b.population = +value; else if (param === "size") b.population = +value;
else if (param === "seed") b.MFCG = +value; else if (param === "seed") b.MFCG = +value;
else if (param === "shantytown") b.shanty = +value; else if (param === "shantytown") b.shanty = +value > 0 ? 1 : 0;
} }
const nameParam = params.get("name"); const nameParam = params.get("name");
if (nameParam && nameParam !== "null") b.name = nameParam; if (nameParam && nameParam !== "null") b.name = nameParam;
const label = burgLabels.select("[data-id='" + burgId + "']"); const label = burgLabels.select<Element>("[data-id='" + burgId + "']");
if (label.size()) { if (label.size()) {
label label
.text(b.name) .text(b.name)