Add Changsha veteran chapter

This commit is contained in:
2026-06-23 08:30:43 +09:00
parent 98876673a8
commit 2402e1c38f
11 changed files with 1217 additions and 31 deletions

View File

@@ -0,0 +1,74 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 5200 3400" role="img" aria-label="Changsha veteran audience tactical battlefield">
<defs>
<linearGradient id="field" x1="0" y1="0" x2="1" y2="1">
<stop offset="0" stop-color="#8d7a45"/>
<stop offset="0.42" stop-color="#aa955c"/>
<stop offset="1" stop-color="#736c43"/>
</linearGradient>
<linearGradient id="wall" x1="0" y1="0" x2="1" y2="1">
<stop offset="0" stop-color="#8e7b55"/>
<stop offset="1" stop-color="#3d3829"/>
</linearGradient>
<linearGradient id="river" x1="0" y1="0" x2="1" y2="1">
<stop offset="0" stop-color="#9bd7e0"/>
<stop offset="0.55" stop-color="#407f8e"/>
<stop offset="1" stop-color="#1f4658"/>
</linearGradient>
<pattern id="dust" width="96" height="96" patternUnits="userSpaceOnUse">
<path d="M12 22h22M58 31h26M28 68h36M8 84h18" stroke="#40331f" stroke-width="5" opacity=".18"/>
<path d="M74 11h14M44 43h16M78 75h10" stroke="#dec582" stroke-width="4" opacity=".22"/>
</pattern>
<pattern id="grid" width="100" height="100" patternUnits="userSpaceOnUse">
<path d="M100 0H0v100" fill="none" stroke="#14100b" stroke-width="6" opacity=".2"/>
</pattern>
<filter id="shadow" x="-20%" y="-20%" width="140%" height="140%">
<feDropShadow dx="18" dy="26" stdDeviation="13" flood-color="#12100b" flood-opacity=".34"/>
</filter>
</defs>
<rect width="5200" height="3400" fill="url(#field)"/>
<rect width="5200" height="3400" fill="url(#dust)" opacity=".86"/>
<path d="M0 0 C360 210 520 470 470 820 C420 1180 220 1510 280 1940 C330 2320 190 2790 0 3190 Z" fill="#34422d" opacity=".78"/>
<path d="M2020 80 C2450 -20 2960 80 3240 370 C3040 720 2720 900 2280 880 C1940 860 1730 620 1710 340 C1710 210 1830 120 2020 80 Z" fill="#415033" opacity=".76"/>
<path d="M3560 2380 C4020 2250 4660 2320 5200 2690 L5200 3400 L3600 3400 C3440 3040 3380 2600 3560 2380 Z" fill="#38472e" opacity=".78"/>
<path d="M1120 -60 C1260 420 1160 820 1080 1230 C1000 1640 1100 1940 1240 2360" fill="none" stroke="url(#river)" stroke-width="130" opacity=".9"/>
<path d="M3360 3400 C3330 3100 3410 2880 3560 2660 C3700 2440 3760 2220 3700 2000" fill="none" stroke="url(#river)" stroke-width="118" opacity=".88"/>
<path d="M1120 -60 C1260 420 1160 820 1080 1230 C1000 1640 1100 1940 1240 2360" fill="none" stroke="#d9f1ef" stroke-width="18" opacity=".35"/>
<path d="M260 2840 C820 2800 1280 2740 1710 2520 C2130 2300 2490 2420 2910 2290 C3330 2160 3520 1870 3860 1720 C4170 1580 4490 1600 4890 1510" fill="none" stroke="#b28b4a" stroke-width="150" opacity=".78" stroke-linecap="round" filter="url(#shadow)"/>
<path d="M260 2840 C820 2800 1280 2740 1710 2520 C2130 2300 2490 2420 2910 2290 C3330 2160 3520 1870 3860 1720 C4170 1580 4490 1600 4890 1510" fill="none" stroke="#dbc27a" stroke-width="56" opacity=".48" stroke-linecap="round"/>
<path d="M1540 2300 C1850 2050 2040 1780 2210 1430 C2390 1070 2680 750 3030 520" fill="none" stroke="#a68043" stroke-width="92" opacity=".48" stroke-linecap="round"/>
<g opacity=".92">
<ellipse cx="1620" cy="2240" rx="190" ry="112" fill="#6f7e3a"/>
<rect x="1545" y="2165" width="126" height="104" fill="#8d5d2d"/>
<path d="M1522 2165 L1608 2092 L1698 2165 Z" fill="#d99235"/>
<rect x="1742" y="2190" width="98" height="82" fill="#8b6130"/>
<path d="M1728 2190 L1792 2132 L1858 2190 Z" fill="#e1a249"/>
</g>
<g opacity=".9">
<ellipse cx="3060" cy="2050" rx="180" ry="106" fill="#738441"/>
<rect x="2990" y="1978" width="120" height="96" fill="#865a2c"/>
<path d="M2968 1978 L3050 1908 L3132 1978 Z" fill="#d99634"/>
</g>
<g filter="url(#shadow)">
<path d="M4060 910 L4950 960 L5010 1960 L4040 2030 Z" fill="url(#wall)" opacity=".96"/>
<path d="M4200 1080 L4760 1115 L4810 1780 L4200 1830 Z" fill="#7b623b"/>
<path d="M4210 1080 L4480 875 L4770 1115 Z" fill="#b97935"/>
<rect x="4290" y="1220" width="96" height="270" fill="#28281f"/>
<rect x="4580" y="1230" width="92" height="260" fill="#28281f"/>
<path d="M3960 1430 C4180 1370 4410 1400 4620 1490 C4750 1545 4900 1565 5060 1520" fill="none" stroke="#c9ad68" stroke-width="36" opacity=".7"/>
</g>
<g fill="#2f4b2a" opacity=".78">
<circle cx="530" cy="610" r="88"/><circle cx="740" cy="940" r="76"/><circle cx="540" cy="1450" r="92"/>
<circle cx="1940" cy="940" r="82"/><circle cx="2260" cy="1160" r="90"/><circle cx="2760" cy="1420" r="84"/>
<circle cx="3920" cy="2640" r="106"/><circle cx="4380" cy="2860" r="96"/><circle cx="4780" cy="3080" r="84"/>
</g>
<rect width="5200" height="3400" fill="url(#grid)"/>
<rect x="18" y="18" width="5164" height="3364" fill="none" stroke="#2b2012" stroke-width="18" opacity=".58"/>
</svg>

After

Width:  |  Height:  |  Size: 4.7 KiB