This commit is contained in:
2026-06-10 22:37:25 -04:00
parent 4b762c168d
commit 436151d642
7 changed files with 73 additions and 24 deletions
+5
View File
@@ -117,6 +117,7 @@ static void GenerateMap(string srcDir, string dstDir)
regions.Add(new RegionData
{
Name = name,
Slug = Slugify(name),
Terrain = terrain,
X = int.Parse(xMatch.Groups[1].Value),
Y = int.Parse(yMatch.Groups[1].Value),
@@ -163,6 +164,7 @@ static void GenerateMap(string srcDir, string dstDir)
var cy = region.Y + pad;
var color = terrainColors.GetValueOrDefault(region.Terrain, "#888");
svg.AppendLine($"""<a href="/docs/{region.Slug}" target="_top">""");
svg.AppendLine($"""<circle cx="{cx}" cy="{cy}" r="32" fill="url(#glow-{region.Terrain})"/>""");
svg.AppendLine($"""<circle cx="{cx}" cy="{cy}" r="18" fill="{color}" stroke="rgba(255,255,255,0.4)" stroke-width="2"/>""");
@@ -177,6 +179,8 @@ static void GenerateMap(string srcDir, string dstDir)
svg.Append(System.Text.Encodings.Web.HtmlEncoder.Default.Encode($"\u2605 {lm}"));
svg.AppendLine("</text>");
}
svg.AppendLine("</a>");
}
var legendX = maxX - 160;
@@ -226,6 +230,7 @@ static string? FindContainingDir(string startDir, string markerFile)
class RegionData
{
public string Name { get; set; } = "";
public string Slug { get; set; } = "";
public string Terrain { get; set; } = "";
public int X { get; set; }
public int Y { get; set; }
+54 -11
View File
@@ -27,15 +27,16 @@
<line x1="120" y1="390" x2="90" y2="470" stroke="rgba(255,255,255,0.12)" stroke-width="2" stroke-linecap="round"/>
<line x1="120" y1="390" x2="310" y2="430" stroke="rgba(255,255,255,0.12)" stroke-width="2" stroke-linecap="round"/>
<line x1="310" y1="430" x2="210" y2="460" stroke="rgba(255,255,255,0.12)" stroke-width="2" stroke-linecap="round"/>
<line x1="310" y1="430" x2="210" y2="220" stroke="rgba(255,255,255,0.12)" stroke-width="2" stroke-linecap="round"/>
<line x1="210" y1="200" x2="210" y2="220" stroke="rgba(255,255,255,0.12)" stroke-width="2" stroke-linecap="round"/>
<line x1="310" y1="430" x2="200" y2="320" stroke="rgba(255,255,255,0.12)" stroke-width="2" stroke-linecap="round"/>
<line x1="210" y1="185" x2="200" y2="320" stroke="rgba(255,255,255,0.12)" stroke-width="2" stroke-linecap="round"/>
<line x1="210" y1="185" x2="110" y2="110" stroke="rgba(255,255,255,0.12)" stroke-width="2" stroke-linecap="round"/>
<line x1="480" y1="160" x2="690" y2="140" stroke="rgba(255,255,255,0.12)" stroke-width="2" stroke-linecap="round"/>
<line x1="480" y1="160" x2="620" y2="180" stroke="rgba(255,255,255,0.12)" stroke-width="2" stroke-linecap="round"/>
<line x1="480" y1="160" x2="610" y2="350" stroke="rgba(255,255,255,0.12)" stroke-width="2" stroke-linecap="round"/>
<line x1="530" y1="470" x2="660" y2="460" stroke="rgba(255,255,255,0.12)" stroke-width="2" stroke-linecap="round"/>
<line x1="90" y1="310" x2="80" y2="180" stroke="rgba(255,255,255,0.12)" stroke-width="2" stroke-linecap="round"/>
<line x1="90" y1="310" x2="210" y2="220" stroke="rgba(255,255,255,0.12)" stroke-width="2" stroke-linecap="round"/>
<line x1="360" y1="290" x2="210" y2="220" stroke="rgba(255,255,255,0.12)" stroke-width="2" stroke-linecap="round"/>
<line x1="90" y1="310" x2="200" y2="320" stroke="rgba(255,255,255,0.12)" stroke-width="2" stroke-linecap="round"/>
<line x1="360" y1="290" x2="200" y2="320" stroke="rgba(255,255,255,0.12)" stroke-width="2" stroke-linecap="round"/>
<line x1="360" y1="290" x2="320" y2="170" stroke="rgba(255,255,255,0.12)" stroke-width="2" stroke-linecap="round"/>
<line x1="360" y1="290" x2="440" y2="240" stroke="rgba(255,255,255,0.12)" stroke-width="2" stroke-linecap="round"/>
<line x1="690" y1="140" x2="430" y2="90" stroke="rgba(255,255,255,0.12)" stroke-width="2" stroke-linecap="round"/>
@@ -47,98 +48,140 @@
<line x1="320" y1="170" x2="110" y2="110" stroke="rgba(255,255,255,0.12)" stroke-width="2" stroke-linecap="round"/>
<line x1="440" y1="240" x2="490" y2="390" stroke="rgba(255,255,255,0.12)" stroke-width="2" stroke-linecap="round"/>
<line x1="620" y1="180" x2="700" y2="170" stroke="rgba(255,255,255,0.12)" stroke-width="2" stroke-linecap="round"/>
<a href="/docs/forest-1" target="_top">
<circle cx="120" cy="390" r="32" fill="url(#glow-Forest)"/>
<circle cx="120" cy="390" r="18" fill="#2e7d32" stroke="rgba(255,255,255,0.4)" stroke-width="2"/>
<text x="144" y="394" fill="rgba(255,255,255,0.9)" font-family="system-ui,sans-serif" font-size="11" font-weight="600">
Forest 1</text>
</a>
<a href="/docs/forest-2" target="_top">
<circle cx="310" cy="430" r="32" fill="url(#glow-Forest)"/>
<circle cx="310" cy="430" r="18" fill="#2e7d32" stroke="rgba(255,255,255,0.4)" stroke-width="2"/>
<text x="334" y="434" fill="rgba(255,255,255,0.9)" font-family="system-ui,sans-serif" font-size="11" font-weight="600">
Forest 2</text>
<circle cx="210" cy="200" r="32" fill="url(#glow-Forest)"/>
<circle cx="210" cy="200" r="18" fill="#2e7d32" stroke="rgba(255,255,255,0.4)" stroke-width="2"/>
<text x="234" y="204" fill="rgba(255,255,255,0.9)" font-family="system-ui,sans-serif" font-size="11" font-weight="600">
</a>
<a href="/docs/forest-3" target="_top">
<circle cx="210" cy="185" r="32" fill="url(#glow-Forest)"/>
<circle cx="210" cy="185" r="18" fill="#2e7d32" stroke="rgba(255,255,255,0.4)" stroke-width="2"/>
<text x="234" y="189" fill="rgba(255,255,255,0.9)" font-family="system-ui,sans-serif" font-size="11" font-weight="600">
Forest 3</text>
</a>
<a href="/docs/forest-4" target="_top">
<circle cx="480" cy="160" r="32" fill="url(#glow-Forest)"/>
<circle cx="480" cy="160" r="18" fill="#2e7d32" stroke="rgba(255,255,255,0.4)" stroke-width="2"/>
<text x="504" y="164" fill="rgba(255,255,255,0.9)" font-family="system-ui,sans-serif" font-size="11" font-weight="600">
Forest 4</text>
</a>
<a href="/docs/forest-5" target="_top">
<circle cx="530" cy="470" r="32" fill="url(#glow-Forest)"/>
<circle cx="530" cy="470" r="18" fill="#2e7d32" stroke="rgba(255,255,255,0.4)" stroke-width="2"/>
<text x="554" y="474" fill="rgba(255,255,255,0.9)" font-family="system-ui,sans-serif" font-size="11" font-weight="600">
Forest 5</text>
</a>
<a href="/docs/grass-1" target="_top">
<circle cx="90" cy="310" r="32" fill="url(#glow-Grass)"/>
<circle cx="90" cy="310" r="18" fill="#4caf50" stroke="rgba(255,255,255,0.4)" stroke-width="2"/>
<text x="114" y="314" fill="rgba(255,255,255,0.9)" font-family="system-ui,sans-serif" font-size="11" font-weight="600">
Grass 1</text>
<text x="114" y="328" fill="rgba(255,255,255,0.45)" font-family="system-ui,sans-serif" font-size="9" font-style="italic">
&#x2605; Lone Tree Station</text>
</a>
<a href="/docs/grass-2" target="_top">
<circle cx="210" cy="460" r="32" fill="url(#glow-Grass)"/>
<circle cx="210" cy="460" r="18" fill="#4caf50" stroke="rgba(255,255,255,0.4)" stroke-width="2"/>
<text x="234" y="464" fill="rgba(255,255,255,0.9)" font-family="system-ui,sans-serif" font-size="11" font-weight="600">
Grass 2</text>
<text x="234" y="478" fill="rgba(255,255,255,0.45)" font-family="system-ui,sans-serif" font-size="9" font-style="italic">
&#x2605; Spire</text>
</a>
<a href="/docs/grass-3" target="_top">
<circle cx="360" cy="290" r="32" fill="url(#glow-Grass)"/>
<circle cx="360" cy="290" r="18" fill="#4caf50" stroke="rgba(255,255,255,0.4)" stroke-width="2"/>
<text x="384" y="294" fill="rgba(255,255,255,0.9)" font-family="system-ui,sans-serif" font-size="11" font-weight="600">
Grass 3</text>
</a>
<a href="/docs/grass-4" target="_top">
<circle cx="690" cy="140" r="32" fill="url(#glow-Grass)"/>
<circle cx="690" cy="140" r="18" fill="#4caf50" stroke="rgba(255,255,255,0.4)" stroke-width="2"/>
<text x="714" y="144" fill="rgba(255,255,255,0.9)" font-family="system-ui,sans-serif" font-size="11" font-weight="600">
Grass 4</text>
</a>
<a href="/docs/grass-5" target="_top">
<circle cx="610" cy="350" r="32" fill="url(#glow-Grass)"/>
<circle cx="610" cy="350" r="18" fill="#4caf50" stroke="rgba(255,255,255,0.4)" stroke-width="2"/>
<text x="634" y="354" fill="rgba(255,255,255,0.9)" font-family="system-ui,sans-serif" font-size="11" font-weight="600">
Grass 5</text>
</a>
<a href="/docs/mountain-1" target="_top">
<circle cx="80" cy="180" r="32" fill="url(#glow-Mountain)"/>
<circle cx="80" cy="180" r="18" fill="#78909c" stroke="rgba(255,255,255,0.4)" stroke-width="2"/>
<text x="104" y="184" fill="rgba(255,255,255,0.9)" font-family="system-ui,sans-serif" font-size="11" font-weight="600">
Mountain 1</text>
</a>
<a href="/docs/mountain-2" target="_top">
<circle cx="320" cy="170" r="32" fill="url(#glow-Mountain)"/>
<circle cx="320" cy="170" r="18" fill="#78909c" stroke="rgba(255,255,255,0.4)" stroke-width="2"/>
<text x="344" y="174" fill="rgba(255,255,255,0.9)" font-family="system-ui,sans-serif" font-size="11" font-weight="600">
Mountain 2</text>
</a>
<a href="/docs/mountain-3" target="_top">
<circle cx="440" cy="240" r="32" fill="url(#glow-Mountain)"/>
<circle cx="440" cy="240" r="18" fill="#78909c" stroke="rgba(255,255,255,0.4)" stroke-width="2"/>
<text x="464" y="244" fill="rgba(255,255,255,0.9)" font-family="system-ui,sans-serif" font-size="11" font-weight="600">
Mountain 3</text>
</a>
<a href="/docs/mountain-4" target="_top">
<circle cx="430" cy="90" r="32" fill="url(#glow-Mountain)"/>
<circle cx="430" cy="90" r="18" fill="#78909c" stroke="rgba(255,255,255,0.4)" stroke-width="2"/>
<text x="454" y="94" fill="rgba(255,255,255,0.9)" font-family="system-ui,sans-serif" font-size="11" font-weight="600">
Mountain 4</text>
</a>
<a href="/docs/mountain-5" target="_top">
<circle cx="490" cy="390" r="32" fill="url(#glow-Mountain)"/>
<circle cx="490" cy="390" r="18" fill="#78909c" stroke="rgba(255,255,255,0.4)" stroke-width="2"/>
<text x="514" y="394" fill="rgba(255,255,255,0.9)" font-family="system-ui,sans-serif" font-size="11" font-weight="600">
Mountain 5</text>
</a>
<a href="/docs/wasteland-1" target="_top">
<circle cx="620" cy="180" r="32" fill="url(#glow-Wasteland)"/>
<circle cx="620" cy="180" r="18" fill="#8d6e63" stroke="rgba(255,255,255,0.4)" stroke-width="2"/>
<text x="644" y="184" fill="rgba(255,255,255,0.9)" font-family="system-ui,sans-serif" font-size="11" font-weight="600">
Wasteland 1</text>
</a>
<a href="/docs/water-1" target="_top">
<circle cx="90" cy="470" r="32" fill="url(#glow-Water)"/>
<circle cx="90" cy="470" r="18" fill="#42a5f5" stroke="rgba(255,255,255,0.4)" stroke-width="2"/>
<text x="114" y="474" fill="rgba(255,255,255,0.9)" font-family="system-ui,sans-serif" font-size="11" font-weight="600">
Water 1</text>
<text x="114" y="488" fill="rgba(255,255,255,0.45)" font-family="system-ui,sans-serif" font-size="9" font-style="italic">
&#x2605; Research Station</text>
<circle cx="210" cy="220" r="32" fill="url(#glow-Water)"/>
<circle cx="210" cy="220" r="18" fill="#42a5f5" stroke="rgba(255,255,255,0.4)" stroke-width="2"/>
<text x="234" y="224" fill="rgba(255,255,255,0.9)" font-family="system-ui,sans-serif" font-size="11" font-weight="600">
</a>
<a href="/docs/water-2" target="_top">
<circle cx="200" cy="320" r="32" fill="url(#glow-Water)"/>
<circle cx="200" cy="320" r="18" fill="#42a5f5" stroke="rgba(255,255,255,0.4)" stroke-width="2"/>
<text x="224" y="324" fill="rgba(255,255,255,0.9)" font-family="system-ui,sans-serif" font-size="11" font-weight="600">
Water 2</text>
<text x="234" y="238" fill="rgba(255,255,255,0.45)" font-family="system-ui,sans-serif" font-size="9" font-style="italic">
<text x="224" y="338" fill="rgba(255,255,255,0.45)" font-family="system-ui,sans-serif" font-size="9" font-style="italic">
&#x2605; White Sky</text>
</a>
<a href="/docs/water-3" target="_top">
<circle cx="110" cy="110" r="32" fill="url(#glow-Water)"/>
<circle cx="110" cy="110" r="18" fill="#42a5f5" stroke="rgba(255,255,255,0.4)" stroke-width="2"/>
<text x="134" y="114" fill="rgba(255,255,255,0.9)" font-family="system-ui,sans-serif" font-size="11" font-weight="600">
Water 3</text>
</a>
<a href="/docs/water-4" target="_top">
<circle cx="700" cy="170" r="32" fill="url(#glow-Water)"/>
<circle cx="700" cy="170" r="18" fill="#42a5f5" stroke="rgba(255,255,255,0.4)" stroke-width="2"/>
<text x="724" y="174" fill="rgba(255,255,255,0.9)" font-family="system-ui,sans-serif" font-size="11" font-weight="600">
Water 4</text>
</a>
<a href="/docs/water-5" target="_top">
<circle cx="660" cy="460" r="32" fill="url(#glow-Water)"/>
<circle cx="660" cy="460" r="18" fill="#42a5f5" stroke="rgba(255,255,255,0.4)" stroke-width="2"/>
<text x="684" y="464" fill="rgba(255,255,255,0.9)" font-family="system-ui,sans-serif" font-size="11" font-weight="600">
Water 5</text>
</a>
<rect x="600" y="20" width="140" height="130" rx="6" fill="rgba(0,0,0,0.4)" stroke="rgba(255,255,255,0.08)"/>
<text x="610" y="35" fill="rgba(255,255,255,0.6)" font-family="system-ui,sans-serif" font-size="10" font-weight="600">Legend</text>
<circle cx="614" cy="49" r="5" fill="#4caf50"/>

Before

Width:  |  Height:  |  Size: 12 KiB

After

Width:  |  Height:  |  Size: 13 KiB

+2 -1
View File
@@ -2,6 +2,7 @@
category: Region
Connections:
- "[[Water 2]]"
- "[[Water 3]]"
X: 150
Y: 140
Y: 125
---
+2 -2
View File
@@ -6,8 +6,8 @@ Connections:
- "[[Grass 1]]"
- "[[Forest 3]]"
- "[[Grass 3]]"
X: 150
Y: 160
X: 140
Y: 260
Landmarks:
- "[[White Sky]]"
---
+6 -7
View File
@@ -115,14 +115,13 @@
"id": "a4f3f788b08f3cf9",
"type": "leaf",
"state": {
"type": "markdown",
"type": "bases",
"state": {
"file": "Tasks/Generate a csharp script to do what you did.md",
"mode": "source",
"source": false
"file": "Bases/Regions.base",
"viewName": "Table"
},
"icon": "lucide-file",
"title": "Generate a csharp script to do what you did"
"icon": "lucide-table",
"title": "Regions"
}
}
],
@@ -290,9 +289,9 @@
},
"active": "a4f3f788b08f3cf9",
"lastOpenFiles": [
"Tasks/Generate a csharp script to do what you did.md",
"Tasks/Generate a Markdown Website.md",
"_Tasks.base",
"Tasks/Generate a csharp script to do what you did.md",
"Tasks/Generate a map of regions and how they connect.md",
"Bases/_Roles.base",
"_Overview.md",
+2 -1
View File
@@ -2,6 +2,7 @@
category: Region
Connections:
- "[[Water 2]]"
- "[[Water 3]]"
X: 150
Y: 140
Y: 125
---
+2 -2
View File
@@ -6,8 +6,8 @@ Connections:
- "[[Grass 1]]"
- "[[Forest 3]]"
- "[[Grass 3]]"
X: 150
Y: 160
X: 140
Y: 260
Landmarks:
- "[[White Sky]]"
---