Exemplo n.º 1
1
 public static void SendFriendRequest(XDevkit.IXboxConsole xbc, Xuid xuidFrom, Xuid xuidTo)
 {
     try
     {
         XDRPCExecutionOptions options = new XDRPCExecutionOptions(XDRPCMode.Title, "xam.xex", 0x4e6);
         XDRPCArgumentInfo<ulong> info = new XDRPCArgumentInfo<ulong>((ulong)xuidFrom);
         XDRPCArgumentInfo<ulong> info2 = new XDRPCArgumentInfo<ulong>((ulong)xuidTo);
         XDRPCNullArgumentInfo info3 = new XDRPCNullArgumentInfo();
         uint errorCode = ((XDevkit.IXboxConsole)xbc).ExecuteRPC<uint>(options, new XDRPCArgumentInfo[] { info, info2, info3 });
         if (errorCode != 0)
         {
             //throw ProfilesExceptionFactory.CreateExceptionFromErrorCode(errorCode);
         }
     }
     catch (XDRPCException exception)
     {
         //throw new ProfilesException(exception);
     }
 }
Exemplo n.º 2
0
 static public void SendFriendRequest(XDevkit.IXboxConsole xbc, Xuid xuidFrom, Xuid xuidTo)
 {
     try
     {
         XDRPCExecutionOptions     options = new XDRPCExecutionOptions(XDRPCMode.Title, "xam.xex", 0x4e6);
         XDRPCArgumentInfo <ulong> info    = new XDRPCArgumentInfo <ulong>((ulong)xuidFrom);
         XDRPCArgumentInfo <ulong> info2   = new XDRPCArgumentInfo <ulong>((ulong)xuidTo);
         XDRPCNullArgumentInfo     info3   = new XDRPCNullArgumentInfo();
         uint errorCode = ((XDevkit.IXboxConsole)xbc).ExecuteRPC <uint>(options, new XDRPCArgumentInfo[] { info, info2, info3 });
         if (errorCode != 0)
         {
             //throw ProfilesExceptionFactory.CreateExceptionFromErrorCode(errorCode);
         }
     }
     catch (XDRPCException exception)
     {
         //throw new ProfilesException(exception);
     }
 }
Exemplo n.º 3
0
        //static public string[] ListFGamerTags = new string[32];
        //static public string[] ListFSXuid = new string[8];
        //static public ulong[] ListFLXuid = new ulong[8];

        //static public IEnumerable<Friend> EnumerateFriends(XDevkit.IXboxConsole xbc, UserIndex userIndex)
        //static public void GetMyFriends(XDevkit.IXboxConsole xbc, UserIndex userIndex)
        //{
        //    uint friendIndex = 0;
        //    while (true)
        //    {
        //        XONLINE_FRIEND iteratorVariable0;
        //        if (GetNextFriend(xbc, userIndex, friendIndex, out iteratorVariable0) != 0)
        //        {
        //            yield break;
        //        }
        //        FriendRequestStatus requestAccepted = FriendRequestStatus.RequestAccepted;
        //        if ((iteratorVariable0.dwFriendState & 0x40000000) > 0)
        //        {
        //            requestAccepted = FriendRequestStatus.RequestSent;
        //        }
        //        else if ((iteratorVariable0.dwFriendState & 0x80000000) > 0)
        //        {
        //            requestAccepted = FriendRequestStatus.RequestReceived;
        //        }
        //        FriendStatus offline = FriendStatus.Offline;
        //        if ((iteratorVariable0.dwFriendState & 1) > 0)
        //        {
        //            offline = ((FriendStatus)iteratorVariable0.dwFriendState) & ((FriendStatus)0xf0000);
        //        }
        //        //Friend iteratorVariable4 = new Friend(iteratorVariable0.szGamertag, iteratorVariable0.xuid, requestAccepted, offline, iteratorVariable0.wszRichPresence, iteratorVariable0.dwTitleID);
        //        //yield return iteratorVariable4;
        //        friendIndex++;
        //    }
        //}

        static private uint GetNextFriend(XDevkit.IXboxConsole xbc, UserIndex userIndex, uint friendIndex, out XONLINE_FRIEND friend)
        {
            uint num2;

            //try
            //{
            friend = new XONLINE_FRIEND();
            XDRPCExecutionOptions    options = new XDRPCExecutionOptions(XDRPCMode.Title, "xam.xex", 0x4ea);
            XDRPCArgumentInfo <uint> info    = new XDRPCArgumentInfo <uint>((uint)userIndex);
            XDRPCArgumentInfo <uint> info2   = new XDRPCArgumentInfo <uint>(friendIndex);
            XDRPCArgumentInfo <uint> info3   = new XDRPCArgumentInfo <uint>(1);
            XDRPCArgumentInfo <uint> info4   = new XDRPCArgumentInfo <uint>(0, ArgumentType.Out);
            XDRPCArgumentInfo <uint> info5   = new XDRPCArgumentInfo <uint>(0, ArgumentType.Out);
            uint num = ((XDevkit.IXboxConsole)xbc).ExecuteRPC <uint>(options, new XDRPCArgumentInfo[] { info, info2, info3, info4, info5 });

            if (num == 0)
            {
                options = new XDRPCExecutionOptions(XDRPCMode.Title, "xam.xex", 0x250);
                info5   = new XDRPCArgumentInfo <uint>(info5.Value);
                XDRPCArgumentInfo <uint> info6 = new XDRPCArgumentInfo <uint>(0);
                XDRPCStructArgumentInfo <XONLINE_FRIEND> info7 = new XDRPCStructArgumentInfo <XONLINE_FRIEND>(new XONLINE_FRIEND(), ArgumentType.Out);
                info4 = new XDRPCArgumentInfo <uint>(info4.Value);
                XDRPCArgumentInfo <uint> info8 = new XDRPCArgumentInfo <uint>(0, ArgumentType.Out);
                XDRPCNullArgumentInfo    info9 = new XDRPCNullArgumentInfo();
                num     = ((XDevkit.IXboxConsole)xbc).ExecuteRPC <uint>(options, new XDRPCArgumentInfo[] { info5, info6, info7, info4, info8, info9 });
                friend  = info7.Value;
                options = new XDRPCExecutionOptions(XDRPCMode.Title, "xam.xex", 0x414);
                ((XDevkit.IXboxConsole)xbc).ExecuteRPC <bool>(options, new XDRPCArgumentInfo[] { info5 });
            }
            num2 = num;
            //}
            //catch (XDRPCException exception)
            //{
            //    //throw new ProfilesException(exception);
            //}
            return(num2);
        }
