Orders: attack (fighting creatures nearby go for an enemy or enemy tower) and guard (up to three creatures hold a room for two minutes); right click with an order tool cancels
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
1 parent
b3583f5e7e
commit
0606c1f994
9 files changed
+230
-6
No files matched your search
+3
-2
@@ -1909,7 +1909,7 @@ impl Game {
|
||||
self.sfx(Sfx::DigDone, x as f32 + 0.5, y as f32 + 0.5);
|
||||
}
|
||||
|
||||
fn unreserve(&mut self, me: u32) {
|
||||
pub(crate) fn unreserve(&mut self, me: u32) {
|
||||
for t in self.map.t.iter_mut() {
|
||||
if t.reserved == me {
|
||||
t.reserved = 0;
|
||||
@@ -3200,8 +3200,9 @@ impl Game {
|
||||
}
|
||||
}
|
||||
Job::Guard(t) => {
|
||||
// a guard post, or a guard order in any room
|
||||
e.timer -= dt;
|
||||
if cur != t || self.map.t[t].kind != Kind::GuardPost || e.timer <= 0.0 {
|
||||
if cur != t || !self.map.t[t].walkable() || self.map.t[t].owner != Owner::Player || e.timer <= 0.0 {
|
||||
self.unreserve(me);
|
||||
e.job = Job::None;
|
||||
}
|
||||
|
||||
Reference in new issue
Block a user