Stash work

This commit is contained in:
Michal Pikulski
2025-12-05 16:24:44 +01:00
parent a5b137c8a1
commit 421c4d5cbd
42 changed files with 7775 additions and 1552 deletions

View File

@@ -31,13 +31,6 @@ namespace Minigames.Airplane.Settings
[Tooltip("Maximum flight time before timeout (seconds)")]
[SerializeField] private float maxFlightTime = 10f;
[Header("Camera Settings")]
[Tooltip("Camera follow smoothness (higher = smoother but more lag)")]
[SerializeField] private float cameraFollowSmoothing = 5f;
[Tooltip("Camera zoom level during flight")]
[SerializeField] private float flightCameraZoom = 5f;
[Header("Timing")]
[Tooltip("Duration of intro sequence (seconds)")]
[SerializeField] private float introDuration = 1f;
@@ -48,6 +41,43 @@ namespace Minigames.Airplane.Settings
[Tooltip("Duration of result evaluation (seconds)")]
[SerializeField] private float evaluationDuration = 1f;
[Header("Spawn System")]
[Tooltip("X position where dynamic spawning begins")]
[SerializeField] private float dynamicSpawnThreshold = 10f;
[Tooltip("Minimum random distance for target spawn")]
[SerializeField] private float targetMinDistance = 30f;
[Tooltip("Maximum random distance for target spawn")]
[SerializeField] private float targetMaxDistance = 50f;
[Tooltip("Minimum time interval between object spawns (seconds)")]
[SerializeField] private float objectSpawnMinInterval = 1f;
[Tooltip("Maximum time interval between object spawns (seconds)")]
[SerializeField] private float objectSpawnMaxInterval = 3f;
[Tooltip("Ratio of positive to negative objects (0 = all negative, 1 = all positive)")]
[Range(0f, 1f)]
[SerializeField] private float positiveNegativeRatio = 0.5f;
[Tooltip("Distance ahead of plane to spawn objects")]
[SerializeField] private float spawnDistanceAhead = 15f;
[Tooltip("Distance interval for ground tile spawning")]
[SerializeField] private float groundSpawnInterval = 5f;
[Header("Ground Snapping")]
[Tooltip("Layer for ground detection (objects will snap to this)")]
[Layer]
[SerializeField] private int groundLayer = 0; // Default layer
[Tooltip("Maximum distance to raycast for ground")]
[SerializeField] private float maxGroundRaycastDistance = 50f;
[Tooltip("Default Y offset for objects if no ground found")]
[SerializeField] private float defaultObjectYOffset = 0f;
[Header("Debug")]
[Tooltip("Show debug logs in console")]
[SerializeField] private bool showDebugLogs;
@@ -57,11 +87,20 @@ namespace Minigames.Airplane.Settings
public SlingshotConfig SlingshotSettings => slingshotSettings;
public float AirplaneMass => airplaneMass;
public float MaxFlightTime => maxFlightTime;
public float CameraFollowSmoothing => cameraFollowSmoothing;
public float FlightCameraZoom => flightCameraZoom;
public float IntroDuration => introDuration;
public float PersonIntroDuration => personIntroDuration;
public float EvaluationDuration => evaluationDuration;
public float DynamicSpawnThreshold => dynamicSpawnThreshold;
public float TargetMinDistance => targetMinDistance;
public float TargetMaxDistance => targetMaxDistance;
public float ObjectSpawnMinInterval => objectSpawnMinInterval;
public float ObjectSpawnMaxInterval => objectSpawnMaxInterval;
public float PositiveNegativeRatio => positiveNegativeRatio;
public float SpawnDistanceAhead => spawnDistanceAhead;
public float GroundSpawnInterval => groundSpawnInterval;
public int GroundLayer => groundLayer;
public float MaxGroundRaycastDistance => maxGroundRaycastDistance;
public float DefaultObjectYOffset => defaultObjectYOffset;
public bool ShowDebugLogs => showDebugLogs;
#endregion