Exemplo n.º 4
0
 //static public string[] ListFGamerTags = new string[32];
 //static public string[] ListFSXuid = new string[8];
 //static public ulong[] ListFLXuid = new ulong[8];
 //static public IEnumerable<Friend> EnumerateFriends(XDevkit.IXboxConsole xbc, UserIndex userIndex)
 //static public void GetMyFriends(XDevkit.IXboxConsole xbc, UserIndex userIndex)
 //{
 //    uint friendIndex = 0;
 //    while (true)
 //    {
 //        XONLINE_FRIEND iteratorVariable0;
 //        if (GetNextFriend(xbc, userIndex, friendIndex, out iteratorVariable0) != 0)
 //        {
 //            yield break;
 //        }
 //        FriendRequestStatus requestAccepted = FriendRequestStatus.RequestAccepted;
 //        if ((iteratorVariable0.dwFriendState & 0x40000000) > 0)
 //        {
 //            requestAccepted = FriendRequestStatus.RequestSent;
 //        }
 //        else if ((iteratorVariable0.dwFriendState & 0x80000000) > 0)
 //        {
 //            requestAccepted = FriendRequestStatus.RequestReceived;
 //        }
 //        FriendStatus offline = FriendStatus.Offline;
 //        if ((iteratorVariable0.dwFriendState & 1) > 0)
 //        {
 //            offline = ((FriendStatus)iteratorVariable0.dwFriendState) & ((FriendStatus)0xf0000);
 //        }
 //        //Friend iteratorVariable4 = new Friend(iteratorVariable0.szGamertag, iteratorVariable0.xuid, requestAccepted, offline, iteratorVariable0.wszRichPresence, iteratorVariable0.dwTitleID);
 //        //yield return iteratorVariable4;
 //        friendIndex++;
 //    }
 //}
 private static uint GetNextFriend(XDevkit.IXboxConsole xbc, UserIndex userIndex, uint friendIndex, out XONLINE_FRIEND friend)
 {
     uint num2;
     //try
     //{
         friend = new XONLINE_FRIEND();
         XDRPCExecutionOptions options = new XDRPCExecutionOptions(XDRPCMode.Title, "xam.xex", 0x4ea);
         XDRPCArgumentInfo<uint> info = new XDRPCArgumentInfo<uint>((uint)userIndex);
         XDRPCArgumentInfo<uint> info2 = new XDRPCArgumentInfo<uint>(friendIndex);
         XDRPCArgumentInfo<uint> info3 = new XDRPCArgumentInfo<uint>(1);
         XDRPCArgumentInfo<uint> info4 = new XDRPCArgumentInfo<uint>(0, ArgumentType.Out);
         XDRPCArgumentInfo<uint> info5 = new XDRPCArgumentInfo<uint>(0, ArgumentType.Out);
         uint num = ((XDevkit.IXboxConsole)xbc).ExecuteRPC<uint>(options, new XDRPCArgumentInfo[] { info, info2, info3, info4, info5 });
         if (num == 0)
         {
             options = new XDRPCExecutionOptions(XDRPCMode.Title, "xam.xex", 0x250);
             info5 = new XDRPCArgumentInfo<uint>(info5.Value);
             XDRPCArgumentInfo<uint> info6 = new XDRPCArgumentInfo<uint>(0);
             XDRPCStructArgumentInfo<XONLINE_FRIEND> info7 = new XDRPCStructArgumentInfo<XONLINE_FRIEND>(new XONLINE_FRIEND(), ArgumentType.Out);
             info4 = new XDRPCArgumentInfo<uint>(info4.Value);
             XDRPCArgumentInfo<uint> info8 = new XDRPCArgumentInfo<uint>(0, ArgumentType.Out);
             XDRPCNullArgumentInfo info9 = new XDRPCNullArgumentInfo();
             num = ((XDevkit.IXboxConsole)xbc).ExecuteRPC<uint>(options, new XDRPCArgumentInfo[] { info5, info6, info7, info4, info8, info9 });
             friend = info7.Value;
             options = new XDRPCExecutionOptions(XDRPCMode.Title, "xam.xex", 0x414);
             ((XDevkit.IXboxConsole)xbc).ExecuteRPC<bool>(options, new XDRPCArgumentInfo[] { info5 });
         }
         num2 = num;
     //}
     //catch (XDRPCException exception)
     //{
     //    //throw new ProfilesException(exception);
     //}
     return num2;
 }