using Content.Shared.Movement.Systems;
using Robust.Shared.GameStates;
namespace Content.Shared.Movement.Components;
//
// This is used to modify how much an entity is affected by speed modifier contacts.
//
[NetworkedComponent, RegisterComponent]
[AutoGenerateComponentState]
[Access(typeof(SpeedModifierContactsSystem))]
public sealed partial class SpeedModifiedByContactModifierComponent : Component
{
//
// Numbers greater than 1 amplify the walk speed modifier, and lower numbers lessen the effect.
//
[DataField, AutoNetworkedField]
public float WalkModifierEffectiveness = 1.0f;
//
// Numbers greater than 1 amplify the sprint speed modifier, and lower numbers lessen the effect.
//
[DataField, AutoNetworkedField]
public float SprintModifierEffectiveness = 1.0f;
//
// The minimum walk speed multiplier.
//
[DataField, AutoNetworkedField]
public float MinWalkMultiplier = 0.1f;
//
// The minimum sprint speed multiplier.
//
[DataField, AutoNetworkedField]
public float MinSprintMultiplier = 0.1f;
}