lil white player square
This commit is contained in:
35
src/main.rs
35
src/main.rs
@@ -1,7 +1,10 @@
|
||||
mod ldtk;
|
||||
mod player;
|
||||
|
||||
use bevy::{image::Image, prelude::*};
|
||||
|
||||
use crate::player::Player;
|
||||
|
||||
#[derive(Debug, Clone, Copy, Default, PartialEq, Eq, Hash, States)]
|
||||
enum AppState {
|
||||
#[default]
|
||||
@@ -98,6 +101,7 @@ fn levelload(
|
||||
lvl: Res<LevelData>,
|
||||
tmap_stuff: Res<TilemapStuff>,
|
||||
mut ta_layouts: ResMut<Assets<TextureAtlasLayout>>,
|
||||
mut next_state: ResMut<NextState<AppState>>,
|
||||
) {
|
||||
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);
|
||||
@@ -123,6 +127,35 @@ fn levelload(
|
||||
});
|
||||
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