Files
Nitrox/NitroxModel/DataStructures/GameLogic/Entities/Metadata/CyclopsMetadata.cs
2025-07-06 00:23:46 +02:00

54 lines
1.5 KiB
C#

using System;
using System.Runtime.Serialization;
using BinaryPack.Attributes;
namespace NitroxModel.DataStructures.GameLogic.Entities.Metadata;
[Serializable]
[DataContract]
public class CyclopsMetadata : EntityMetadata
{
[DataMember(Order = 1)]
public bool SilentRunningOn { get; set; }
[DataMember(Order = 2)]
public bool ShieldOn { get; set; }
[DataMember(Order = 3)]
public bool SonarOn { get; set; }
[DataMember(Order = 4)]
public bool EngineOn { get; set; }
[DataMember(Order = 5)]
public int EngineMode { get; set; }
[DataMember(Order = 6)]
public float Health { get; set; }
[DataMember(Order = 7)]
public bool IsDestroyed { get; set; }
[IgnoreConstructor]
protected CyclopsMetadata()
{
// Constructor for serialization. Has to be "protected" for json serialization.
}
public CyclopsMetadata(bool silentRunningOn, bool shieldOn, bool sonarOn, bool engineOn, int engineMode, float health, bool isDestroyed)
{
SilentRunningOn = silentRunningOn;
ShieldOn = shieldOn;
SonarOn = sonarOn;
EngineOn = engineOn;
EngineMode = engineMode;
Health = health;
IsDestroyed = isDestroyed;
}
public override string ToString()
{
return $"[CyclopsMetadata SilentRunningOn: {SilentRunningOn}, ShieldOn: {ShieldOn}, SonarOn: {SonarOn}, EngineOn: {EngineOn}, EngineMode: {EngineMode}, Health: {Health}, IsDestroyed: {IsDestroyed}]";
}
}