use meters in config

This commit is contained in:
2026-06-05 19:54:39 +02:00
parent 4e3e3ac715
commit 7669245229
37 changed files with 265 additions and 231 deletions

View File

@@ -4,18 +4,18 @@
struct DynamicBodyComponent
{
// --- dynamics parameters (formerly ShipDynamics) ---
float maxSpeedPerTick;
float mainAccelerationPerTick;
float maneuveringAccelerationPerTick;
float angularAccelerationPerTick;
float maxRotationSpeedPerTick;
// --- dynamics parameters ---
float maxSpeed_tpt; // tiles/tick
float mainAcceleration_tptt; // tiles/tick²
float maneuveringAcceleration_tptt; // tiles/tick²
float maxAngularAcceleration_rptt; // rad/tick²
float maxRotationSpeed_rpt; // rad/tick
// --- integrated state ---
QVector2D velocity;
float angularVelocity;
QVector2D velocity_tpt; // tiles/tick
float angularVelocity_rpt; // rad/tick
// --- written each tick by MovementIntentSystem, consumed by DynamicBodySystem ---
QVector2D linearAcceleration;
float angularAcceleration;
QVector2D linearAcceleration_tptt; // tiles/tick²
float angularAcceleration_rptt; // rad/tick²
};

View File

@@ -7,5 +7,5 @@
struct RepairBehaviorComponent
{
std::optional<entt::entity> currentTarget;
float maxRepairRange = 0.0f;
float maxRepairRange_tiles = 0.0f;
};

View File

@@ -7,6 +7,6 @@
struct RepairToolComponent
{
float ratePerTick;
float range;
float range_tiles;
std::optional<entt::entity> currentTarget;
};

View File

@@ -10,5 +10,5 @@ struct SalvageBehaviorComponent
{
std::optional<QVector2D> scrapTarget;
BuildingId deliveryBay; // kInvalidBuildingId until assigned at a salvage bay
float maxCollectionRange = 0.0f;
float maxCollectionRange_tiles = 0.0f;
};

View File

@@ -4,7 +4,7 @@ struct SalvageCargoComponent
{
int capacity;
int current;
float collectionRange;
float collectionRange_tiles;
int collectionIntervalTicks;
int cooldownTicksRemaining;
};

View File

@@ -2,5 +2,5 @@
struct SensorRangeComponent
{
float value;
float value_tiles;
};

View File

@@ -7,7 +7,7 @@
struct WeaponComponent
{
float damage;
float range;
float range_tiles;
float fireRateHz;
float cooldownTicks;
std::optional<entt::entity> currentTarget;