Cleaned up project with better structure.

This commit is contained in:
2026-05-09 11:29:48 +02:00
parent 1ad3454f6a
commit 6708aa277f
95 changed files with 711 additions and 700 deletions
+45
View File
@@ -0,0 +1,45 @@
using Godot;
using static GameData;
public partial class Camera3d : Camera3D
{
[Export] public float Speed = 7.5f;
[Export] public float MouseSensitivity = 0.2f;
[Export] public float ScrollStrength = 5.0f;
public override void _Ready()
{
Position = new Vector3(0, 0, tileWidth / 2);
}
public override void _Process(double delta)
{
if (canMove) MoveCamera(delta);
}
public void MoveCamera(double delta)
{
float d = (float)delta;
Vector3 rotation = RotationDegrees;
rotation.X = Mathf.Clamp(rotation.X, -90f, 90f);
RotationDegrees = rotation;
Vector3 direction = Vector3.Zero;
if (Input.IsActionPressed("move_forward") && Position.Z > 0) direction += Transform.Basis.Z;
if (Input.IsActionPressed("move_backward") && Position.Z < layerSize * 6) direction -= Transform.Basis.Z;
if (Input.IsActionPressed("move_left") && Position.X > 0) direction -= Transform.Basis.X;
if (Input.IsActionPressed("move_right") && Position.X < layerSize * 6) direction += Transform.Basis.X;
if (direction != Vector3.Zero)
{
direction = direction.Normalized() * Speed * (Input.IsActionPressed("sprint") ? 2.5f : 1) * d;
Translate(direction);
}
if (Position.Y != 10 - visibleLayer * 4)
{
Position = new Vector3(Position.X, 10 - visibleLayer * 4, Position.Z);
}
}
}