Пример #1
0
        internal static void Despawn(NetObject obj)
        {
            if (!IsServer)
            {
                return;
            }

            if (Tracker == null)
            {
                return;
            }

            if (obj.OwnerID != 0)
            {
                Server.GetClient(obj.OwnerID, true)?.RemoveObj(obj);
            }

            // Send a message to all clients to despawn this object.
            NetOutgoingMessage msg = Server.CreateMessage(JDataType.DESPAWN, 16);

            // Instance Net ID.
            msg.Write(obj.NetID);

            // Send to all except local.
            Server.SendToAllExcept(Client?.ServerConnection, msg, NetDeliveryMethod.ReliableOrdered, 0);

            Tracker.Unregister(obj);
        }