decalage de la map
This commit is contained in:
parent
e8f9c49178
commit
b84cf4b471
60
src/map.rs
60
src/map.rs
|
@ -75,7 +75,8 @@ pub enum Tile {
|
||||||
Wall,
|
Wall,
|
||||||
}
|
}
|
||||||
|
|
||||||
/// Permet de crée des entité representant les cases d'une map, sur une longueur et langueur donné
|
/// Permet de crée des entité representant les cases d'une map, sur une longueur et langueur donné.
|
||||||
|
/// Donner une longueur impaire.
|
||||||
pub fn init_map(
|
pub fn init_map(
|
||||||
longueur: u8,
|
longueur: u8,
|
||||||
largeur: u8,
|
largeur: u8,
|
||||||
|
@ -85,41 +86,44 @@ pub fn init_map(
|
||||||
) {
|
) {
|
||||||
for y in 0..longueur {
|
for y in 0..longueur {
|
||||||
for x in 0..largeur {
|
for x in 0..largeur {
|
||||||
let mut curent_type = Tile::Grass;
|
if y % 2 != 0 && x == longueur {
|
||||||
let mut curent_id = None;
|
|
||||||
if x == 1 && y == 4 {
|
|
||||||
curent_type = Tile::Castle;
|
|
||||||
curent_id = Some(id_joueur1);
|
|
||||||
} else if x == longueur && y == 4 {
|
|
||||||
curent_type = Tile::Castle;
|
|
||||||
curent_id = Some(id_joueur2);
|
|
||||||
} else {
|
} else {
|
||||||
match (x, y) {
|
let mut curent_type = Tile::Grass;
|
||||||
(0, 5) | (1, 5) | (2, 4) | (1, 3) | (0, 3) => {
|
let mut curent_id = None;
|
||||||
curent_type = Tile::Grass;
|
if x == 1 && y == 4 {
|
||||||
curent_id = Some(id_joueur1)
|
curent_type = Tile::Castle;
|
||||||
}
|
curent_id = Some(id_joueur1);
|
||||||
|
} else if x == longueur && y == 4 {
|
||||||
|
curent_type = Tile::Castle;
|
||||||
|
curent_id = Some(id_joueur2);
|
||||||
|
} else {
|
||||||
|
match (x, y) {
|
||||||
|
(0, 5) | (1, 5) | (2, 4) | (1, 3) | (0, 3) => {
|
||||||
|
curent_type = Tile::Grass;
|
||||||
|
curent_id = Some(id_joueur1)
|
||||||
|
}
|
||||||
|
|
||||||
(9, 5) | (8, 5) | (8, 4) | (9, 3) | (8, 3) => {
|
(9, 5) | (8, 5) | (8, 4) | (9, 3) | (8, 3) => {
|
||||||
curent_type = Tile::Grass;
|
curent_type = Tile::Grass;
|
||||||
curent_id = Some(id_joueur2)
|
curent_id = Some(id_joueur2)
|
||||||
}
|
}
|
||||||
|
|
||||||
_ => {
|
_ => {
|
||||||
if rand::random() {
|
|
||||||
if rand::random() {
|
if rand::random() {
|
||||||
curent_type = Tile::Forest
|
if rand::random() {
|
||||||
} else {
|
curent_type = Tile::Forest
|
||||||
curent_type = Tile::Hill
|
} else {
|
||||||
|
curent_type = Tile::Hill
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
if let Some(id) = curent_id {
|
||||||
if let Some(id) = curent_id {
|
commands.spawn((curent_type, id, Position { x, y }));
|
||||||
commands.spawn((curent_type, id, Position { x, y }));
|
} else {
|
||||||
} else {
|
commands.spawn((curent_type, Position { x, y }));
|
||||||
commands.spawn((curent_type, Position { x, y }));
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue