From 82b8bbb69907cb8aaa35da868e10d3db7e20233c Mon Sep 17 00:00:00 2001 From: zefad Date: Tue, 15 Sep 2026 23:50:06 +0200 Subject: [PATCH] Follow player camera --- src/camera.rs | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 src/camera.rs diff --git a/src/camera.rs b/src/camera.rs new file mode 100644 index 0000000..fd021ba --- /dev/null +++ b/src/camera.rs @@ -0,0 +1,27 @@ +use bevy::{prelude::*, winit::UpdateMode}; + +use crate::player::Player; + +#[derive(Component)] +struct Camera; + +fn spawn_camera(mut commands: Commands) { + commands.spawn(Camera2d); +} + +// Follow the player with the camera +fn follow_player( + player: Single<&Transform, With>, + mut camera: Single<&mut Transform, With>, +) { + camera.translation = player.translation; +} + +struct CameraPlugin; + +impl Plugin for CameraPlugin { + fn build(&self, app: &mut App) { + app.add_systems(Startup, spawn_camera) + .add_systems(Update, follow_player); + } +}