diff options
-rw-r--r-- | src/engine/mod.rs | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/src/engine/mod.rs b/src/engine/mod.rs index 227a7f6..6626c0d 100644 --- a/src/engine/mod.rs +++ b/src/engine/mod.rs @@ -165,7 +165,9 @@ impl GameState { player.energy_generated += building.energy_generated_per_turn; buildings.push(building); } - unoccupied_cells.retain(|&pos| pos != p); + + let to_remove_index = unoccupied_cells.iter().position(|&pos| pos == p).unwrap(); + unoccupied_cells.swap_remove(to_remove_index); }, } } |