using Robust.Shared.GameStates;
using Robust.Shared.Prototypes;
using Robust.Shared.Serialization.TypeSerializers.Implementations.Custom.Prototype;
namespace Content.Shared.Movement.Components;
///
/// A special jetpack component for borgs that initializes its action on startup
///
[RegisterComponent, NetworkedComponent, AutoGenerateComponentState]
public sealed partial class BorgJetpackComponent : Component
{
[DataField, AutoNetworkedField]
public EntityUid? JetpackUser;
[ViewVariables(VVAccess.ReadWrite), DataField("moleUsage")]
public float MoleUsage = 0.012f;
[DataField("toggleAction", customTypeSerializer: typeof(PrototypeIdSerializer))]
public string ToggleAction = "ActionToggleJetpack";
[DataField, AutoNetworkedField]
public EntityUid? ToggleActionEntity;
[ViewVariables(VVAccess.ReadWrite), DataField("acceleration"), AutoNetworkedField]
public float Acceleration = 1f;
[ViewVariables(VVAccess.ReadWrite), DataField("friction"), AutoNetworkedField]
public float Friction = 0.25f;
[ViewVariables(VVAccess.ReadWrite), DataField("weightlessModifier"), AutoNetworkedField]
public float WeightlessModifier = 1.2f;
}