summaryrefslogtreecommitdiff
path: root/src/sim/entity/mod.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/sim/entity/mod.rs')
-rw-r--r--src/sim/entity/mod.rs12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/sim/entity/mod.rs b/src/sim/entity/mod.rs
index 59479a2..61f9d84 100644
--- a/src/sim/entity/mod.rs
+++ b/src/sim/entity/mod.rs
@@ -34,6 +34,18 @@ impl EntityCells {
.fold(0.0, |acc, cur| acc + cur.material.def().density as f32)
* MASS_SCALING
}
+
+ pub fn flip_x(&mut self) {
+ let mut new_cells = Vec::with_capacity(self.cells.len());
+ for y in 0..self.size.y {
+ for rx in 0..self.size.x {
+ let x = self.size.x - rx - 1;
+ new_cells.push(self.get_cell_at_local_position(IVec2::new(x, y)));
+ }
+ }
+
+ self.cells = new_cells;
+ }
}
impl Marchable for EntityCells {