UNPKG

@kitten-science/kitten-scientists

Version:

Add-on for the wonderful incremental browser game: https://kittensgame.com/web/

43 lines 1.26 kB
import { isNil } from "@oliversalzburg/js-utils/data/nil.js"; import { consumeEntriesPedantic } from "../tools/Entries.js"; import { Races } from "../types/index.js"; import { SettingMax, SettingTrigger } from "./Settings.js"; export class EmbassySetting extends SettingMax { #race; get race() { return this.#race; } constructor(race, enabled = false) { super(enabled); this.#race = race; } } export class EmbassySettings extends SettingTrigger { races; constructor(enabled = false) { super(enabled); this.races = this.initRaces(); } initRaces() { const items = {}; for (const item of Races) { // Leviathans have no embassies. if (item === "leviathans") { continue; } items[item] = new EmbassySetting(item); } return items; } load(settings) { if (isNil(settings)) { return; } super.load(settings); consumeEntriesPedantic(this.races, settings.races, (race, item) => { race.enabled = item?.enabled ?? race.enabled; race.max = item?.max ?? race.max; }); } } //# sourceMappingURL=EmbassySettings.js.map