<%* const thisFile = tp.config.target_file; const campaignData = tp.user.ttrpg.campaignData(thisFile) const settingData = tp.user.ttrpg.settingData(thisFile); const title = tp.file.title === "Untitled" ? await tp.system.prompt("Settlement Name") : tp.file.title; const adjective = tp.frontmatter?.adjective ?? ""; const types = [ "thorp", "hamlet", "village", "small town", "large town", "city ward", "neighborhood", "small city", "large city", "metropolis", ]; const govTypes = [ "anarchy", "athenian democracy", "caste", "clan/tribal", "corporate state", "dictatorship", "feudal", "hive mind", "representative democracy", "technocracy", "theocracy", "bureaucracy", "charismatic rule", "cybercracy/machine civilization", "meritocracy", "military government", "oligarchy", "thaumatocracy", ]; const type = tp.frontmatter.settlementType ?? await tp.system.suggester(v => v, types, true, "Type of Settlement"); const metadata = { tags: ['ttrpg/place/settlement'], data: { icon: "building-2", title, pronunciation: tp.frontmatter.pronunciation ?? "", summary: tp.frontmatter?.summary ?? "", campaigns: [campaignData.link], setting: settingData.link, settlementType: type, location: tp.frontmatter?.location ?? "", population: tp.frontmatter?.population ?? 0, government: tp.frontmatter?.government ?? (await tp.system.suggester(v => v, govTypes, false, "Type of Government")) ?? "", leader: tp.frontmatter?.leader ?? "", residents: tp.frontmatter?.residents ?? [], adjective: tp.frontmatter?.adjective ?? "", }, title, }; await tp.user.util.updateMetadata(tp, metadata); %> <% tp.file.cursor() %> ![[zz_meta/bases/ttrpg/SettlementInfo.base#Places|SettlementInfo]] ![[zz_meta/bases/ttrpg/SettlementInfo.base#People|SettlementInfo]]