New damage system, much easier to understand Splash damage support Hardpoint armor consolidated with hull armor Minimap shows view cone New industry standard palette for temperature display Temperature range display contains palette Restoring loadouts now ignores temperature and armor Items can ignore thermal mass when adding heat Burst weapons can consume single ammo (mainly shotguns) New missile type that follows crosshairs New airburst projectile type that deals splash damage Auto Shotgun and Charged Shotgun
61 lines
No EOL
2.2 KiB
C#
61 lines
No EOL
2.2 KiB
C#
/* This Source Code Form is subject to the terms of the Mozilla Public
|
|
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
|
* file, You can obtain one at https://mozilla.org/MPL/2.0/. */
|
|
|
|
using MessagePack;
|
|
using Newtonsoft.Json;
|
|
using Unity.Mathematics;
|
|
|
|
[InspectableField, MessagePackObject, JsonObject(MemberSerialization.OptIn)]
|
|
public class LauncherData : LockWeaponData
|
|
{
|
|
[InspectableAnimationCurve, JsonProperty("guidance"), Key(24)]
|
|
public float4[] GuidanceCurve;
|
|
|
|
[InspectableAnimationCurve, JsonProperty("thrustCurve"), Key(25)]
|
|
public float4[] ThrustCurve;
|
|
|
|
[InspectableAnimationCurve, JsonProperty("liftCurve"), Key(26)]
|
|
public float4[] LiftCurve;
|
|
|
|
[InspectableField, JsonProperty("thrust"), Key(27)]
|
|
public PerformanceStat Thrust = new PerformanceStat();
|
|
|
|
[InspectableField, JsonProperty("frequency"), Key(28)]
|
|
public float DodgeFrequency;
|
|
|
|
[InspectableField, JsonProperty("missileSpeed"), Key(29), RuntimeInspectable]
|
|
public PerformanceStat MissileVelocity = new PerformanceStat();
|
|
|
|
public override IBehavior CreateInstance(ItemManager context, Entity entity, EquippedItem item)
|
|
{
|
|
return new LockWeapon(context, this, entity, item);
|
|
}
|
|
}
|
|
|
|
[InspectableField, MessagePackObject, JsonObject(MemberSerialization.OptIn)]
|
|
public class GuidedWeaponData : InstantWeaponData
|
|
{
|
|
[InspectableAnimationCurve, JsonProperty("guidance"), Key(24)]
|
|
public float4[] GuidanceCurve;
|
|
|
|
[InspectableAnimationCurve, JsonProperty("thrustCurve"), Key(25)]
|
|
public float4[] ThrustCurve;
|
|
|
|
[InspectableAnimationCurve, JsonProperty("liftCurve"), Key(26)]
|
|
public float4[] LiftCurve;
|
|
|
|
[InspectableField, JsonProperty("thrust"), Key(27)]
|
|
public PerformanceStat Thrust = new PerformanceStat();
|
|
|
|
[InspectableField, JsonProperty("frequency"), Key(28)]
|
|
public float DodgeFrequency;
|
|
|
|
[InspectableField, JsonProperty("missileSpeed"), Key(29), RuntimeInspectable]
|
|
public PerformanceStat MissileVelocity = new PerformanceStat();
|
|
|
|
public override IBehavior CreateInstance(ItemManager context, Entity entity, EquippedItem item)
|
|
{
|
|
return new InstantWeapon(context, this, entity, item);
|
|
}
|
|
} |