diff --git a/QSB/EchoesOfTheEye/RaftSync/WorldObjects/QSBRaft.cs b/QSB/EchoesOfTheEye/RaftSync/WorldObjects/QSBRaft.cs index 46c5187d..2a6451f5 100644 --- a/QSB/EchoesOfTheEye/RaftSync/WorldObjects/QSBRaft.cs +++ b/QSB/EchoesOfTheEye/RaftSync/WorldObjects/QSBRaft.cs @@ -1,5 +1,6 @@ using Cysharp.Threading.Tasks; using Mirror; +using QSB.AuthoritySync; using QSB.EchoesOfTheEye.RaftSync.TransformSync; using QSB.Utility; using QSB.WorldSync; @@ -22,6 +23,8 @@ public class QSBRaft : WorldObject } await UniTask.WaitUntil(() => TransformSync, cancellationToken: ct); + + AttachedObject._interactReceiver.OnPressInteract += OnPressInteract; } public override void OnRemoval() @@ -30,10 +33,15 @@ public class QSBRaft : WorldObject { NetworkServer.Destroy(TransformSync.gameObject); } + + AttachedObject._interactReceiver.OnPressInteract -= OnPressInteract; } public override void SendInitialState(uint to) { - // todo SendInitialState + // todo?? SendInitialState } + + private void OnPressInteract() => + TransformSync.netIdentity.UpdateAuthQueue(AuthQueueAction.Force); }