GetInt() публичный Метод

public GetInt ( ) : int
Результат int
Пример #1
0
 public void OnNetworkReceive(NetPeer peer, NetDataReader reader)
 {
     if (reader.AvailableBytes == 13218)
     {
         Console.WriteLine("[{0}] TestFrag: {1}, {2}", peer.Handler.LocalEndPoint.Port, reader.Data[0], reader.Data[13217]);
     }
     else
     {
         int type = reader.GetInt();
         int num = reader.GetInt();
         _messagesReceivedCount++;
         Console.WriteLine("[{0}] CNT: {1}, TYPE: {2}, NUM: {3}", peer.Handler.LocalEndPoint.Port, _messagesReceivedCount, type, num);
     }
 }
        public static Dictionary <TKey, TValue> GetDictionary <TKey, TValue>(this NetDataReader reader)
        {
            int count = reader.GetInt();
            Dictionary <TKey, TValue> result = new Dictionary <TKey, TValue>();

            for (int i = 0; i < count; ++i)
            {
                result.Add(reader.GetValue <TKey>(), reader.GetValue <TValue>());
            }
            return(result);
        }
        public static List <TValue> GetList <TValue>(this NetDataReader reader)
        {
            int           count  = reader.GetInt();
            List <TValue> result = new List <TValue>();

            for (int i = 0; i < count; ++i)
            {
                result.Add(reader.GetValue <TValue>());
            }
            return(result);
        }
        public static object GetArray(this NetDataReader reader, Type type)
        {
            int   count = reader.GetInt();
            Array array = Array.CreateInstance(type, count);

            for (int i = 0; i < count; ++i)
            {
                array.SetValue(reader.GetValue(type), i);
            }
            return(array);
        }
        public static TValue[] GetArray <TValue>(this NetDataReader reader)
        {
            int count = reader.GetInt();

            TValue[] result = new TValue[count];
            for (int i = 0; i < count; ++i)
            {
                result[i] = reader.GetValue <TValue>();
            }
            return(result);
        }
 public static Vector3Int GetVector3Int(this NetDataReader reader)
 {
     return(new Vector3Int(reader.GetInt(), reader.GetInt(), reader.GetInt()));
 }
 public override void Read(T inf, NetDataReader r)
 {
     Setter(inf, r.GetInt());
 }
 public override void Read(T inf, NetDataReader r)
 {
     Property.SetValue(inf, Enum.ToObject(PropertyType, r.GetInt()), null);
 }
Пример #9
0
        public static object GetValue(this NetDataReader reader, Type type)
        {
            #region Generic Values

            if (type.IsPrimitive)
            {
                if (type == typeof(bool))
                {
                    return(reader.GetBool());
                }

                if (type == typeof(byte))
                {
                    return(reader.GetByte());
                }

                if (type == typeof(ushort))
                {
                    return(reader.GetUShort());
                }

                if (type == typeof(int))
                {
                    return(reader.GetInt());
                }

                if (type == typeof(float))
                {
                    return(reader.GetFloat());
                }

                if (type == typeof(short))
                {
                    return(reader.GetShort());
                }

                if (type == typeof(string))
                {
                    return(reader.GetString());
                }

                if (type == typeof(uint))
                {
                    return(reader.GetUInt());
                }

                if (type == typeof(long))
                {
                    return(reader.GetLong());
                }

                if (type == typeof(char))
                {
                    return(reader.GetChar());
                }

                if (type == typeof(double))
                {
                    return(reader.GetDouble());
                }

                if (type == typeof(sbyte))
                {
                    return(reader.GetSByte());
                }


                if (type == typeof(ulong))
                {
                    return(reader.GetULong());
                }

                throw new ArgumentException("NetDataReader cannot read type " + type.Name);
            }
            else if (type.IsArray)
            {
                if (type == typeof(bool[]))
                {
                    return(reader.GetBoolArray());
                }

                if (type == typeof(byte[]))
                {
                    return(reader.GetBytesWithLength());
                }

                if (type == typeof(double[]))
                {
                    return(reader.GetDoubleArray());
                }

                if (type == typeof(float[]))
                {
                    return(reader.GetFloatArray());
                }

                if (type == typeof(int[]))
                {
                    return(reader.GetIntArray());
                }

                if (type == typeof(long[]))
                {
                    return(reader.GetLongArray());
                }

                if (type == typeof(short[]))
                {
                    return(reader.GetShortArray());
                }

                if (type == typeof(uint[]))
                {
                    return(reader.GetUIntArray());
                }

                if (type == typeof(ulong[]))
                {
                    return(reader.GetULongArray());
                }

                if (type == typeof(ushort[]))
                {
                    return(reader.GetUShortArray());
                }

                throw new ArgumentException("NetDataReader cannot read type " + type.Name);
            }
            else if (typeof(INetSerializable).IsAssignableFrom(type))
            {
                object instance = Activator.CreateInstance(type);
                ((INetSerializable)instance).Deserialize(reader);
                return(instance);
            }
            else
            {
                #region Unity Values
#if UNITY_2019
                if (type == typeof(Color))
                {
                    return(reader.GetColor());
                }

                if (type == typeof(Quaternion))
                {
                    return(reader.GetQuaternion());
                }

                if (type == typeof(Vector2))
                {
                    return(reader.GetVector2());
                }

                if (type == typeof(Vector2Int))
                {
                    return(reader.GetVector2Int());
                }

                if (type == typeof(Vector3))
                {
                    return(reader.GetVector3());
                }

                if (type == typeof(Vector3Int))
                {
                    return(reader.GetVector3Int());
                }

                if (type == typeof(Vector4))
                {
                    return(reader.GetVector4());
                }
#endif
                #endregion

                if (type == typeof(string))
                {
                    return(reader.GetString());
                }

                throw new ArgumentException("NetDataReader cannot read type " + type.Name);
            }
            #endregion
        }