mirror of
https://github.com/Azgaar/Fantasy-Map-Generator.git
synced 2026-04-05 06:57:24 +02:00
fix: build + lint
This commit is contained in:
parent
3f282c74d0
commit
781d99ae10
2 changed files with 30 additions and 33 deletions
|
|
@ -15,7 +15,7 @@ declare global {
|
||||||
var Military: MilitaryModule;
|
var Military: MilitaryModule;
|
||||||
}
|
}
|
||||||
|
|
||||||
interface MilitaryRegiment {
|
export interface MilitaryRegiment {
|
||||||
i: number;
|
i: number;
|
||||||
t: number; // total troops
|
t: number; // total troops
|
||||||
name: string;
|
name: string;
|
||||||
|
|
@ -32,6 +32,7 @@ interface MilitaryRegiment {
|
||||||
icon?: string;
|
icon?: string;
|
||||||
children?: MilitaryRegiment[]; // merged regiments
|
children?: MilitaryRegiment[]; // merged regiments
|
||||||
state: number;
|
state: number;
|
||||||
|
angle?: number;
|
||||||
}
|
}
|
||||||
|
|
||||||
interface Platoon {
|
interface Platoon {
|
||||||
|
|
@ -601,7 +602,7 @@ class MilitaryModule {
|
||||||
const conflict = campaign ? ` during the ${campaign.name}` : "";
|
const conflict = campaign ? ` during the ${campaign.name}` : "";
|
||||||
const legend = `Regiment was formed in ${year} ${options.era}${conflict}. ${station}${troops}`;
|
const legend = `Regiment was formed in ${year} ${options.era}${conflict}. ${station}${troops}`;
|
||||||
const id = `regiment${s.i}-${r.i}`;
|
const id = `regiment${s.i}-${r.i}`;
|
||||||
const existing = notes.find(n => n.id === id);
|
const existing = notes.find((n) => n.id === id);
|
||||||
if (existing) {
|
if (existing) {
|
||||||
existing.name = r.name;
|
existing.name = r.name;
|
||||||
existing.legend = legend;
|
existing.legend = legend;
|
||||||
|
|
|
||||||
|
|
@ -1,24 +1,13 @@
|
||||||
import { color, easeSinInOut, transition } from "d3";
|
import { color, easeSinInOut, transition } from "d3";
|
||||||
|
import type { MilitaryRegiment } from "../modules/military-generator";
|
||||||
import { rn } from "../utils";
|
import { rn } from "../utils";
|
||||||
|
|
||||||
interface Regiment {
|
|
||||||
i: number;
|
|
||||||
name: string;
|
|
||||||
x: number;
|
|
||||||
y: number;
|
|
||||||
n?: number;
|
|
||||||
angle?: number;
|
|
||||||
icon: string;
|
|
||||||
state: number;
|
|
||||||
}
|
|
||||||
|
|
||||||
declare global {
|
declare global {
|
||||||
var drawMilitary: () => void;
|
var drawMilitary: () => void;
|
||||||
var drawRegiments: (regiments: Regiment[], stateId: number) => void;
|
var drawRegiments: (regiments: MilitaryRegiment[], stateId: number) => void;
|
||||||
var drawRegiment: (reg: Regiment, stateId: number) => void;
|
var drawRegiment: (reg: MilitaryRegiment, stateId: number) => void;
|
||||||
var moveRegiment: (reg: Regiment, x: number, y: number) => void;
|
var moveRegiment: (reg: MilitaryRegiment, x: number, y: number) => void;
|
||||||
var armies: import("d3").Selection<SVGGElement, unknown, null, undefined>;
|
var armies: import("d3").Selection<SVGGElement, unknown, null, undefined>;
|
||||||
var Military: { getTotal: (reg: Regiment) => number };
|
|
||||||
}
|
}
|
||||||
|
|
||||||
const militaryRenderer = (): void => {
|
const militaryRenderer = (): void => {
|
||||||
|
|
@ -34,12 +23,15 @@ const militaryRenderer = (): void => {
|
||||||
TIME && console.timeEnd("drawMilitary");
|
TIME && console.timeEnd("drawMilitary");
|
||||||
};
|
};
|
||||||
|
|
||||||
const drawRegimentsRenderer = (regiments: Regiment[], s: number): void => {
|
const drawRegimentsRenderer = (
|
||||||
|
regiments: MilitaryRegiment[],
|
||||||
|
s: number,
|
||||||
|
): void => {
|
||||||
const size = +armies.attr("box-size");
|
const size = +armies.attr("box-size");
|
||||||
const w = (d: Regiment) => (d.n ? size * 4 : size * 6);
|
const w = (d: MilitaryRegiment) => (d.n ? size * 4 : size * 6);
|
||||||
const h = size * 2;
|
const h = size * 2;
|
||||||
const x = (d: Regiment) => rn(d.x - w(d) / 2, 2);
|
const x = (d: MilitaryRegiment) => rn(d.x - w(d) / 2, 2);
|
||||||
const y = (d: Regiment) => rn(d.y - size, 2);
|
const y = (d: MilitaryRegiment) => rn(d.y - size, 2);
|
||||||
|
|
||||||
const stateColor = pack.states[s]?.color;
|
const stateColor = pack.states[s]?.color;
|
||||||
const baseColor = stateColor && stateColor[0] === "#" ? stateColor : "#999";
|
const baseColor = stateColor && stateColor[0] === "#" ? stateColor : "#999";
|
||||||
|
|
@ -83,9 +75,9 @@ const drawRegimentsRenderer = (regiments: Regiment[], s: number): void => {
|
||||||
.attr("x", (d) => x(d) - size)
|
.attr("x", (d) => x(d) - size)
|
||||||
.attr("y", (d) => d.y)
|
.attr("y", (d) => d.y)
|
||||||
.text((d) =>
|
.text((d) =>
|
||||||
d.icon.startsWith("http") || d.icon.startsWith("data:image")
|
d.icon!.startsWith("http") || d.icon!.startsWith("data:image")
|
||||||
? ""
|
? ""
|
||||||
: d.icon,
|
: d.icon!,
|
||||||
);
|
);
|
||||||
g.append("image")
|
g.append("image")
|
||||||
.attr("class", "regimentImage")
|
.attr("class", "regimentImage")
|
||||||
|
|
@ -94,13 +86,13 @@ const drawRegimentsRenderer = (regiments: Regiment[], s: number): void => {
|
||||||
.attr("height", h)
|
.attr("height", h)
|
||||||
.attr("width", h)
|
.attr("width", h)
|
||||||
.attr("href", (d) =>
|
.attr("href", (d) =>
|
||||||
d.icon.startsWith("http") || d.icon.startsWith("data:image")
|
d.icon!.startsWith("http") || d.icon!.startsWith("data:image")
|
||||||
? d.icon
|
? d.icon!
|
||||||
: "",
|
: "",
|
||||||
);
|
);
|
||||||
};
|
};
|
||||||
|
|
||||||
const drawRegimentRenderer = (reg: Regiment, stateId: number): void => {
|
const drawRegimentRenderer = (reg: MilitaryRegiment, stateId: number): void => {
|
||||||
const size = +armies.attr("box-size");
|
const size = +armies.attr("box-size");
|
||||||
const w = reg.n ? size * 4 : size * 6;
|
const w = reg.n ? size * 4 : size * 6;
|
||||||
const h = size * 2;
|
const h = size * 2;
|
||||||
|
|
@ -149,9 +141,9 @@ const drawRegimentRenderer = (reg: Regiment, stateId: number): void => {
|
||||||
.attr("x", x1 - size)
|
.attr("x", x1 - size)
|
||||||
.attr("y", reg.y)
|
.attr("y", reg.y)
|
||||||
.text(
|
.text(
|
||||||
reg.icon.startsWith("http") || reg.icon.startsWith("data:image")
|
reg.icon!.startsWith("http") || reg.icon!.startsWith("data:image")
|
||||||
? ""
|
? ""
|
||||||
: reg.icon,
|
: reg.icon!,
|
||||||
);
|
);
|
||||||
g.append("image")
|
g.append("image")
|
||||||
.attr("class", "regimentImage")
|
.attr("class", "regimentImage")
|
||||||
|
|
@ -161,14 +153,18 @@ const drawRegimentRenderer = (reg: Regiment, stateId: number): void => {
|
||||||
.attr("width", h)
|
.attr("width", h)
|
||||||
.attr(
|
.attr(
|
||||||
"href",
|
"href",
|
||||||
reg.icon.startsWith("http") || reg.icon.startsWith("data:image")
|
reg.icon!.startsWith("http") || reg.icon!.startsWith("data:image")
|
||||||
? reg.icon
|
? reg.icon!
|
||||||
: "",
|
: "",
|
||||||
);
|
);
|
||||||
};
|
};
|
||||||
|
|
||||||
// move one regiment to another
|
// move one regiment to another
|
||||||
const moveRegimentRenderer = (reg: Regiment, x: number, y: number): void => {
|
const moveRegimentRenderer = (
|
||||||
|
reg: MilitaryRegiment,
|
||||||
|
x: number,
|
||||||
|
y: number,
|
||||||
|
): void => {
|
||||||
const el = armies
|
const el = armies
|
||||||
.select(`g#army${reg.state}`)
|
.select(`g#army${reg.state}`)
|
||||||
.select(`g#regiment${reg.state}-${reg.i}`);
|
.select(`g#regiment${reg.state}-${reg.i}`);
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue