Esempio n. 1
0
        public static List <T> ReadList <T>(this NetworkReader reader)
        {
            int length = reader.ReadPackedInt32();

            if (length < 0)
            {
                return(null);
            }
            var result = new List <T>(length);

            for (int i = 0; i < length; i++)
            {
                result.Add(reader.Read <T>());
            }
            return(result);
        }
Esempio n. 2
0
        public static T[] ReadArray <T>(this NetworkReader reader)
        {
            int length = reader.ReadPackedInt32();

            if (length < 0)
            {
                return(null);
            }
            if (length > reader.Length - reader.Position)
            {
                throw new EndOfStreamException("Can't read " + length + " elements because it would read past the end of the stream. ");
            }
            var result = new T[length];

            for (int i = 0; i < length; i++)
            {
                result[i] = reader.Read <T>();
            }
            return(result);
        }
Esempio n. 3
0
 public static Vector3Int ReadVector3Int(this NetworkReader reader) => new Vector3Int(reader.ReadPackedInt32(), reader.ReadPackedInt32(), reader.ReadPackedInt32());