Beispiel #1
0
        public static Type GetProtobufMessageBodyType(uint realEMsg)
        {
            EMsg eMsg = MsgUtil.GetMsg(realEMsg);

            if (MessageTypeOverrides.BodyMap.ContainsKey(eMsg))
            {
                return(MessageTypeOverrides.BodyMap[eMsg]);
            }

            var protomsgType = SteamKit2Assembly.GetTypes().ToList().Find(t => FilterProtobufMessageBodyType(t, eMsg));

            return(protomsgType);
        }
Beispiel #2
0
        public static Type GetProtobufMessageBodyType(uint realEMsg)
        {
            EMsg eMsg = MsgUtil.GetMsg(realEMsg);

            if (MessageTypeOverrides.BodyMap.TryGetValue(eMsg, out var wellKnownType))
            {
                return(wellKnownType);
            }

            var protomsgType = SteamKit2Assembly.GetTypes().ToList().Find(t => FilterProtobufMessageBodyType(t, eMsg));

            return(protomsgType);
        }
Beispiel #3
0
        public static Type GetNonProtobufMessageBodyType(EMsg eMsg)
        {
            // lets first find the type by checking all EMsgs we have
            var msgType = SteamKit2Assembly.GetTypes().ToList().Find(type =>
            {
                if (type.GetInterfaces().ToList().Find(@interface => @interface == typeof(ISteamSerializableMessage)) == null)
                {
                    return(false);
                }

                var gcMsg = Activator.CreateInstance(type) as ISteamSerializableMessage;

                return(gcMsg.GetEMsg() == eMsg);
            });

            return(msgType);
        }
Beispiel #4
0
 public static Type GetSteamKitType(string name)
 {
     return(SteamKit2Assembly.GetTypes().ToList().Find(type => type.FullName == name));
 }