Implement Movement Cost
All checks were successful
Rust / rustfmt (pull_request) Successful in 19s
Rust / clippy (pull_request) Successful in 1m17s
Rust / build (pull_request) Successful in 2m14s

This commit is contained in:
Dominic 2024-07-06 23:54:17 +02:00
parent e03cd06c78
commit 9fbce6b320
Signed by: msrd0
GPG key ID: AAF7C8430CA3345D

View file

@ -117,22 +117,50 @@ impl Tile {
}
pub fn can_stand_inside(&self) -> bool {
unimplemented!()
#[allow(clippy::match_like_matches_macro)] // I believe this is better readable
match self {
Self::House { door: false, .. } => false,
_ => true
}
}
pub fn movement_cost_left(&self) -> MovementCost {
unimplemented!()
match self {
Self::Grass => MovementCost::Default,
Self::Path { left: true, .. } => MovementCost::Path,
Self::Fence { left: false, .. } => MovementCost::Obstacle,
_ => MovementCost::Infinite
}
}
pub fn movement_cost_right(&self) -> MovementCost {
unimplemented!()
match self {
Self::Grass => MovementCost::Default,
Self::Path { right: true, .. } => MovementCost::Path,
Self::Fence { right: false, .. } => MovementCost::Obstacle,
_ => MovementCost::Infinite
}
}
pub fn movement_cost_up(&self) -> MovementCost {
unimplemented!()
match self {
Self::Grass => MovementCost::Default,
Self::Path { top: true, .. } => MovementCost::Path,
Self::Fence { top: false, .. } => MovementCost::Obstacle,
_ => MovementCost::Infinite
}
}
pub fn movement_cost_down(&self) -> MovementCost {
unimplemented!()
match self {
Self::Grass => MovementCost::Default,
Self::Path { bottom: true, .. } => MovementCost::Path,
Self::Fence { bottom: false, .. } => MovementCost::Obstacle,
_ => MovementCost::Infinite
}
}
pub fn can_enter_house(&self) -> bool {
unimplemented!()
#[allow(clippy::match_like_matches_macro)] // I believe this is better readable
match self {
Self::House { door: true, .. } => true,
_ => false
}
}
}