turtlegame/src/activities/overworld/mod.rs

32 lines
762 B
Rust
Raw Normal View History

2024-07-06 19:32:17 +02:00
use comfy::{
2024-07-06 22:14:48 +02:00
draw_rect_outline, draw_sprite, main_camera_mut, EngineContext, IVec2, Vec2, RED,
WHITE
2024-07-06 19:32:17 +02:00
};
2024-07-06 13:33:58 +02:00
2024-07-06 17:19:44 +02:00
use crate::game::ZLayer;
2024-07-06 13:57:47 +02:00
pub mod worldgen;
2024-07-06 17:27:29 +02:00
pub fn draw(state: &crate::State, _engine: &comfy::EngineContext<'_>) {
2024-07-06 17:19:44 +02:00
for (coords, tile) in state.overworld.iter_tiles() {
2024-07-06 18:45:54 +02:00
for (i, texture) in tile.textures().iter().rev().enumerate() {
2024-07-06 17:19:44 +02:00
let i = i as i32;
draw_sprite(
*texture,
coords.as_vec2(),
2024-07-06 19:32:17 +02:00
WHITE,
2024-07-06 17:19:44 +02:00
ZLayer::MapMax - i,
Vec2::ONE
2024-07-06 19:32:17 +02:00
);
draw_rect_outline(coords.as_vec2(), Vec2::ONE, 0.1, RED, 10);
2024-07-06 17:19:44 +02:00
}
}
2024-07-06 13:33:58 +02:00
}
2024-07-06 19:32:17 +02:00
pub fn update(state: &mut crate::State, _engine: &mut EngineContext<'_>) {
let mut camera = main_camera_mut();
camera.center = Vec2::ZERO;
camera.zoom = 30.0;
state.overworld.get_or_generate_tile(IVec2::ZERO);
}