diff --git a/src/main.rs b/src/main.rs index 8d9bab4..d059038 100644 --- a/src/main.rs +++ b/src/main.rs @@ -114,6 +114,10 @@ fn levelload( let parsnip = assets.load("parsnip.png"); // create map from lvl data + let flowerguy = assets.load("flowerfriend.png"); + let fl_ta_layout = TextureAtlasLayout::from_grid(uvec2(16, 16), 5, 1, None, None); + let fl_ta_handle = ta_layouts.add(fl_ta_layout); + let lvl = &lvl.ldtk_proj.levels[0]; let mut lyr_dep = 50f32; @@ -153,9 +157,18 @@ fn levelload( )); match ei.identifier.as_str() { "Player" => { - spawned_ent.insert(Player {}); - spawned_ent.insert(PhysicsBody2D { pos, ..default() }); - spawned_ent.insert(Sprite::from_color(Color::WHITE, vec2(16., 16.))); + spawned_ent.insert(Player::default()); + spawned_ent.insert(PhysicsBody2D { + pos: pos * UNITS_TO_PX_SCALE, + ..default() + }); + spawned_ent.insert(Sprite::from_atlas_image( + flowerguy.clone(), + TextureAtlas { + layout: fl_ta_handle.clone(), + index: 0, + }, + )); } "Parsnip" => { spawned_ent.insert(Sprite::from_image(parsnip.clone())); @@ -173,7 +186,8 @@ fn levelload( fn gameloop( keyb: Res>, - mut player_sing: Single<(&mut PhysicsBody2D, &mut Transform), With>, + mut player_sing: Single<(&mut PhysicsBody2D, &mut Transform, &mut Player, &mut Sprite)>, + time: Res