using System; namespace NitroxModel.DataStructures { /// /// A simulated entity that is tracked by the Nitrox server so that it knows which connected game client owns (and simulates) the entity. /// See for more information. /// [Serializable] public class SimulatedEntity { /// /// True if entity isn't static (e.g. welded to world). /// public bool ChangesPosition { get; } public NitroxId Id { get; } public ushort PlayerId { get; } public SimulationLockType LockType { get; } public SimulatedEntity(NitroxId id, ushort playerId, bool changesPosition, SimulationLockType lockType) { Id = id; PlayerId = playerId; ChangesPosition = changesPosition; LockType = lockType; } public override string ToString() { return $"[SimulatedEntity Id: {Id}, PlayerId: {PlayerId}, ChangesPosition: {ChangesPosition}, LockType: {LockType}]"; } } }