diff --git a/Aetheria.State/README.md b/Aetheria.State/README.md index 16638a71a..f66f8ac22 100644 --- a/Aetheria.State/README.md +++ b/Aetheria.State/README.md @@ -66,7 +66,7 @@ projection is routed through `ItemManager` and the typed runtime catalog reader. Surviving Unity DTOs inherit `RuntimeProjectionEntry`; the old `RuntimeCatalogEntry` base name no longer appears in live source. The dead `InspectableRuntimeCatalogLinkAttribute` inspector metadata is gone; -typed runtime projection still uses `RuntimeCatalogKeyAttribute` only where the +typed runtime projection still uses `RuntimeProjectionKeyAttribute` only where the temporary mapper needs a deterministic field order. `Aetheria.State.Import` captures the legacy catalog files into typed quarantine diff --git a/Assets/Scripts/ServerShared/AetheriaRuntimeItemCatalog.cs b/Assets/Scripts/ServerShared/AetheriaRuntimeItemCatalog.cs index 40685f4f4..ae6d9fb5f 100644 --- a/Assets/Scripts/ServerShared/AetheriaRuntimeItemCatalog.cs +++ b/Assets/Scripts/ServerShared/AetheriaRuntimeItemCatalog.cs @@ -222,7 +222,7 @@ public sealed class AetheriaRuntimeItemCatalog : IRuntimeItemCatalogReader { return type .GetFields(BindingFlags.Instance | BindingFlags.Public | BindingFlags.NonPublic) - .Select(field => (attribute: field.GetCustomAttribute(), field)) + .Select(field => (attribute: field.GetCustomAttribute(), field)) .Where(entry => entry.attribute != null) .Select(entry => (entry.attribute.Key, entry.field)); } diff --git a/Assets/Scripts/ServerShared/Behaviors/AetherDrive.cs b/Assets/Scripts/ServerShared/Behaviors/AetherDrive.cs index 1eae81563..3f3e27fd8 100644 --- a/Assets/Scripts/ServerShared/Behaviors/AetherDrive.cs +++ b/Assets/Scripts/ServerShared/Behaviors/AetherDrive.cs @@ -8,43 +8,43 @@ using static Unity.Mathematics.math; [Inspectable, EntityTypeRestriction(HullType.Ship), RuntimeInspectable] public class AetherDriveData : BehaviorData { - [Inspectable, RuntimeCatalogKey(1)] + [Inspectable, RuntimeProjectionKey(1)] public float3 RotorDiameter; - [Inspectable, RuntimeCatalogKey(2)] + [Inspectable, RuntimeProjectionKey(2)] public float3 RotorMass; - [Inspectable, RuntimeCatalogKey(3), RuntimeInspectable] + [Inspectable, RuntimeProjectionKey(3), RuntimeInspectable] public PerformanceStat MaximumRpm; - [Inspectable, RuntimeCatalogKey(4)] + [Inspectable, RuntimeProjectionKey(4)] public float3 CouplingLambda; - [Inspectable, RuntimeCatalogKey(5)] + [Inspectable, RuntimeProjectionKey(5)] public PerformanceStat LambdaMultiplier; - [Inspectable, RuntimeCatalogKey(6), RuntimeInspectable] + [Inspectable, RuntimeProjectionKey(6), RuntimeInspectable] public PerformanceStat CouplingEfficiency; - [Inspectable, RuntimeCatalogKey(7), RuntimeInspectable] + [Inspectable, RuntimeProjectionKey(7), RuntimeInspectable] public PerformanceStat Torque; - [Inspectable, RuntimeCatalogKey(8), RuntimeInspectable] + [Inspectable, RuntimeProjectionKey(8), RuntimeInspectable] public BezierCurve TorqueProfile; - [Inspectable, RuntimeCatalogKey(9), RuntimeInspectable] + [Inspectable, RuntimeProjectionKey(9), RuntimeInspectable] public PerformanceStat EnergyDraw; - [Inspectable, RuntimeCatalogKey(10), RuntimeInspectable] + [Inspectable, RuntimeProjectionKey(10), RuntimeInspectable] public PerformanceStat PassiveCoupling; - [InspectableAudioParameter, RuntimeCatalogKey(11), RuntimeInspectable] + [InspectableAudioParameter, RuntimeProjectionKey(11), RuntimeInspectable] public uint RpmAudioParameter; - [InspectableAudioParameter, RuntimeCatalogKey(12), RuntimeInspectable] + [InspectableAudioParameter, RuntimeProjectionKey(12), RuntimeInspectable] public uint TorqueRatioAudioParameter; - [InspectablePrefab, RuntimeCatalogKey(13)] + [InspectablePrefab, RuntimeProjectionKey(13)] public string Particles; public override Behavior CreateInstance(EquippedItem item) diff --git a/Assets/Scripts/ServerShared/Behaviors/Behaviors.cs b/Assets/Scripts/ServerShared/Behaviors/Behaviors.cs index cac92d896..74ba6f7b6 100644 --- a/Assets/Scripts/ServerShared/Behaviors/Behaviors.cs +++ b/Assets/Scripts/ServerShared/Behaviors/Behaviors.cs @@ -146,7 +146,7 @@ public abstract class PersistentBehaviorData [Inspectable] public abstract class BehaviorData { - [Inspectable, RuntimeCatalogKey(0)] + [Inspectable, RuntimeProjectionKey(0)] public int Group; public abstract Behavior CreateInstance(EquippedItem item); diff --git a/Assets/Scripts/ServerShared/Behaviors/Capacitor.cs b/Assets/Scripts/ServerShared/Behaviors/Capacitor.cs index 080cc8daa..4d8c62fd2 100644 --- a/Assets/Scripts/ServerShared/Behaviors/Capacitor.cs +++ b/Assets/Scripts/ServerShared/Behaviors/Capacitor.cs @@ -9,10 +9,10 @@ using static Unity.Mathematics.math; [Inspectable, RuntimeInspectable] public class CapacitorData : BehaviorData { - [Inspectable, RuntimeCatalogKey(1), RuntimeInspectable] + [Inspectable, RuntimeProjectionKey(1), RuntimeInspectable] public PerformanceStat Capacity = new PerformanceStat(); - [Inspectable, RuntimeCatalogKey(2), RuntimeInspectable] + [Inspectable, RuntimeProjectionKey(2), RuntimeInspectable] public PerformanceStat Efficiency = new PerformanceStat(); public override Behavior CreateInstance(EquippedItem item) diff --git a/Assets/Scripts/ServerShared/Behaviors/ChargedWeapon.cs b/Assets/Scripts/ServerShared/Behaviors/ChargedWeapon.cs index b065a8f14..5dfdfd65f 100644 --- a/Assets/Scripts/ServerShared/Behaviors/ChargedWeapon.cs +++ b/Assets/Scripts/ServerShared/Behaviors/ChargedWeapon.cs @@ -7,40 +7,40 @@ using static Unity.Mathematics.math; [Inspectable, RuntimeInspectable] public class ChargedWeaponData : InstantWeaponData { - [Inspectable, RuntimeCatalogKey(21), RuntimeInspectable] + [Inspectable, RuntimeProjectionKey(21), RuntimeInspectable] public PerformanceStat ChargeTime = new PerformanceStat(); - [Inspectable, RuntimeCatalogKey(22), RuntimeInspectable] + [Inspectable, RuntimeProjectionKey(22), RuntimeInspectable] public PerformanceStat ChargeEnergy = new PerformanceStat(); - [Inspectable, RuntimeCatalogKey(23), RuntimeInspectable] + [Inspectable, RuntimeProjectionKey(23), RuntimeInspectable] public PerformanceStat ChargeHeat = new PerformanceStat(); - [Inspectable, RuntimeCatalogKey(24)] + [Inspectable, RuntimeProjectionKey(24)] public bool CanFireEarly; - [Inspectable, RuntimeCatalogKey(25)] + [Inspectable, RuntimeProjectionKey(25)] public float FailureCharge; - [Inspectable, RuntimeCatalogKey(26)] + [Inspectable, RuntimeProjectionKey(26)] public float FailureDamage = 1; - [Inspectable, RuntimeCatalogKey(27)] + [Inspectable, RuntimeProjectionKey(27)] public float ChargeFiringDamageMultiplier = 1; - [Inspectable, RuntimeCatalogKey(28)] + [Inspectable, RuntimeProjectionKey(28)] public float ChargeFiringSpreadMultiplier = 1; - [Inspectable, RuntimeCatalogKey(29)] + [Inspectable, RuntimeProjectionKey(29)] public float ChargeFiringBurstCountMultiplier = 1; - [Inspectable, RuntimeCatalogKey(30)] + [Inspectable, RuntimeProjectionKey(30)] public float ChargeFiringVisibilityMultiplier = 1; - [Inspectable, RuntimeCatalogKey(31)] + [Inspectable, RuntimeProjectionKey(31)] public float ChargeFiringVelocityMultiplier = 1; - [Inspectable, RuntimeCatalogKey(32)] + [Inspectable, RuntimeProjectionKey(32)] public float ChargeFiringHeatMultiplier = 1; public override Behavior CreateInstance(EquippedItem item) diff --git a/Assets/Scripts/ServerShared/Behaviors/ConstantWeapon.cs b/Assets/Scripts/ServerShared/Behaviors/ConstantWeapon.cs index c0a1e20a4..342f6673a 100644 --- a/Assets/Scripts/ServerShared/Behaviors/ConstantWeapon.cs +++ b/Assets/Scripts/ServerShared/Behaviors/ConstantWeapon.cs @@ -9,7 +9,7 @@ using static Unity.Mathematics.math; [Inspectable] public class ConstantWeaponData : WeaponData { - [InspectablePrefab, RuntimeCatalogKey(17)] + [InspectablePrefab, RuntimeProjectionKey(17)] public float AmmoInterval = 1; public override Behavior CreateInstance(EquippedItem item) diff --git a/Assets/Scripts/ServerShared/Behaviors/Cooldown.cs b/Assets/Scripts/ServerShared/Behaviors/Cooldown.cs index f1db8eb26..ca1074ed2 100644 --- a/Assets/Scripts/ServerShared/Behaviors/Cooldown.cs +++ b/Assets/Scripts/ServerShared/Behaviors/Cooldown.cs @@ -10,7 +10,7 @@ using static Unity.Mathematics.math; [Inspectable, Order(-10), RuntimeInspectable] public class CooldownData : BehaviorData { - [Inspectable, RuntimeCatalogKey(1), RuntimeInspectable] + [Inspectable, RuntimeProjectionKey(1), RuntimeInspectable] public PerformanceStat Cooldown = new PerformanceStat(); public override Behavior CreateInstance(EquippedItem item) diff --git a/Assets/Scripts/ServerShared/Behaviors/EnergyDraw.cs b/Assets/Scripts/ServerShared/Behaviors/EnergyDraw.cs index 6f1656949..b49d2fac2 100644 --- a/Assets/Scripts/ServerShared/Behaviors/EnergyDraw.cs +++ b/Assets/Scripts/ServerShared/Behaviors/EnergyDraw.cs @@ -7,10 +7,10 @@ using System.Linq; [Inspectable, Order(-20), RuntimeInspectable] public class EnergyDrawData : BehaviorData { - [Inspectable, RuntimeCatalogKey(1), RuntimeInspectable] + [Inspectable, RuntimeProjectionKey(1), RuntimeInspectable] public PerformanceStat EnergyDraw = new PerformanceStat(); - [Inspectable, RuntimeCatalogKey(2)] + [Inspectable, RuntimeProjectionKey(2)] public bool PerSecond; public override Behavior CreateInstance(EquippedItem item) diff --git a/Assets/Scripts/ServerShared/Behaviors/Heat.cs b/Assets/Scripts/ServerShared/Behaviors/Heat.cs index 7bf3ae887..6c96927ad 100644 --- a/Assets/Scripts/ServerShared/Behaviors/Heat.cs +++ b/Assets/Scripts/ServerShared/Behaviors/Heat.cs @@ -7,10 +7,10 @@ using System.Linq; [Inspectable, Order(10)] public class HeatData : BehaviorData { - [Inspectable, RuntimeCatalogKey(1), RuntimeInspectable] + [Inspectable, RuntimeProjectionKey(1), RuntimeInspectable] public PerformanceStat Heat = new PerformanceStat(); - [Inspectable, RuntimeCatalogKey(2)] + [Inspectable, RuntimeProjectionKey(2)] public bool PerSecond; public override Behavior CreateInstance(EquippedItem item) diff --git a/Assets/Scripts/ServerShared/Behaviors/InstantWeapon.cs b/Assets/Scripts/ServerShared/Behaviors/InstantWeapon.cs index d6fce87e7..4d6806015 100644 --- a/Assets/Scripts/ServerShared/Behaviors/InstantWeapon.cs +++ b/Assets/Scripts/ServerShared/Behaviors/InstantWeapon.cs @@ -7,16 +7,16 @@ using static Unity.Mathematics.math; [Inspectable, RuntimeInspectable] public class InstantWeaponData : WeaponData { - [Inspectable, RuntimeCatalogKey(17)] + [Inspectable, RuntimeProjectionKey(17)] public PerformanceStat Count = new PerformanceStat(); - [Inspectable, RuntimeCatalogKey(18)] + [Inspectable, RuntimeProjectionKey(18)] public PerformanceStat BurstTime = new PerformanceStat(); - [Inspectable, RuntimeCatalogKey(19), RuntimeInspectable] + [Inspectable, RuntimeProjectionKey(19), RuntimeInspectable] public PerformanceStat Cooldown = new PerformanceStat(); - [InspectablePrefab, RuntimeCatalogKey(20)] + [InspectablePrefab, RuntimeProjectionKey(20)] public bool SingleAmmoBurst; public override Behavior CreateInstance(EquippedItem item) diff --git a/Assets/Scripts/ServerShared/Behaviors/ItemUsage.cs b/Assets/Scripts/ServerShared/Behaviors/ItemUsage.cs index 70424026d..deb49b229 100644 --- a/Assets/Scripts/ServerShared/Behaviors/ItemUsage.cs +++ b/Assets/Scripts/ServerShared/Behaviors/ItemUsage.cs @@ -7,7 +7,7 @@ using System.Linq; [Inspectable, Order(-5), RuntimeInspectable] public class ItemUsageData : BehaviorData { - [RuntimeCatalogKey(1), RuntimeInspectable] + [RuntimeProjectionKey(1), RuntimeInspectable] public Guid Item; public override Behavior CreateInstance(EquippedItem item) diff --git a/Assets/Scripts/ServerShared/Behaviors/Launcher.cs b/Assets/Scripts/ServerShared/Behaviors/Launcher.cs index 30c1ca0e0..29e3764c3 100644 --- a/Assets/Scripts/ServerShared/Behaviors/Launcher.cs +++ b/Assets/Scripts/ServerShared/Behaviors/Launcher.cs @@ -7,22 +7,22 @@ using Unity.Mathematics; [Inspectable] public class LauncherData : LockWeaponData { - [InspectableAnimationCurve, RuntimeCatalogKey(26)] + [InspectableAnimationCurve, RuntimeProjectionKey(26)] public float4[] GuidanceCurve; - [InspectableAnimationCurve, RuntimeCatalogKey(27)] + [InspectableAnimationCurve, RuntimeProjectionKey(27)] public float4[] ThrustCurve; - [InspectableAnimationCurve, RuntimeCatalogKey(28)] + [InspectableAnimationCurve, RuntimeProjectionKey(28)] public float4[] LiftCurve; - [Inspectable, RuntimeCatalogKey(29)] + [Inspectable, RuntimeProjectionKey(29)] public PerformanceStat Thrust = new PerformanceStat(); - [Inspectable, RuntimeCatalogKey(30)] + [Inspectable, RuntimeProjectionKey(30)] public float DodgeFrequency; - [Inspectable, RuntimeCatalogKey(31), RuntimeInspectable] + [Inspectable, RuntimeProjectionKey(31), RuntimeInspectable] public PerformanceStat MissileVelocity = new PerformanceStat(); public override Behavior CreateInstance(EquippedItem item) @@ -34,22 +34,22 @@ public class LauncherData : LockWeaponData [Inspectable] public class GuidedWeaponData : InstantWeaponData { - [InspectableAnimationCurve, RuntimeCatalogKey(21)] + [InspectableAnimationCurve, RuntimeProjectionKey(21)] public float4[] GuidanceCurve; - [InspectableAnimationCurve, RuntimeCatalogKey(22)] + [InspectableAnimationCurve, RuntimeProjectionKey(22)] public float4[] ThrustCurve; - [InspectableAnimationCurve, RuntimeCatalogKey(23)] + [InspectableAnimationCurve, RuntimeProjectionKey(23)] public float4[] LiftCurve; - [Inspectable, RuntimeCatalogKey(24)] + [Inspectable, RuntimeProjectionKey(24)] public PerformanceStat Thrust = new PerformanceStat(); - [Inspectable, RuntimeCatalogKey(25)] + [Inspectable, RuntimeProjectionKey(25)] public float DodgeFrequency; - [Inspectable, RuntimeCatalogKey(26), RuntimeInspectable] + [Inspectable, RuntimeProjectionKey(26), RuntimeInspectable] public PerformanceStat MissileVelocity = new PerformanceStat(); public override Behavior CreateInstance(EquippedItem item) diff --git a/Assets/Scripts/ServerShared/Behaviors/LockWeapon.cs b/Assets/Scripts/ServerShared/Behaviors/LockWeapon.cs index 919292002..253947a51 100644 --- a/Assets/Scripts/ServerShared/Behaviors/LockWeapon.cs +++ b/Assets/Scripts/ServerShared/Behaviors/LockWeapon.cs @@ -7,19 +7,19 @@ using static Unity.Mathematics.math; [Inspectable, RuntimeInspectable] public class LockWeaponData : InstantWeaponData { - [Inspectable, RuntimeCatalogKey(21), RuntimeInspectable] + [Inspectable, RuntimeProjectionKey(21), RuntimeInspectable] public PerformanceStat LockSpeed = new PerformanceStat(); - [Inspectable, RuntimeCatalogKey(22)] + [Inspectable, RuntimeProjectionKey(22)] public PerformanceStat SensorImpact = new PerformanceStat(); - [Inspectable, RuntimeCatalogKey(23), RuntimeInspectable] + [Inspectable, RuntimeProjectionKey(23), RuntimeInspectable] public PerformanceStat LockAngle = new PerformanceStat(); - [Inspectable, RuntimeCatalogKey(24)] + [Inspectable, RuntimeProjectionKey(24)] public PerformanceStat DirectionImpact = new PerformanceStat(); - [Inspectable, RuntimeCatalogKey(25)] + [Inspectable, RuntimeProjectionKey(25)] public PerformanceStat Decay = new PerformanceStat(); public override Behavior CreateInstance(EquippedItem item) diff --git a/Assets/Scripts/ServerShared/Behaviors/MiningTool.cs b/Assets/Scripts/ServerShared/Behaviors/MiningTool.cs index 8dde9db84..b46b50bb4 100644 --- a/Assets/Scripts/ServerShared/Behaviors/MiningTool.cs +++ b/Assets/Scripts/ServerShared/Behaviors/MiningTool.cs @@ -10,16 +10,16 @@ using static Unity.Mathematics.math; [Inspectable, Order(10)] public class MiningToolData : BehaviorData { - [Inspectable, RuntimeCatalogKey(1)] + [Inspectable, RuntimeProjectionKey(1)] public PerformanceStat DamagePerSecond = new PerformanceStat(); - [Inspectable, RuntimeCatalogKey(2)] + [Inspectable, RuntimeProjectionKey(2)] public PerformanceStat Efficiency = new PerformanceStat(); - [Inspectable, RuntimeCatalogKey(3)] + [Inspectable, RuntimeProjectionKey(3)] public PerformanceStat Penetration = new PerformanceStat(); - [Inspectable, RuntimeCatalogKey(4)] + [Inspectable, RuntimeProjectionKey(4)] public PerformanceStat Range = new PerformanceStat(); public override Behavior CreateInstance(EquippedItem item) diff --git a/Assets/Scripts/ServerShared/Behaviors/Radiator.cs b/Assets/Scripts/ServerShared/Behaviors/Radiator.cs index 5224986e8..a42501688 100644 --- a/Assets/Scripts/ServerShared/Behaviors/Radiator.cs +++ b/Assets/Scripts/ServerShared/Behaviors/Radiator.cs @@ -8,22 +8,22 @@ using static Unity.Mathematics.math; [Inspectable, RuntimeInspectable] public class RadiatorData : BehaviorData { - [Inspectable, RuntimeCatalogKey(1), RuntimeInspectable] + [Inspectable, RuntimeProjectionKey(1), RuntimeInspectable] public PerformanceStat Emissivity = new PerformanceStat(); - [Inspectable, RuntimeCatalogKey(2), RuntimeInspectable] + [Inspectable, RuntimeProjectionKey(2), RuntimeInspectable] public PerformanceStat PumpedHeat = new PerformanceStat(); - [InspectableTemperature, RuntimeCatalogKey(3), RuntimeInspectable] + [InspectableTemperature, RuntimeProjectionKey(3), RuntimeInspectable] public float TemperatureFloor; - [Inspectable, RuntimeCatalogKey(4), RuntimeInspectable] + [Inspectable, RuntimeProjectionKey(4), RuntimeInspectable] public PerformanceStat WasteHeat = new PerformanceStat(); - [Inspectable, RuntimeCatalogKey(5), RuntimeInspectable] + [Inspectable, RuntimeProjectionKey(5), RuntimeInspectable] public PerformanceStat EnergyUsage = new PerformanceStat(); - [Inspectable, RuntimeCatalogKey(6), RuntimeInspectable] + [Inspectable, RuntimeProjectionKey(6), RuntimeInspectable] public PerformanceStat ThermalMass = new PerformanceStat(); public override Behavior CreateInstance(EquippedItem item) diff --git a/Assets/Scripts/ServerShared/Behaviors/Reactor.cs b/Assets/Scripts/ServerShared/Behaviors/Reactor.cs index a24ac2b52..53b835a1c 100644 --- a/Assets/Scripts/ServerShared/Behaviors/Reactor.cs +++ b/Assets/Scripts/ServerShared/Behaviors/Reactor.cs @@ -12,16 +12,16 @@ using static Unity.Mathematics.math; [Inspectable, RuntimeInspectable] public class ReactorData : BehaviorData { - [Inspectable, RuntimeCatalogKey(1), RuntimeInspectable] + [Inspectable, RuntimeProjectionKey(1), RuntimeInspectable] public PerformanceStat Charge = new PerformanceStat(); - [Inspectable, RuntimeCatalogKey(2), RuntimeInspectable] + [Inspectable, RuntimeProjectionKey(2), RuntimeInspectable] public PerformanceStat Efficiency = new PerformanceStat(); - [Inspectable, RuntimeCatalogKey(3), RuntimeInspectable] + [Inspectable, RuntimeProjectionKey(3), RuntimeInspectable] public PerformanceStat OverloadEfficiency = new PerformanceStat(); - [Inspectable, RuntimeCatalogKey(4), RuntimeInspectable] + [Inspectable, RuntimeProjectionKey(4), RuntimeInspectable] public PerformanceStat ThrottlingFactor = new PerformanceStat(); public override Behavior CreateInstance(EquippedItem item) diff --git a/Assets/Scripts/ServerShared/Behaviors/Reflector.cs b/Assets/Scripts/ServerShared/Behaviors/Reflector.cs index cfac502b8..ed6edc955 100644 --- a/Assets/Scripts/ServerShared/Behaviors/Reflector.cs +++ b/Assets/Scripts/ServerShared/Behaviors/Reflector.cs @@ -8,10 +8,10 @@ using static Unity.Mathematics.math; [Inspectable, RuntimeInspectable] public class ReflectorData : BehaviorData { - [Inspectable, RuntimeCatalogKey(1), RuntimeInspectable] + [Inspectable, RuntimeProjectionKey(1), RuntimeInspectable] public PerformanceStat CrossSection = new PerformanceStat(); - // [InspectableAnimationCurve, RuntimeCatalogKey(1)] + // [InspectableAnimationCurve, RuntimeProjectionKey(1)] // public float4[] VisibilityCurve; public override Behavior CreateInstance(EquippedItem item) diff --git a/Assets/Scripts/ServerShared/Behaviors/ResourceScanner.cs b/Assets/Scripts/ServerShared/Behaviors/ResourceScanner.cs index b328277b5..7dd12385c 100644 --- a/Assets/Scripts/ServerShared/Behaviors/ResourceScanner.cs +++ b/Assets/Scripts/ServerShared/Behaviors/ResourceScanner.cs @@ -10,13 +10,13 @@ using static Unity.Mathematics.math; [Inspectable, RuntimeInspectable] public class ResourceScannerData : BehaviorData { - [Inspectable, RuntimeCatalogKey(1), RuntimeInspectable] + [Inspectable, RuntimeProjectionKey(1), RuntimeInspectable] public PerformanceStat Range = new PerformanceStat(); - [Inspectable, RuntimeCatalogKey(2), RuntimeInspectable] + [Inspectable, RuntimeProjectionKey(2), RuntimeInspectable] public PerformanceStat MinimumDensity = new PerformanceStat(); - [Inspectable, RuntimeCatalogKey(3), RuntimeInspectable] + [Inspectable, RuntimeProjectionKey(3), RuntimeInspectable] public PerformanceStat ScanDuration = new PerformanceStat(); public override Behavior CreateInstance(EquippedItem item) diff --git a/Assets/Scripts/ServerShared/Behaviors/Sensor.cs b/Assets/Scripts/ServerShared/Behaviors/Sensor.cs index 35b36a5a3..9ebd7ecc5 100644 --- a/Assets/Scripts/ServerShared/Behaviors/Sensor.cs +++ b/Assets/Scripts/ServerShared/Behaviors/Sensor.cs @@ -10,31 +10,31 @@ using static Unity.Mathematics.math; [Inspectable, RuntimeInspectable] public class SensorData : BehaviorData { - [Inspectable, RuntimeCatalogKey(3), RuntimeInspectable] + [Inspectable, RuntimeProjectionKey(3), RuntimeInspectable] public PerformanceStat Sensitivity = new PerformanceStat(); - [InspectableAnimationCurve, RuntimeCatalogKey(4), RuntimeInspectable] + [InspectableAnimationCurve, RuntimeProjectionKey(4), RuntimeInspectable] public BezierCurve SensitivityCurve; - [Inspectable, RuntimeCatalogKey(5), RuntimeInspectable] + [Inspectable, RuntimeProjectionKey(5), RuntimeInspectable] public PerformanceStat PingBoost; - [Inspectable, RuntimeCatalogKey(6), RuntimeInspectable] + [Inspectable, RuntimeProjectionKey(6), RuntimeInspectable] public PerformanceStat PingEnergy; - [Inspectable, RuntimeCatalogKey(7), RuntimeInspectable] + [Inspectable, RuntimeProjectionKey(7), RuntimeInspectable] public PerformanceStat PingVisibility; - [Inspectable, RuntimeCatalogKey(8), RuntimeInspectable] + [Inspectable, RuntimeProjectionKey(8), RuntimeInspectable] public PerformanceStat PingRange; - [Inspectable, RuntimeCatalogKey(9), RuntimeInspectable] + [Inspectable, RuntimeProjectionKey(9), RuntimeInspectable] public PerformanceStat PingCooldown; - [Inspectable, RuntimeCatalogKey(10)] + [Inspectable, RuntimeProjectionKey(10)] public float PingDuration = 2; - [Inspectable, RuntimeCatalogKey(11)] + [Inspectable, RuntimeProjectionKey(11)] public float PingRadiusExponent = .5f; public override Behavior CreateInstance(EquippedItem item) diff --git a/Assets/Scripts/ServerShared/Behaviors/Shield.cs b/Assets/Scripts/ServerShared/Behaviors/Shield.cs index 58e2d654b..d1d497494 100644 --- a/Assets/Scripts/ServerShared/Behaviors/Shield.cs +++ b/Assets/Scripts/ServerShared/Behaviors/Shield.cs @@ -8,10 +8,10 @@ using static Unity.Mathematics.math; [Inspectable, RuntimeInspectable] public class ShieldData : BehaviorData { - [Inspectable, RuntimeCatalogKey(1), RuntimeInspectable] + [Inspectable, RuntimeProjectionKey(1), RuntimeInspectable] public PerformanceStat Efficiency = new PerformanceStat(); - [Inspectable, RuntimeCatalogKey(2), RuntimeInspectable] + [Inspectable, RuntimeProjectionKey(2), RuntimeInspectable] public PerformanceStat EnergyUsage = new PerformanceStat(); public override Behavior CreateInstance(EquippedItem item) diff --git a/Assets/Scripts/ServerShared/Behaviors/StatModifier.cs b/Assets/Scripts/ServerShared/Behaviors/StatModifier.cs index 2559a3cd1..c02525352 100644 --- a/Assets/Scripts/ServerShared/Behaviors/StatModifier.cs +++ b/Assets/Scripts/ServerShared/Behaviors/StatModifier.cs @@ -7,16 +7,16 @@ using System.Linq; [Inspectable] public class StatModifierData : BehaviorData { - [Inspectable, RuntimeCatalogKey(1)] + [Inspectable, RuntimeProjectionKey(1)] public StatReference Stat = new StatReference(); - [Inspectable, RuntimeCatalogKey(2)] + [Inspectable, RuntimeProjectionKey(2)] public PerformanceStat Modifier = new PerformanceStat(); - [Inspectable, RuntimeCatalogKey(3)] + [Inspectable, RuntimeProjectionKey(3)] public StatModifierType Type; - [InspectableType(typeof(BehaviorData)), RuntimeCatalogKey(4)] + [InspectableType(typeof(BehaviorData)), RuntimeProjectionKey(4)] public Type RequireBehavior; public override Behavior CreateInstance(EquippedItem item) @@ -130,9 +130,9 @@ public enum StatModifierType [Inspectable] public class StatReference { - [InspectableType(typeof(BehaviorData)), RuntimeCatalogKey(1)] + [InspectableType(typeof(BehaviorData)), RuntimeProjectionKey(1)] public string Target; - [Inspectable, RuntimeCatalogKey(2)] + [Inspectable, RuntimeProjectionKey(2)] public string Stat; } \ No newline at end of file diff --git a/Assets/Scripts/ServerShared/Behaviors/Thermotoggle.cs b/Assets/Scripts/ServerShared/Behaviors/Thermotoggle.cs index 3ca2a3d61..e2ff2e901 100644 --- a/Assets/Scripts/ServerShared/Behaviors/Thermotoggle.cs +++ b/Assets/Scripts/ServerShared/Behaviors/Thermotoggle.cs @@ -7,13 +7,13 @@ using System.Linq; [Inspectable, Order(-22)] public class ThermotoggleData : BehaviorData { - [InspectableTemperature, RuntimeCatalogKey(1)] + [InspectableTemperature, RuntimeProjectionKey(1)] public float TargetTemperature; - [Inspectable, RuntimeCatalogKey(2)] + [Inspectable, RuntimeProjectionKey(2)] public bool HighPass; - [Inspectable, RuntimeCatalogKey(3)] + [Inspectable, RuntimeProjectionKey(3)] public bool Adjustable; public override Behavior CreateInstance(EquippedItem item) diff --git a/Assets/Scripts/ServerShared/Behaviors/Thruster.cs b/Assets/Scripts/ServerShared/Behaviors/Thruster.cs index f184fa1f1..569ab1875 100644 --- a/Assets/Scripts/ServerShared/Behaviors/Thruster.cs +++ b/Assets/Scripts/ServerShared/Behaviors/Thruster.cs @@ -8,19 +8,19 @@ using static Unity.Mathematics.math; [Inspectable, EntityTypeRestriction(HullType.Ship), RuntimeInspectable] public class ThrusterData : BehaviorData { - [Inspectable, RuntimeCatalogKey(1), RuntimeInspectable] + [Inspectable, RuntimeProjectionKey(1), RuntimeInspectable] public PerformanceStat Thrust = new PerformanceStat(); - [Inspectable, RuntimeCatalogKey(2), RuntimeInspectable] + [Inspectable, RuntimeProjectionKey(2), RuntimeInspectable] public PerformanceStat Visibility = new PerformanceStat(); - [Inspectable, RuntimeCatalogKey(3), RuntimeInspectable] + [Inspectable, RuntimeProjectionKey(3), RuntimeInspectable] public PerformanceStat Heat = new PerformanceStat(); - [Inspectable, RuntimeCatalogKey(4), RuntimeInspectable] + [Inspectable, RuntimeProjectionKey(4), RuntimeInspectable] public PerformanceStat EnergyUsage = new PerformanceStat(); - [InspectablePrefab, RuntimeCatalogKey(5)] + [InspectablePrefab, RuntimeProjectionKey(5)] public string ParticlesPrefab; public override Behavior CreateInstance(EquippedItem item) diff --git a/Assets/Scripts/ServerShared/Behaviors/VelocityConversion.cs b/Assets/Scripts/ServerShared/Behaviors/VelocityConversion.cs index ee8a1a04b..4fbd4b362 100644 --- a/Assets/Scripts/ServerShared/Behaviors/VelocityConversion.cs +++ b/Assets/Scripts/ServerShared/Behaviors/VelocityConversion.cs @@ -8,7 +8,7 @@ using static Unity.Mathematics.math; [RuntimeInspectable] public class VelocityConversionData : BehaviorData { - [Inspectable, RuntimeCatalogKey(1), RuntimeInspectable] + [Inspectable, RuntimeProjectionKey(1), RuntimeInspectable] public PerformanceStat Lambda = new PerformanceStat(); public override Behavior CreateInstance(EquippedItem item) diff --git a/Assets/Scripts/ServerShared/Behaviors/VelocityLimit.cs b/Assets/Scripts/ServerShared/Behaviors/VelocityLimit.cs index 9204f24d2..86c8ca49d 100644 --- a/Assets/Scripts/ServerShared/Behaviors/VelocityLimit.cs +++ b/Assets/Scripts/ServerShared/Behaviors/VelocityLimit.cs @@ -8,7 +8,7 @@ using static Unity.Mathematics.math; [Inspectable, RuntimeInspectable] public class VelocityLimitData : BehaviorData { - [Inspectable, RuntimeCatalogKey(1), RuntimeInspectable] + [Inspectable, RuntimeProjectionKey(1), RuntimeInspectable] public PerformanceStat TopSpeed = new PerformanceStat(); public override Behavior CreateInstance(EquippedItem item) diff --git a/Assets/Scripts/ServerShared/Behaviors/Visibility.cs b/Assets/Scripts/ServerShared/Behaviors/Visibility.cs index e5b314c48..fd743d833 100644 --- a/Assets/Scripts/ServerShared/Behaviors/Visibility.cs +++ b/Assets/Scripts/ServerShared/Behaviors/Visibility.cs @@ -7,10 +7,10 @@ using System.Linq; [Inspectable, RuntimeInspectable] public class VisibilityData : BehaviorData { - [Inspectable, RuntimeCatalogKey(1), RuntimeInspectable] + [Inspectable, RuntimeProjectionKey(1), RuntimeInspectable] public PerformanceStat Visibility = new PerformanceStat(); - [Inspectable, RuntimeCatalogKey(2)] + [Inspectable, RuntimeProjectionKey(2)] public PerformanceStat VisibilityDecay = new PerformanceStat(); public override Behavior CreateInstance(EquippedItem item) diff --git a/Assets/Scripts/ServerShared/Behaviors/Weapon.cs b/Assets/Scripts/ServerShared/Behaviors/Weapon.cs index f128584d6..9e6409bd4 100644 --- a/Assets/Scripts/ServerShared/Behaviors/Weapon.cs +++ b/Assets/Scripts/ServerShared/Behaviors/Weapon.cs @@ -11,52 +11,52 @@ using static Unity.Mathematics.math; [Inspectable, RuntimeInspectable] public abstract class WeaponData : BehaviorData { - [Inspectable, RuntimeCatalogKey(1), RuntimeInspectable] + [Inspectable, RuntimeProjectionKey(1), RuntimeInspectable] public DamageType DamageType; - [Inspectable, RuntimeCatalogKey(2), RuntimeInspectable] + [Inspectable, RuntimeProjectionKey(2), RuntimeInspectable] public PerformanceStat Damage = new PerformanceStat(); - [InspectableRangedFloat(0,1), RuntimeCatalogKey(3), RuntimeInspectable] + [InspectableRangedFloat(0,1), RuntimeProjectionKey(3), RuntimeInspectable] public PerformanceStat Penetration = new PerformanceStat(); - [InspectableRangedFloat(0,1), RuntimeCatalogKey(4)] + [InspectableRangedFloat(0,1), RuntimeProjectionKey(4)] public PerformanceStat DamageSpread = new PerformanceStat(); - [Inspectable, RuntimeCatalogKey(5)] + [Inspectable, RuntimeProjectionKey(5)] public PerformanceStat MinRange = new PerformanceStat(); - [Inspectable, RuntimeCatalogKey(6)] + [Inspectable, RuntimeProjectionKey(6)] public PerformanceStat Range = new PerformanceStat(); - [InspectableAnimationCurve, RuntimeCatalogKey(7)] + [InspectableAnimationCurve, RuntimeProjectionKey(7)] public BezierCurve DamageCurve; - [InspectablePrefab, RuntimeCatalogKey(8)] + [InspectablePrefab, RuntimeProjectionKey(8)] public string EffectPrefab; - [InspectablePrefab, RuntimeCatalogKey(9), RuntimeInspectable] + [InspectablePrefab, RuntimeProjectionKey(9), RuntimeInspectable] public PerformanceStat Energy = new PerformanceStat(); - [InspectablePrefab, RuntimeCatalogKey(10), RuntimeInspectable] + [InspectablePrefab, RuntimeProjectionKey(10), RuntimeInspectable] public PerformanceStat Heat = new PerformanceStat(); - [InspectablePrefab, RuntimeCatalogKey(11), RuntimeInspectable] + [InspectablePrefab, RuntimeProjectionKey(11), RuntimeInspectable] public PerformanceStat Visibility = new PerformanceStat(); - [RuntimeCatalogKey(12), RuntimeInspectable] + [RuntimeProjectionKey(12), RuntimeInspectable] public Guid AmmoType; - [InspectablePrefab, RuntimeCatalogKey(13)] + [InspectablePrefab, RuntimeProjectionKey(13)] public int MagazineSize; - [InspectablePrefab, RuntimeCatalogKey(14)] + [InspectablePrefab, RuntimeProjectionKey(14)] public float ReloadTime = 1; - [InspectablePrefab, RuntimeCatalogKey(15)] + [InspectablePrefab, RuntimeProjectionKey(15)] public PerformanceStat Spread = new PerformanceStat(); - [Inspectable, RuntimeCatalogKey(16)] + [Inspectable, RuntimeProjectionKey(16)] public PerformanceStat Velocity = new PerformanceStat(); } diff --git a/Assets/Scripts/ServerShared/Behaviors/Wear.cs b/Assets/Scripts/ServerShared/Behaviors/Wear.cs index f22ab6f7e..16af4acc3 100644 --- a/Assets/Scripts/ServerShared/Behaviors/Wear.cs +++ b/Assets/Scripts/ServerShared/Behaviors/Wear.cs @@ -9,7 +9,7 @@ using static Unity.Mathematics.math; [Inspectable, Order(1000), RuntimeInspectable] public class WearData : BehaviorData { - [InspectableTemperature, RuntimeCatalogKey(1)] + [InspectableTemperature, RuntimeProjectionKey(1)] public bool PerSecond = true; public override Behavior CreateInstance(EquippedItem item) diff --git a/Assets/Scripts/ServerShared/BezierCurve.cs b/Assets/Scripts/ServerShared/BezierCurve.cs index 61fd09546..daf663b1a 100644 --- a/Assets/Scripts/ServerShared/BezierCurve.cs +++ b/Assets/Scripts/ServerShared/BezierCurve.cs @@ -5,7 +5,7 @@ using static Unity.Mathematics.math; public class BezierCurve { - [RuntimeCatalogKey(0)] public float4[] Keys; + [RuntimeProjectionKey(0)] public float4[] Keys; private int2 _cachedIndices; diff --git a/Assets/Scripts/ServerShared/ItemData.cs b/Assets/Scripts/ServerShared/ItemData.cs index b6491d8e0..e15edb4de 100644 --- a/Assets/Scripts/ServerShared/ItemData.cs +++ b/Assets/Scripts/ServerShared/ItemData.cs @@ -14,7 +14,7 @@ using int2 = Unity.Mathematics.int2; [Inspectable] public class Shape { - [RuntimeCatalogKey(0)] public bool[,] Cells; + [RuntimeProjectionKey(0)] public bool[,] Cells; private bool _dirty = true; @@ -262,29 +262,29 @@ public class Shape public abstract class ItemData : RuntimeProjectionEntry, INamedEntry { - [Inspectable, RuntimeCatalogKey(1)] + [Inspectable, RuntimeProjectionKey(1)] public string Name; - [InspectableText, RuntimeCatalogKey(2)] + [InspectableText, RuntimeProjectionKey(2)] public string Description; - [RuntimeCatalogKey(3)] + [RuntimeProjectionKey(3)] public Guid Manufacturer; - [Inspectable, RuntimeCatalogKey(4)] + [Inspectable, RuntimeProjectionKey(4)] public float Mass; - [InspectableSchematicShape, RuntimeCatalogKey(5)] + [InspectableSchematicShape, RuntimeProjectionKey(5)] public Shape Shape; // Heat needed to change temperature of 1 gram by 1 degree - [Inspectable, RuntimeCatalogKey(6)] + [Inspectable, RuntimeProjectionKey(6)] public float SpecificHeat = 1; - [Inspectable, RuntimeCatalogKey(7)] + [Inspectable, RuntimeProjectionKey(7)] public float Conductivity = 1; - [Inspectable, RuntimeCatalogKey(8)] + [Inspectable, RuntimeProjectionKey(8)] public int Price = 0; public string EntryName @@ -299,98 +299,98 @@ public abstract class ItemData : RuntimeProjectionEntry, INamedEntry public class SimpleCommodityData : ItemData { // // Types of body where this resource can be found - // [InspectableField, RuntimeCatalogKey(6)] + // [InspectableField, RuntimeProjectionKey(6)] // public BodyType ResourceBodyType; // // // Controls the lowest value in the resource distribution curve - // [InspectableField, RuntimeCatalogKey(8)] + // [InspectableField, RuntimeProjectionKey(8)] // public ExponentialLerp Distribution; // // // Minimum amount of resources needed for presence to register - // [InspectableField, RuntimeCatalogKey(11)] + // [InspectableField, RuntimeProjectionKey(11)] // public float Floor = 5f; - [Inspectable, RuntimeCatalogKey(9)] + [Inspectable, RuntimeProjectionKey(9)] public int MaxStack = 10; - [Inspectable, RuntimeCatalogKey(10)] + [Inspectable, RuntimeProjectionKey(10)] public SimpleCommodityCategory Category; } public abstract class CraftedItemData : ItemData { - // [Inspectable, RuntimeCatalogKey(9)] + // [Inspectable, RuntimeProjectionKey(9)] // public float IngredientQualityWeight = .5f; } [Inspectable] public class CompoundCommodityData : CraftedItemData { - [RuntimeCatalogKey(10)] + [RuntimeProjectionKey(10)] public Dictionary DemandProfile = new Dictionary(); - [Inspectable, RuntimeCatalogKey(11)] + [Inspectable, RuntimeProjectionKey(11)] public CompoundCommodityCategory Category; } [Inspectable] public class ConsumableItemData : CraftedItemData { - [Inspectable, RuntimeCatalogKey(10)] + [Inspectable, RuntimeProjectionKey(10)] public List Behaviors = new List(); - [Inspectable, RuntimeCatalogKey(11)] + [Inspectable, RuntimeProjectionKey(11)] public bool Stackable; - [Inspectable, RuntimeCatalogKey(12)] + [Inspectable, RuntimeProjectionKey(12)] public float Duration; - [InspectableTexture, RuntimeCatalogKey(13)] + [InspectableTexture, RuntimeProjectionKey(13)] public string Icon; - [Inspectable, RuntimeCatalogKey(14)] + [Inspectable, RuntimeProjectionKey(14)] public BezierCurve Effectiveness; } public abstract class EquippableItemData : CraftedItemData { - [InspectableTexture, RuntimeCatalogKey(10)] + [InspectableTexture, RuntimeProjectionKey(10)] public string Schematic; - [Inspectable, RuntimeCatalogKey(11)] + [Inspectable, RuntimeProjectionKey(11)] public List Behaviors = new List(); - [Inspectable, RuntimeCatalogKey(12)] + [Inspectable, RuntimeProjectionKey(12)] public float Durability; - [InspectableTemperature, RuntimeCatalogKey(13)] + [InspectableTemperature, RuntimeProjectionKey(13)] public float MinimumTemperature; - [InspectableTemperature, RuntimeCatalogKey(14)] + [InspectableTemperature, RuntimeProjectionKey(14)] public float MaximumTemperature; - // [InspectableField, RuntimeCatalogKey(15), SimplePerformanceStat] + // [InspectableField, RuntimeProjectionKey(15), SimplePerformanceStat] // public PerformanceStat DurabilityExponent = new PerformanceStat(); // - // [InspectableField, RuntimeCatalogKey(16), SimplePerformanceStat] + // [InspectableField, RuntimeProjectionKey(16), SimplePerformanceStat] // public PerformanceStat HeatExponent = new PerformanceStat(); - [InspectableAnimationCurve, RuntimeCatalogKey(17)] + [InspectableAnimationCurve, RuntimeProjectionKey(17)] public BezierCurve HeatPerformanceCurve; - [Inspectable, RuntimeCatalogKey(18)] + [Inspectable, RuntimeProjectionKey(18)] public float ThermalResilience = 1; - // [Inspectable, RuntimeCatalogKey(19)] + // [Inspectable, RuntimeProjectionKey(19)] // public string SoundEffectTrigger; - [InspectableTexture, RuntimeCatalogKey(20)] + [InspectableTexture, RuntimeProjectionKey(20)] public string ActionBarIcon; - [InspectableSoundBank, RuntimeCatalogKey(21)] + [InspectableSoundBank, RuntimeProjectionKey(21)] public uint SoundBank; - [Inspectable, RuntimeCatalogKey(22)] + [Inspectable, RuntimeProjectionKey(22)] public List AudioStats = new List(); public abstract HardpointType HardpointType { get; } @@ -432,17 +432,17 @@ public abstract class EquippableItemData : CraftedItemData [Inspectable] public class AudioStat { - [InspectableAudioParameter, RuntimeCatalogKey(0)] + [InspectableAudioParameter, RuntimeProjectionKey(0)] public uint Parameter; - [Inspectable, RuntimeCatalogKey(1)] + [Inspectable, RuntimeProjectionKey(1)] public PerformanceStat Stat = new PerformanceStat(); } [Inspectable] public class GearData : EquippableItemData { - [Inspectable, RuntimeCatalogKey(23)] + [Inspectable, RuntimeProjectionKey(23)] public HardpointType Hardpoint; public override HardpointType HardpointType => Hardpoint; @@ -451,7 +451,7 @@ public class GearData : EquippableItemData [Inspectable] public class CargoBayData : EquippableItemData { - [Inspectable, RuntimeCatalogKey(24)] + [Inspectable, RuntimeProjectionKey(24)] public Shape InteriorShape; public override HardpointType HardpointType => HardpointType.Tool; @@ -460,51 +460,51 @@ public class CargoBayData : EquippableItemData [Inspectable] public class DockingBayData : CargoBayData { - [Inspectable, RuntimeCatalogKey(25)] + [Inspectable, RuntimeProjectionKey(25)] public int2 MaxSize; } public class WeaponItemData : GearData { - [Inspectable, RuntimeCatalogKey(24)] + [Inspectable, RuntimeProjectionKey(24)] public WeaponRange WeaponRange; - [Inspectable, RuntimeCatalogKey(25)] + [Inspectable, RuntimeProjectionKey(25)] public WeaponCaliber WeaponCaliber; - [Inspectable, RuntimeCatalogKey(26)] + [Inspectable, RuntimeProjectionKey(26)] public WeaponType WeaponType; - [Inspectable, RuntimeCatalogKey(27)] + [Inspectable, RuntimeProjectionKey(27)] public WeaponFireType WeaponFireTypes; - [Inspectable, RuntimeCatalogKey(28)] + [Inspectable, RuntimeProjectionKey(28)] public WeaponModifiers WeaponModifiers; } [Inspectable] public class HullData : EquippableItemData { - [Inspectable, RuntimeCatalogKey(23)] + [Inspectable, RuntimeProjectionKey(23)] public List Hardpoints = new List(); - [InspectablePrefab, RuntimeCatalogKey(24)] + [InspectablePrefab, RuntimeProjectionKey(24)] public string Prefab; - [Inspectable, RuntimeCatalogKey(25)] + [Inspectable, RuntimeProjectionKey(25)] public HullType HullType; - [Inspectable, RuntimeCatalogKey(26)] + [Inspectable, RuntimeProjectionKey(26)] public float GridOffset; - [Inspectable, RuntimeCatalogKey(27)] + [Inspectable, RuntimeProjectionKey(27)] public float Armor; - [Inspectable, RuntimeCatalogKey(28)] + [Inspectable, RuntimeProjectionKey(28)] public float Drag; - [Inspectable, RuntimeCatalogKey(29)] + [Inspectable, RuntimeProjectionKey(29)] public bool CanTow; public Shape InteriorCells @@ -528,12 +528,12 @@ public class HullData : EquippableItemData [Inspectable] public class HardpointData : ITintInspector { - [Inspectable, RuntimeCatalogKey(0)] public HardpointType Type; - [Inspectable, RuntimeCatalogKey(1)] public int2 Position; - [Inspectable, RuntimeCatalogKey(2)] public Shape Shape = new Shape(); - [Inspectable, RuntimeCatalogKey(3)] public string Transform; - [Inspectable, RuntimeCatalogKey(4)] public ItemRotation Rotation; - [Inspectable, RuntimeCatalogKey(5)] public float Armor; + [Inspectable, RuntimeProjectionKey(0)] public HardpointType Type; + [Inspectable, RuntimeProjectionKey(1)] public int2 Position; + [Inspectable, RuntimeProjectionKey(2)] public Shape Shape = new Shape(); + [Inspectable, RuntimeProjectionKey(3)] public string Transform; + [Inspectable, RuntimeProjectionKey(4)] public ItemRotation Rotation; + [Inspectable, RuntimeProjectionKey(5)] public float Armor; public override string ToString() { @@ -565,22 +565,22 @@ public class HardpointData : ITintInspector public class PerformanceStat { - [RuntimeCatalogKey(0)] public float Min; + [RuntimeProjectionKey(0)] public float Min; - [RuntimeCatalogKey(1)] public float Max; + [RuntimeProjectionKey(1)] public float Max; - [RuntimeCatalogKey(2)] + [RuntimeProjectionKey(2)] public float HeatExponentMultiplier; - [RuntimeCatalogKey(3)] + [RuntimeProjectionKey(3)] public float DurabilityExponentMultiplier; - [RuntimeCatalogKey(4)] + [RuntimeProjectionKey(4)] public float QualityExponent; - //[RuntimeCatalogKey(5)] public Guid ID = Guid.NewGuid(); + //[RuntimeProjectionKey(5)] public Guid ID = Guid.NewGuid(); - // [RuntimeCatalogKey(5)] public Guid? Ingredient; + // [RuntimeProjectionKey(5)] public Guid? Ingredient; private Dictionary> _scaleModifiers; private Dictionary> _constantModifiers; @@ -611,13 +611,13 @@ public class PerformanceStat [Inspectable] public class PersonalityAttribute : RuntimeProjectionEntry, INamedEntry { - [Inspectable, RuntimeCatalogKey(1)] + [Inspectable, RuntimeProjectionKey(1)] public string Name; - [Inspectable, RuntimeCatalogKey(2)] + [Inspectable, RuntimeProjectionKey(2)] public string LowName; - [Inspectable, RuntimeCatalogKey(3)] + [Inspectable, RuntimeProjectionKey(3)] public string HighName; public string EntryName diff --git a/Assets/Scripts/ServerShared/RuntimeCatalogKeyAttribute.cs b/Assets/Scripts/ServerShared/RuntimeProjectionKeyAttribute.cs similarity index 51% rename from Assets/Scripts/ServerShared/RuntimeCatalogKeyAttribute.cs rename to Assets/Scripts/ServerShared/RuntimeProjectionKeyAttribute.cs index 0ae5a3294..1bc8115bf 100644 --- a/Assets/Scripts/ServerShared/RuntimeCatalogKeyAttribute.cs +++ b/Assets/Scripts/ServerShared/RuntimeProjectionKeyAttribute.cs @@ -1,9 +1,9 @@ using System; [AttributeUsage(AttributeTargets.Field)] -public sealed class RuntimeCatalogKeyAttribute : Attribute +public sealed class RuntimeProjectionKeyAttribute : Attribute { - public RuntimeCatalogKeyAttribute(int key) + public RuntimeProjectionKeyAttribute(int key) { Key = key; } diff --git a/Assets/Scripts/ServerShared/RuntimeCatalogKeyAttribute.cs.meta b/Assets/Scripts/ServerShared/RuntimeProjectionKeyAttribute.cs.meta similarity index 100% rename from Assets/Scripts/ServerShared/RuntimeCatalogKeyAttribute.cs.meta rename to Assets/Scripts/ServerShared/RuntimeProjectionKeyAttribute.cs.meta diff --git a/docs/aetheria-perfect-machine-map.md b/docs/aetheria-perfect-machine-map.md index 4b5821d44..8bb142cbf 100644 --- a/docs/aetheria-perfect-machine-map.md +++ b/docs/aetheria-perfect-machine-map.md @@ -285,7 +285,7 @@ legacy catalog cache, and legacy UI paths should be migration-only or deleted. corporation/name-file/catalog documents own durable state; these classes are inspector/runtime projections only. Item and behavior DTO field layout for `AetheriaRuntimeItemCatalog` no longer depends on MessagePack attributes. The - temporary bridge uses `RuntimeCatalogKeyAttribute` while typed item instances + temporary bridge uses `RuntimeProjectionKeyAttribute` while typed item instances and behavior factories are being built. - `Aetheria.Shared.Unity` no longer references the vendored `MessagePack` assembly. The embedded `GameCult.Aetheria.State.Unity` package still depends @@ -351,7 +351,7 @@ legacy catalog cache, and legacy UI paths should be migration-only or deleted. selection now uses an explicit runtime catalog map instead of `UnionAttribute` reflection. Item/behavior DTO field layout for the temporary projection bridge is now - marked with project-owned `RuntimeCatalogKeyAttribute`, not MessagePack + marked with project-owned `RuntimeProjectionKeyAttribute`, not MessagePack metadata. Item properties manufacturer display is a typed snapshot consumer; loadout generation is the remaining runtime single-ID item lookup bridge. The old trade debug UI and @@ -556,7 +556,7 @@ First Aetheria surfaces to publish: narrative helper DTOs from MessagePack metadata to plain runtime/inspector shapes. - Done: replace remaining item/behavior DTO MessagePack field metadata with - `RuntimeCatalogKeyAttribute`; no live `Assets/Scripts` source depends on + `RuntimeProjectionKeyAttribute`; no live `Assets/Scripts` source depends on MessagePack, Newtonsoft, RethinkDB, or bespoke save-file serializer symbols. - Done: delete dead `PlayerData` and `GalaxyMapLayerData` catalog roots, and remove legacy catalog group/table annotations from surviving runtime DTOs. @@ -712,7 +712,7 @@ First Aetheria surfaces to publish: - Live Unity source has no `RuntimeCatalogEntry`; surviving DTOs inherit `RuntimeProjectionEntry`. - Live Unity source has no `InspectableRuntimeCatalogLinkAttribute`; - `RuntimeCatalogKeyAttribute` remains only as the temporary mapper key. + `RuntimeProjectionKeyAttribute` remains only as the temporary mapper key. - Unity batchmode compile also returned cleanly after disabling `MessagePack` auto-reference; `Assets/Scripts` and `Assets/Editor` have no `using MessagePack`, `MessagePackSerializer`, `[MessagePackObject]`, or