public static void SocketedQuantumObject_MoveToSocket(SocketedQuantumObject __instance, QuantumSocket socket)
        {
            if (!QSBWorldSync.AllObjectsReady)
            {
                return;
            }

            if (socket == null)
            {
                DebugLog.ToConsole($"Error - Trying to move {__instance.name} to a null socket!", MessageType.Error);
                return;
            }

            var objectWorldObject = __instance.GetWorldObject <QSBSocketedQuantumObject>();
            var socketWorldObject = socket.GetWorldObject <QSBQuantumSocket>();

            if (objectWorldObject == null)
            {
                DebugLog.ToConsole($"Worldobject is null for {__instance.name}!");
                return;
            }

            if (objectWorldObject.ControllingPlayer != QSBPlayerManager.LocalPlayerId)
            {
                return;
            }

            objectWorldObject.SendMessage(new SocketStateChangeMessage(
                                              socketWorldObject.ObjectId,
                                              __instance.transform.localRotation));
        }