Hey I wanted to shoot projectiles at a certain speed however it doesn't work, I can shoot the projectile but it doesn't move, (like it just spawns the sprite lol) can someone hel me, any help would be appreciated
#[derive(Component, Resource)]
pub struct VelocityLaser {
pub x: f32,
pub y: f32,
}
#[derive(Component, Default)]
struct PositionPlayer(Vec3);
fn main() {
App::new()
.insert_resource(LaserPos {
x: 0.0,
y: 0.0,
})
.insert_resource(VelocityLaser {
x: 10.0,
y: 10.0,
})
}
pub fn find_player_position(
mut query: Query<(&Transform, &Player)>,
mut query2: Query<(&Transform, &Laser)>,
mut cam_transform: Query<&mut Transform, (With<Camera>, Without<Player>, Without<Laser>)>,
mut player_pos: ResMut<PlayerPos>,
mut laser_pos: ResMut<LaserPos>,
mut velocity_laser: ResMut <VelocityLaser>,
)
{
player_pos.x = 0.0;
player_pos.y = 0.0;
for (transform, _player) in &mut query {
player_pos.x = transform.translation.x;
player_pos.y = transform.translation.y;
// laser_pos.x = transform.translation.x;
// laser_pos.y = transform.translation.y;
}
for (transform, _laser) in &mut query2 {
for i in 0..100 {
laser_pos.x = transform.translation.x + velocity_laser.x;
laser_pos.y = transform.translation.y + velocity_laser.y;
}
println!("LASER POS: {}, {}", laser_pos.x, laser_pos.y);
println!("LASER VEL: {}, {}", velocity_laser.x, velocity_laser.y);
}