INNER CODE UNIT · Rust
apply_vertical_tunnel
rust-gamedev/rust-game-ports · rusty_roguelike-bevy/src/map_builder/mod.rs:112
fn apply_vertical_tunnel(&mut self, y1: i32, y2: i32, x: i32) {
use std::cmp::{max, min};
for y in min(y1, y2)..=max(y1, y2) {
if let Some(idx) = self.map.try_idx(Point::new(x, y)) {
self.map.tiles[idx as usize] = TileType::Floor;
}
}
}
fn build_corridors(&mut self, rng: &mut RandomNumberGenerator) {
let mut rooms = self.rooms.clone();
rooms.sort_by(|a, b| a.center().x.cmp(&b.center().x));
for (i, room) in rooms.iter().enumerate().skip(1) {
let prev = rooms[i - 1].center();
let new = room.center();
if rng.range(0, 2) == 1 {