Как в Photon Bolt отправить список целочисленных данных в токене вместе с событием?C#

Место общения программистов C#
Anonymous
Как в Photon Bolt отправить список целочисленных данных в токене вместе с событием?

Сообщение Anonymous »

Мои коды:

Код: Выделить всё

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using Bolt;
using UdpKit;
//using System.Linq;
using System.Runtime.Serialization.Formatters.Binary;
using System.IO;

public class ListOfIntToken : IProtocolToken
{
public List intList;
public int byteArraySize;

public void Read(UdpPacket packet)
{
byteArraySize = packet.ReadInt();
var objectBytes = packet.ReadByteArray(byteArraySize);
var mStream = new MemoryStream();
var binFormatter = new BinaryFormatter();
mStream.Write(objectBytes, 0, objectBytes.Length);
mStream.Position = 0;
intList = binFormatter.Deserialize(mStream) as List;
}

public void Write(UdpPacket packet)
{
var binFormatter = new BinaryFormatter();
var mStream = new MemoryStream();
binFormatter.Serialize(mStream, intList);
//byte[] bytes = userId.Select(x => (byte)x).ToArray();
var byteArray = mStream.ToArray();
byteArraySize = byteArray.Length;
packet.WriteInt(byteArraySize);
packet.WriteByteArray(byteArray);
}
}
У меня есть два клиента, работающие под управлением A и B. A — это сервер. Оба отправляют событие с этим токеном, но с разными данными для тестирования. В методе Write я распечатываю byteArraySize, а когда данные поступают на сервер, я тоже их распечатываю. byteArraySize для данных A равен 0, а время его печати находится перед строкой печати в, где размер был 221. Однако для данных B размер был правильным. Что может вызвать эту проблему?

Подробнее здесь: https://stackoverflow.com/questions/650 ... with-event

Вернуться в «C#»