31 lines
1.3 KiB
C#
31 lines
1.3 KiB
C#
using NitroxModel.DataStructures.Unity;
|
|
using NitroxModel_Subnautica.DataStructures.Surrogates;
|
|
using NitroxServer.Serialization;
|
|
using UnityEngine;
|
|
|
|
namespace NitroxServer_Subnautica.Serialization
|
|
{
|
|
class SubnauticaServerProtoBufSerializer : ServerProtoBufSerializer
|
|
{
|
|
public SubnauticaServerProtoBufSerializer(params string[] assemblies) : base(assemblies)
|
|
{
|
|
RegisterHardCodedTypes();
|
|
}
|
|
|
|
// Register here all hard coded types, that come from NitroxModel-Subnautica or NitroxServer-Subnautica
|
|
private void RegisterHardCodedTypes()
|
|
{
|
|
Model.Add(typeof(Light), true);
|
|
Model.Add(typeof(BoxCollider), true);
|
|
Model.Add(typeof(SphereCollider), true);
|
|
Model.Add(typeof(MeshCollider), true);
|
|
Model.Add(typeof(Vector3), false).SetSurrogate(typeof(Vector3Surrogate));
|
|
Model.Add(typeof(NitroxVector3), false).SetSurrogate(typeof(Vector3Surrogate));
|
|
Model.Add(typeof(Quaternion), false).SetSurrogate(typeof(QuaternionSurrogate));
|
|
Model.Add(typeof(NitroxQuaternion), false).SetSurrogate(typeof(QuaternionSurrogate));
|
|
Model.Add(typeof(Transform), false).SetSurrogate(typeof(NitroxTransform));
|
|
Model.Add(typeof(GameObject), false).SetSurrogate(typeof(NitroxServer.UnityStubs.GameObject));
|
|
}
|
|
}
|
|
}
|