map camera: don't jump around when deselecting target

This commit is contained in:
yuni 2024-11-25 22:23:56 +01:00
parent 9de72a0cfc
commit 1e9f6aa057

View file

@ -310,6 +310,13 @@ pub fn update_map_camera(
} else {
(player_entity, player_trans)
};
// Don't jump around when deselecting.
if mapcam.center_on_entity != Some(target_entity) && q_target.is_empty() {
mapcam.offset_x = -player_trans.translation.x as f64;
mapcam.offset_z = -player_trans.translation.z as f64;
}
mapcam.center_on_entity = Some(target_entity);
// Update map grid
@ -375,6 +382,8 @@ pub fn update_map_camera(
mapcam.target_zoom_level *= target_trans.scale.x as f64 * factor;
mapcam.zoom_level *= target_trans.scale.x as f64 * factor;
mapcam.initialized = true;
mapcam.offset_x = 0.0;
mapcam.offset_z = 0.0;
}
let mut change_zoom: f64 = 0.0;
if keyboard_input.pressed(settings.key_map_zoom_out) {