diff --git a/Content.Shared/Corvax/Physics/FrictionRemoverSystem.cs b/Content.Shared/Corvax/Physics/FrictionRemoverSystem.cs new file mode 100644 index 00000000000..983fb987d63 --- /dev/null +++ b/Content.Shared/Corvax/Physics/FrictionRemoverSystem.cs @@ -0,0 +1,25 @@ +using Robust.Shared.Physics; +using Robust.Shared.Physics.Components; +using Robust.Shared.Physics.Systems; + +namespace Content.Shared.SimpleStation14.Physics; + +public sealed class FrictionRemoverSystem : EntitySystem +{ + [Dependency] private readonly SharedPhysicsSystem _physics = default!; + + + public override void Initialize() + { + base.Initialize(); + + SubscribeLocalEvent(RemoveDampening); + } + + + private void RemoveDampening(EntityUid uid, PhysicsComponent component, PhysicsSleepEvent args) + { + _physics.SetAngularDamping(component, 0, false); + _physics.SetLinearDamping(component, 0); + } +} diff --git a/Content.Shared/Movement/Components/MovementSpeedModifierComponent.cs b/Content.Shared/Movement/Components/MovementSpeedModifierComponent.cs index a0feab7052c..24bd16d7d8f 100644 --- a/Content.Shared/Movement/Components/MovementSpeedModifierComponent.cs +++ b/Content.Shared/Movement/Components/MovementSpeedModifierComponent.cs @@ -14,13 +14,13 @@ public sealed partial class MovementSpeedModifierComponent : Component // Weightless public const float DefaultMinimumFrictionSpeed = 0.005f; public const float DefaultWeightlessFriction = 1f; - public const float DefaultWeightlessFrictionNoInput = 0.2f; + public const float DefaultWeightlessFrictionNoInput = 0f; public const float DefaultWeightlessModifier = 0.7f; public const float DefaultWeightlessAcceleration = 1f; - public const float DefaultAcceleration = 20f; - public const float DefaultFriction = 20f; - public const float DefaultFrictionNoInput = 20f; + public const float DefaultAcceleration = 8f; //Frontier + public const float DefaultFriction = 8f; // Frontier + public const float DefaultFrictionNoInput = 14f; // Frontier public const float DefaultBaseWalkSpeed = 2.5f; public const float DefaultBaseSprintSpeed = 4.5f; @@ -100,7 +100,7 @@ private float _baseSprintSpeedVV /// The negative velocity applied for friction. /// [AutoNetworkedField, ViewVariables(VVAccess.ReadWrite), DataField] - public float? FrictionNoInput; + public float? FrictionNoInput = DefaultFrictionNoInput; // Frontier [ViewVariables(VVAccess.ReadWrite), DataField, AutoNetworkedField] public float BaseWalkSpeed { get; set; } = DefaultBaseWalkSpeed; diff --git a/Resources/Prototypes/Entities/Mobs/Species/moth.yml b/Resources/Prototypes/Entities/Mobs/Species/moth.yml index 9e181686410..6ec3d3f7ce4 100644 --- a/Resources/Prototypes/Entities/Mobs/Species/moth.yml +++ b/Resources/Prototypes/Entities/Mobs/Species/moth.yml @@ -49,9 +49,7 @@ Female: UnisexMoth Unsexed: UnisexMoth - type: MovementSpeedModifier - weightlessAcceleration: 1.5 # Move around more easily in space. - weightlessFriction: 1 - weightlessModifier: 1 + weightlessAcceleration: 2.5 # Move around more easily in space. - type: Flammable damage: types: