lil white player square
This commit is contained in:
35
src/main.rs
35
src/main.rs
@@ -1,7 +1,10 @@
|
|||||||
mod ldtk;
|
mod ldtk;
|
||||||
|
mod player;
|
||||||
|
|
||||||
use bevy::{image::Image, prelude::*};
|
use bevy::{image::Image, prelude::*};
|
||||||
|
|
||||||
|
use crate::player::Player;
|
||||||
|
|
||||||
#[derive(Debug, Clone, Copy, Default, PartialEq, Eq, Hash, States)]
|
#[derive(Debug, Clone, Copy, Default, PartialEq, Eq, Hash, States)]
|
||||||
enum AppState {
|
enum AppState {
|
||||||
#[default]
|
#[default]
|
||||||
@@ -98,6 +101,7 @@ fn levelload(
|
|||||||
lvl: Res<LevelData>,
|
lvl: Res<LevelData>,
|
||||||
tmap_stuff: Res<TilemapStuff>,
|
tmap_stuff: Res<TilemapStuff>,
|
||||||
mut ta_layouts: ResMut<Assets<TextureAtlasLayout>>,
|
mut ta_layouts: ResMut<Assets<TextureAtlasLayout>>,
|
||||||
|
mut next_state: ResMut<NextState<AppState>>,
|
||||||
) {
|
) {
|
||||||
let tmap_sprite = tmap_stuff.img_handle.as_ref().unwrap();
|
let tmap_sprite = tmap_stuff.img_handle.as_ref().unwrap();
|
||||||
let ta_layout = TextureAtlasLayout::from_grid(uvec2(16, 16), 12, 8, Some(uvec2(1, 1)), None);
|
let ta_layout = TextureAtlasLayout::from_grid(uvec2(16, 16), 12, 8, Some(uvec2(1, 1)), None);
|
||||||
@@ -123,6 +127,35 @@ fn levelload(
|
|||||||
});
|
});
|
||||||
lyr_dep -= 0.1;
|
lyr_dep -= 0.1;
|
||||||
});
|
});
|
||||||
|
|
||||||
|
println!("{lyr_dep}");
|
||||||
|
|
||||||
|
commands.spawn((
|
||||||
|
Sprite::from_color(Color::WHITE, vec2(16., 16.)),
|
||||||
|
Player::default(),
|
||||||
|
Transform::from_xyz(128., 0., 20.),
|
||||||
|
));
|
||||||
|
|
||||||
|
next_state.set(AppState::Main);
|
||||||
}
|
}
|
||||||
|
|
||||||
fn gameloop() {}
|
fn gameloop(keyb: Res<ButtonInput<KeyCode>>, mut player: Single<(&mut Player, &mut Transform)>) {
|
||||||
|
let mut dir = IVec2::ZERO;
|
||||||
|
|
||||||
|
if keyb.pressed(KeyCode::KeyA) {
|
||||||
|
dir.x = -1;
|
||||||
|
} else if keyb.pressed(KeyCode::KeyD) {
|
||||||
|
dir.x = 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
if keyb.pressed(KeyCode::KeyW) {
|
||||||
|
dir.y = 1;
|
||||||
|
} else if keyb.pressed(KeyCode::KeyS) {
|
||||||
|
dir.y = -1;
|
||||||
|
}
|
||||||
|
|
||||||
|
let p_pos = player.0.pos + dir;
|
||||||
|
player.0.pos = p_pos;
|
||||||
|
|
||||||
|
*player.1 = Transform::from_xyz(p_pos.x as f32, p_pos.y as f32, 100.);
|
||||||
|
}
|
||||||
|
|||||||
6
src/player.rs
Normal file
6
src/player.rs
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
use bevy::{ecs::component::Component, math::IVec2};
|
||||||
|
|
||||||
|
#[derive(Default, Debug, Component)]
|
||||||
|
pub struct Player {
|
||||||
|
pub pos: IVec2,
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user