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}]";
}
}
}