Knight fortresses: knight towers, patrols, alarm, claimable knight ground and vaults
- fortress.rs: fortress builder (masonry walls with doors, courtyard, corner towers, vault chambers full of mixed treasure, shard chamber, gate of the order as the heart, guards, patrols) - Knight towers shoot the player's units; creatures tear down knight towers within reach - Patrols walk their round; guards and patrols that spot an enemy alarm the others nearby - Imps claim knight ground (slower, not next to fighting heroes); vaults hand over their treasure, shard chambers give the shard back; claiming alarms the knights - Knights tear down the player's bridges near their posts - Fix: units next to a tower could stop at the tile edge just out of melee reach - Tests for towers, vault looting, patrols/alarm and bridge tearing Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
1 parent
7e84cae910
commit
e15b16cc60
7 files changed
+565
-23
No files matched your search
@@ -1200,6 +1200,8 @@ fn draw_towers_solid(g: &Game) {
|
||||
let (x, z) = tw.pos();
|
||||
let h = tower_height(tw);
|
||||
let f = 0.75 + tw.flash * 1.5; // brightens briefly when firing
|
||||
// knight towers: pale stone with blue tones
|
||||
let shade_c = |r: u8, g: u8, b: u8, f: f32| if tw.hero { shade_c(r / 3 + 110, g / 3 + 115, b / 3 + 135, f) } else { shade_c(r, g, b, f) };
|
||||
match tw.kind {
|
||||
TowerKind::Arrow => {
|
||||
draw_cube(vec3(x, h * 0.5, z), vec3(0.7, h, 0.7), None, shade_c(110, 75, 45, f));
|
||||
|
||||
Reference in new issue
Block a user