draw overworld

This commit is contained in:
luckyturtledev 2024-07-06 17:19:44 +02:00
parent 427c71c20f
commit 284163b428
4 changed files with 46 additions and 4 deletions

View file

@ -1,9 +1,23 @@
use comfy::{draw_circle, vec2, EngineContext, GREEN};
use crate::game::ZLayer;
pub mod worldgen;
pub fn draw(_state: &crate::State, _engine: &EngineContext<'_>) {
pub fn draw(state: &crate::State, _engine: &comfy::EngineContext) {
draw_circle(vec2(0.0, 0.0), 0.5, GREEN, 0);
for (coords, tile) in state.overworld.iter_tiles() {
for (i, texture) in tile.textures.iter().rev().enumerate() {
let i = i as i32;
draw_sprite(
*texture,
coords.as_vec2(),
Default::default(),
ZLayer::MapMax - i,
Vec2::ONE
)
}
}
}
pub fn update(_state: &mut crate::State, _engine: &mut EngineContext<'_>) {}

View file

@ -1,7 +1,8 @@
use comfy::{IVec2, UVec2};
use comfy::{IVec2, TextureHandle, UVec2};
use std::collections::HashMap;
enum MovementCost {
pub enum MovementCost {
/// No movement possible - cost infinitely high.
Infinite,
/// There is a path for this movement - movement is cheap.
@ -13,7 +14,9 @@ enum MovementCost {
}
#[derive(Debug)]
struct Tile;
pub struct Tile {
pub textures: Vec<TextureHandle>
}
impl Tile {
pub fn can_stand_inside(&self) -> bool {