Steel walls: plate earth walls next to own ground with steel
- New tool Steel (key O, orders category; campaign from mission 11): 80 gold per earth wall, 40 for a reinforced wall; riveted iron plate texture - Heroes dig through steel 20 times slower than through earth and avoid it (path cost 300) - Selling turns a steel wall back into a reinforced wall and refunds half the plating - Texts EN/DE, test Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
1 parent
f298e13d6e
commit
8853d84564
10 files changed
+156
-16
No files matched your search
+6
-3
@@ -58,6 +58,7 @@ pub enum Kind {
|
||||
Ruby, // ruby vein: rare, valuable
|
||||
Diamond, // diamond vein: very rare, very valuable
|
||||
Aerie, // room for flying creatures (their beds)
|
||||
Steel, // steel wall: hardly anyone gets through
|
||||
}
|
||||
|
||||
// options for the map generator (campaign missions)
|
||||
@@ -86,7 +87,7 @@ pub struct River {
|
||||
}
|
||||
|
||||
// order matters for the packed savegame codec: only append new kinds
|
||||
const KINDS: [Kind; 24] = [
|
||||
const KINDS: [Kind; 25] = [
|
||||
Kind::Rock,
|
||||
Kind::Earth,
|
||||
Kind::Gold,
|
||||
@@ -111,6 +112,7 @@ const KINDS: [Kind; 24] = [
|
||||
Kind::Ruby,
|
||||
Kind::Diamond,
|
||||
Kind::Aerie,
|
||||
Kind::Steel,
|
||||
];
|
||||
|
||||
// treasures (veins, treasury content, imp loads): 0 gold, 1 silver, 2 ruby, 3 diamond
|
||||
@@ -159,10 +161,10 @@ impl Tile {
|
||||
Tile { kind, owner: Owner::None, hp: 0.0, gold: 0, marked: false, reserved: 0, food: 0.0, bed: 0, var: 0, reinforced: false, res: 0 }
|
||||
}
|
||||
pub fn solid(&self) -> bool {
|
||||
matches!(self.kind, Kind::Rock | Kind::Earth | Kind::Gold | Kind::Silver | Kind::Ruby | Kind::Diamond)
|
||||
matches!(self.kind, Kind::Rock | Kind::Earth | Kind::Gold | Kind::Silver | Kind::Ruby | Kind::Diamond | Kind::Steel)
|
||||
}
|
||||
pub fn diggable(&self) -> bool {
|
||||
matches!(self.kind, Kind::Earth | Kind::Gold | Kind::Silver | Kind::Ruby | Kind::Diamond)
|
||||
matches!(self.kind, Kind::Earth | Kind::Gold | Kind::Silver | Kind::Ruby | Kind::Diamond | Kind::Steel)
|
||||
}
|
||||
// the treasure of a vein (None for everything else)
|
||||
pub fn vein(&self) -> Option<u8> {
|
||||
@@ -637,6 +639,7 @@ impl Map {
|
||||
let tl = &self.t[i];
|
||||
match tl.kind {
|
||||
Kind::Earth if tl.reinforced => Some(70),
|
||||
Kind::Steel => Some(300),
|
||||
Kind::Earth => Some(7),
|
||||
Kind::Gold | Kind::Silver | Kind::Ruby | Kind::Diamond => Some(12),
|
||||
Kind::Rock | Kind::Core | Kind::Tower | Kind::Water | Kind::Lava => None,
|
||||
|
||||
Reference in new issue
Block a user