Ejemplo n.º 1
0
    private void SendData()
    {
        NetworkEventOptions networkEventOptions = new NetworkEventOptions {
            TargetActors = jonedPlayer.ToArray(),
            Receiver     = NetworkReceiverGroup.Target,
        };

        if (LogSendMessages)
        {
            Debug.Log("SendFullState:\n" + NetworkMessageUtility.ToString(networkSendMessageUtility.DataContainer));
        }
        networkManager.SendMessage(NetworkEvents.DataSync, messageSerializer.Serialize(networkSendMessageUtility.DataContainer), true, networkEventOptions);
        networkSendMessageUtility.Reset();
    }
Ejemplo n.º 2
0
    private void SendData()
    {
        NetworkEventOptions networkEventOptions = new NetworkEventOptions();

        byte[] data;
        if (networkManager.IsMaster)
        {
            if (!AllNetworkSendMessageUtility.DataContainer.AddedNetworkSyncEntities.Any() &&
                !AllNetworkSendMessageUtility.DataContainer.RemovedNetworkSyncEntities.Any() &&
                !AllNetworkSendMessageUtility.DataContainer.NetworkSyncDataEntities.Any())
            {
                return;
            }

            networkEventOptions.Receiver = NetworkReceiverGroup.Others;
            if (LogSendMessages)
            {
                LastSendMessage = NetworkMessageUtility.ToString(AllNetworkSendMessageUtility.DataContainer);
            }
            data = messageSerializer.Serialize(AllNetworkSendMessageUtility.DataContainer);
        }
        else
        {
            if (!ownNetworkSendMessageUtility.DataContainer.AddedNetworkSyncEntities.Any() &&
                !ownNetworkSendMessageUtility.DataContainer.RemovedNetworkSyncEntities.Any() &&
                !ownNetworkSendMessageUtility.DataContainer.NetworkSyncDataEntities.Any())
            {
                return;
            }

            networkEventOptions.Receiver = NetworkReceiverGroup.MasterClient;
            if (LogSendMessages)
            {
                LastSendMessage = NetworkMessageUtility.ToString(ownNetworkSendMessageUtility.DataContainer);
            }
            data = messageSerializer.Serialize(ownNetworkSendMessageUtility.DataContainer);
        }
        //Debug.Log("NetworkSendSystem:\n" + LastSendMessage);
        networkManager.SendMessage(NetworkEvents.DataSync, data, true, networkEventOptions);

        ownNetworkSendMessageUtility.Reset();
        AllNetworkSendMessageUtility.Reset();
    }
Ejemplo n.º 3
0
    public void SendMessage(byte eventId, byte[] data, bool reliable, NetworkEventOptions networkEventOptions)
    {
        switch (networkEventOptions.Receiver)
        {
        case NetworkReceiverGroup.Others:
            eventOption.Receivers = ReceiverGroup.Others;
            break;

        case NetworkReceiverGroup.MasterClient:
            eventOption.Receivers = ReceiverGroup.MasterClient;
            break;

        case NetworkReceiverGroup.Target:
            break;

        default:
            break;
        }
        eventOption.TargetActors = networkEventOptions.TargetActors;
        SendMessage(eventId, data, reliable, eventOption);
    }