|
@ -57,7 +57,12 @@ impl ActualWorld { |
|
|
self_id: *id,
|
|
|
self_id: *id,
|
|
|
tagged_by: self.state.tagged_by,
|
|
|
tagged_by: self.state.tagged_by,
|
|
|
tagged: self.state.tagged,
|
|
|
tagged: self.state.tagged,
|
|
|
bounds_distance: (pos.y, self.size.x - pos.x, self.size.y - pos.y, pos.x),
|
|
|
|
|
|
|
|
|
bounds_distance: (
|
|
|
|
|
|
pos.y,
|
|
|
|
|
|
self.size.x - pos.x - 1,
|
|
|
|
|
|
self.size.y - pos.y - 1,
|
|
|
|
|
|
pos.x,
|
|
|
|
|
|
),
|
|
|
other_agents: &mut self
|
|
|
other_agents: &mut self
|
|
|
.state
|
|
|
.state
|
|
|
.agent_positions
|
|
|
.agent_positions
|
|
@ -123,9 +128,9 @@ impl ActualWorld { |
|
|
assert!(dir.y.abs() <= 1);
|
|
|
assert!(dir.y.abs() <= 1);
|
|
|
let pos = self.state.agent_positions.get(&id).unwrap();
|
|
|
let pos = self.state.agent_positions.get(&id).unwrap();
|
|
|
let size = &self.size;
|
|
|
let size = &self.size;
|
|
|
assert!(pos.x + dir.x > 0);
|
|
|
|
|
|
|
|
|
assert!(pos.x + dir.x >= 0);
|
|
|
assert!(pos.x + dir.x < size.x);
|
|
|
assert!(pos.x + dir.x < size.x);
|
|
|
assert!(pos.y + dir.y > 0);
|
|
|
|
|
|
|
|
|
assert!(pos.y + dir.y >= 0);
|
|
|
assert!(pos.y + dir.y < size.y);
|
|
|
assert!(pos.y + dir.y < size.y);
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|