rust/landgen/src/wavefront_collapse/wavefront_collapse.rs
branchtransitional_engine
changeset 15925 b0e8cc72bfef
parent 15924 9502611bffc1
equal deleted inserted replaced
15924:9502611bffc1 15925:b0e8cc72bfef
    68 
    68 
    69     fn get_tile(&self, y: usize, x: usize) -> Tile {
    69     fn get_tile(&self, y: usize, x: usize) -> Tile {
    70         let x = if self.wrap {
    70         let x = if self.wrap {
    71             if x == usize::MAX {
    71             if x == usize::MAX {
    72                 self.grid.width() - 1
    72                 self.grid.width() - 1
       
    73             } else if x == self.grid.width() {
       
    74                 0
    73             } else {
    75             } else {
    74                 if x == self.grid.width() {
    76                 x
    75                     0
       
    76                 } else {
       
    77                     x
       
    78                 }
       
    79             }
    77             }
    80         } else {
    78         } else {
    81             x
    79             x
    82         };
    80         };
    83         
    81 
    84         self.grid.get(y, x).copied().unwrap_or_default()
    82         self.grid.get(y, x).copied().unwrap_or_default()
    85     }
    83     }
    86 
    84 
    87     fn collapse_step<I: Iterator<Item = u32>>(&mut self, random_numbers: &mut I) -> bool {
    85     fn collapse_step<I: Iterator<Item = u32>>(&mut self, random_numbers: &mut I) -> bool {
    88         let mut tiles_to_collapse = (usize::max_value(), Vec::new());
    86         let mut tiles_to_collapse = (usize::max_value(), Vec::new());