This commit is contained in:
Arkitu 2025-05-25 08:41:05 +02:00
parent 4a401182fb
commit 2552d0dcdd
4 changed files with 11 additions and 10 deletions

View File

@ -1,4 +1,3 @@
#![feature(duration_constructors)]
use bevy::{
diagnostic::{FrameTimeDiagnosticsPlugin, LogDiagnosticsPlugin},
prelude::*,

View File

@ -20,8 +20,8 @@ impl CellKind {
pub fn regen_full_growth_duration(&self) -> Duration {
match self {
CellKind::Sea | CellKind::Beach | CellKind::Dirt | CellKind::Stone => unreachable!(),
CellKind::Forest => Duration::from_days(365 * 100), // Let's say that a forest takes 100 years to mature
CellKind::Grass => Duration::from_weeks(7), // Let's say that grass takes 7 weeks to reach its max
CellKind::Forest => Duration::from_secs(100 * 365 * 24 * 60 * 60), // Let's say that a forest takes 100 years to mature
CellKind::Grass => Duration::from_secs(7 * 7 * 24 * 60 * 60), // Let's say that grass takes 7 weeks to reach its max
}
}
pub fn can_place_animal(&self, kind: AnimalKind) -> bool {

View File

@ -65,7 +65,7 @@ fn setup(mut world: Commands, asset_server: Res<AssetServer>) {
.observe(|
trigger: Trigger<Pointer<Drag>>,
mut ptrs: Query<&mut PointersDragging>,
mut cam: Query<(&mut Transform, &PerspectiveProjection), With<CameraMarker>>,
mut cam: Query<&mut Transform, With<CameraMarker>>,
| {
if trigger.button == PointerButton::Primary {
let mut ptrs = ptrs.single_mut();
@ -81,12 +81,14 @@ fn setup(mut world: Commands, asset_server: Res<AssetServer>) {
let new_d_to_midpoint = ptrs.0.values().fold(0., |acc, pos| acc + (new_midpoint-pos).norm());
// move camera
cam.0.translation.x -= (new_midpoint.x - old_midpoint.x)*cam.1.fov*0.001;
cam.0.translation.y += (new_midpoint.y - old_midpoint.y)*cam.1.fov*0.001;
cam.translation.x -= (new_midpoint.x - old_midpoint.x)*cam.translation.z*0.001;
cam.translation.y += (new_midpoint.y - old_midpoint.y)*cam.translation.z*0.001;
// if ptrs.0.len() > 1 {
if ptrs.0.len() > 1 {
let forward = cam.forward();
cam.translation += forward * (old_d_to_midpoint/new_d_to_midpoint * 0.1);
// cam.scale *= old_d_to_midpoint/new_d_to_midpoint;
// }
}
}
}
);