6
StarHorizon_Public/Content.Shared/_Crescent/ShipShields/ShipShieldEmitterComponent.cs
2025-11-07 12:32:48 +03:00

61 lines
1.4 KiB
C#

// SPDX-FileCopyrightText: 2025 ark1368
//
// SPDX-License-Identifier: AGPL-3.0-or-later
using Robust.Shared.Audio;
namespace Content.Shared._Crescent.ShipShields;
[RegisterComponent]
public sealed partial class ShipShieldEmitterComponent : Component
{
public EntityUid? Shield;
public EntityUid? Shielded;
[DataField]
public float Accumulator;
[DataField]
public float Damage = 0f;
[DataField]
public float DamageExp = 1.1f;
[DataField]
public float HealPerSecond = 250f;
[DataField]
public float UnpoweredBonus = 6f;
[DataField]
public float MaxDraw = 150000f;
[DataField]
public float BaseDraw = 50000f;
[DataField]
public bool Recharging = false;
[DataField]
public float DamageLimit = 3500;
[DataField]
public float DamageOverloadTimePunishment = 30;
/// <summary>
/// The color of the shield generated by this emitter.
/// </summary>
[DataField]
public Color ShieldColor = Color.White;
public float OverloadAccumulator = 0f;
/// <summary>
/// On power up, players for all on vessel, pitched down.
/// </summary>
[DataField]
public SoundSpecifier PowerUpSound = new SoundPathSpecifier("/Audio/Effects/teleport_arrival.ogg");
[DataField]
public SoundSpecifier PowerDownSound = new SoundPathSpecifier("/Audio/Effects/teleport_departure.ogg");
}