- no more initial state for qsb network behaviours because it is dumb and i hate it

- spawn authqueue objects with no authority for real instead of with server authority
This commit is contained in:
JohnCorby 2022-01-27 03:15:52 -08:00
parent 8cb0b7e5de
commit 13f5e2ebc3
12 changed files with 31 additions and 54 deletions

View File

@ -2,7 +2,6 @@
using QSB.Anglerfish.Messages;
using QSB.Anglerfish.TransformSync;
using QSB.Messaging;
using QSB.Utility;
using QSB.WorldSync;
using UnityEngine;
@ -22,7 +21,7 @@ namespace QSB.Anglerfish.WorldObjects
{
if (QSBCore.IsHost)
{
Object.Instantiate(QSBNetworkManager.singleton.AnglerPrefab).SpawnWithServerAuthority();
NetworkServer.Spawn(Object.Instantiate(QSBNetworkManager.singleton.AnglerPrefab));
}
StartDelayedReady();

View File

@ -2,7 +2,6 @@
using QSB.JellyfishSync.Messages;
using QSB.JellyfishSync.TransformSync;
using QSB.Messaging;
using QSB.Utility;
using QSB.WorldSync;
using UnityEngine;
@ -18,7 +17,7 @@ namespace QSB.JellyfishSync.WorldObjects
{
if (QSBCore.IsHost)
{
Object.Instantiate(QSBNetworkManager.singleton.JellyfishPrefab).SpawnWithServerAuthority();
NetworkServer.Spawn(Object.Instantiate(QSBNetworkManager.singleton.JellyfishPrefab));
}
StartDelayedReady();

View File

@ -18,7 +18,7 @@ namespace QSB.OrbSync.WorldObjects
{
if (QSBCore.IsHost)
{
Object.Instantiate(QSBNetworkManager.singleton.OrbPrefab).SpawnWithServerAuthority();
NetworkServer.Spawn(Object.Instantiate(QSBNetworkManager.singleton.OrbPrefab));
}
StartDelayedReady();

View File

@ -21,13 +21,13 @@ namespace QSB.Syncs
Vector3.Distance(transform.position, _prevPosition) > 1E-05f ||
Quaternion.Angle(transform.rotation, _prevRotation) > 1E-05f;
protected override void Serialize(NetworkWriter writer, bool initialState)
protected override void Serialize(NetworkWriter writer)
{
writer.Write(transform.position);
writer.Write(transform.rotation);
}
protected override void Deserialize(NetworkReader reader, bool initialState)
protected override void Deserialize(NetworkReader reader)
{
transform.position = reader.ReadVector3();
transform.rotation = reader.ReadQuaternion();

View File

@ -23,13 +23,13 @@ namespace QSB.Syncs
Vector3.Distance(Target.localPosition, _prevPosition) > 1E-05f ||
Quaternion.Angle(Target.localRotation, _prevRotation) > 1E-05f;
protected override void Serialize(NetworkWriter writer, bool initialState)
protected override void Serialize(NetworkWriter writer)
{
writer.Write(Target.localPosition);
writer.Write(Target.localRotation);
}
protected override void Deserialize(NetworkReader reader, bool initialState)
protected override void Deserialize(NetworkReader reader)
{
Target.localPosition = reader.ReadVector3();
Target.localRotation = reader.ReadQuaternion();

View File

@ -36,15 +36,15 @@ namespace QSB.Syncs.Sectored
SetReferenceSector(null);
}
protected override void Serialize(NetworkWriter writer, bool initialState)
protected override void Serialize(NetworkWriter writer)
{
base.Serialize(writer, initialState);
base.Serialize(writer);
writer.Write(_sectorId);
}
protected override void Deserialize(NetworkReader reader, bool initialState)
protected override void Deserialize(NetworkReader reader)
{
base.Deserialize(reader, initialState);
base.Deserialize(reader);
_sectorId = reader.ReadInt();
}

View File

@ -33,16 +33,16 @@ namespace QSB.Syncs.Sectored.Rigidbodies
_prevAngularVelocity = _relativeAngularVelocity;
}
protected override void Serialize(NetworkWriter writer, bool initialState)
protected override void Serialize(NetworkWriter writer)
{
base.Serialize(writer, initialState);
base.Serialize(writer);
writer.Write(_relativeVelocity);
writer.Write(_relativeAngularVelocity);
}
protected override void Deserialize(NetworkReader reader, bool initialState)
protected override void Deserialize(NetworkReader reader)
{
base.Deserialize(reader, initialState);
base.Deserialize(reader);
_relativeVelocity = reader.ReadVector3();
_relativeAngularVelocity = reader.ReadVector3();
}

View File

@ -183,9 +183,9 @@ namespace QSB.Syncs
private bool _shouldApply;
protected override void Deserialize(NetworkReader reader, bool initialState)
protected override void Deserialize(NetworkReader reader)
{
base.Deserialize(reader, initialState);
base.Deserialize(reader);
if (OnlyApplyOnDeserialize)
{
_shouldApply = true;

View File

@ -33,16 +33,16 @@ namespace QSB.Syncs.Unsectored.Rigidbodies
_prevAngularVelocity = _relativeAngularVelocity;
}
protected override void Serialize(NetworkWriter writer, bool initialState)
protected override void Serialize(NetworkWriter writer)
{
base.Serialize(writer, initialState);
base.Serialize(writer);
writer.Write(_relativeVelocity);
writer.Write(_relativeAngularVelocity);
}
protected override void Deserialize(NetworkReader reader, bool initialState)
protected override void Deserialize(NetworkReader reader)
{
base.Deserialize(reader, initialState);
base.Deserialize(reader);
_relativeVelocity = reader.ReadVector3();
_relativeAngularVelocity = reader.ReadVector3();
}

View File

@ -12,16 +12,16 @@ namespace QSB.Syncs.Unsectored.Transforms
protected sealed override Transform InitAttachedTransform()
=> hasAuthority ? InitLocalTransform() : InitRemoteTransform();
protected override void Serialize(NetworkWriter writer, bool initialState)
protected override void Serialize(NetworkWriter writer)
{
base.Serialize(writer, initialState);
base.Serialize(writer);
writer.Write(transform.position);
writer.Write(transform.rotation);
}
protected override void Deserialize(NetworkReader reader, bool initialState)
protected override void Deserialize(NetworkReader reader)
{
base.Deserialize(reader, initialState);
base.Deserialize(reader);
transform.position = reader.ReadVector3();
transform.rotation = reader.ReadQuaternion();
}

View File

@ -10,31 +10,10 @@ namespace QSB.Utility
private double _lastSendTime;
public sealed override bool OnSerialize(NetworkWriter writer, bool initialState)
{
if (initialState)
{
Serialize(writer, true);
UpdatePrevData();
return true;
}
return false;
}
public sealed override void OnDeserialize(NetworkReader reader, bool initialState)
{
if (initialState)
{
UpdatePrevData();
Deserialize(reader, true);
}
}
protected abstract bool HasChanged();
protected abstract void UpdatePrevData();
protected abstract void Serialize(NetworkWriter writer, bool initialState);
protected abstract void Deserialize(NetworkReader reader, bool initialState);
protected abstract void Serialize(NetworkWriter writer);
protected abstract void Deserialize(NetworkReader reader);
protected virtual void Update()
{
@ -63,7 +42,7 @@ namespace QSB.Utility
}
using var writer = NetworkWriterPool.GetWriter();
Serialize(writer, false);
Serialize(writer);
UpdatePrevData();
var data = writer.ToArraySegment();
@ -94,7 +73,7 @@ namespace QSB.Utility
{
using var reader = NetworkReaderPool.GetReader(data);
UpdatePrevData();
Deserialize(reader, false);
Deserialize(reader);
}
}
}

View File

@ -14,7 +14,7 @@ namespace QSB.Utility.VariableSync
protected override bool HasChanged() => !EqualityComparer<T>.Default.Equals(_prevValue, Value);
protected override void UpdatePrevData() => _prevValue = Value;
protected override void Serialize(NetworkWriter writer, bool initialState) => writer.Write(Value);
protected override void Deserialize(NetworkReader reader, bool initialState) => Value = reader.Read<T>();
protected override void Serialize(NetworkWriter writer) => writer.Write(Value);
protected override void Deserialize(NetworkReader reader) => Value = reader.Read<T>();
}
}