private void OnMessagingGotGameInvite(Messages.PluginMessage msg) { OnScreenLog.Add("Got game invite..."); GameInviteData gameInviteData = new GameInviteData(); byte[] gameInviteAttachment = Messaging.GetGameInviteAttachment(); gameInviteData.ReadFromBuffer(gameInviteAttachment); OnScreenLog.Add(" taunt: " + gameInviteData.taunt); OnScreenLog.Add(" level: " + gameInviteData.level); OnScreenLog.Add(" score: " + gameInviteData.score); }
public void MenuMessaging(MenuStack menuStack) { menuMessaging.Update(); if (menuMessaging.AddItem("Show Messages & Invites", User.IsSignedInPSN && !Messaging.IsBusy())) { Messaging.ShowRecievedDataMessageDialog(); } if (menuMessaging.AddItem("Send Session Invite", User.IsSignedInPSN && Matching.InSession)) { string text = "Join my session"; int npIDCount = 8; Matching.InviteToSession(text, npIDCount); } if (menuMessaging.AddItem("Send Game Invite", User.IsSignedInPSN && !Messaging.IsBusy())) { GameInviteData gameInviteData = new GameInviteData(); gameInviteData.taunt = "I got an awesome score, can you do better?"; gameInviteData.level = 1; gameInviteData.score = 123456789; byte[] data = gameInviteData.WriteToBuffer(); Messaging.MsgRequest msgRequest = new Messaging.MsgRequest(); msgRequest.body = "Game invite"; msgRequest.expireMinutes = 30; msgRequest.data = data; msgRequest.npIDCount = 8; string dataDescription = "Some data to test invite messages"; string dataName = "Test data"; msgRequest.dataDescription = dataDescription; msgRequest.dataName = dataName; msgRequest.iconPath = Application.streamingAssetsPath + "/PSP2SessionImage.jpg"; Messaging.SendMessage(msgRequest); } if (menuMessaging.AddItem("Send Data Message", User.IsSignedInPSN && !Messaging.IsBusy())) { GameData gameData = default(GameData); gameData.text = "Here's some data"; gameData.item1 = 2; gameData.item2 = 987654321; byte[] data2 = gameData.WriteToBuffer(); Messaging.MsgRequest msgRequest2 = new Messaging.MsgRequest(); msgRequest2.body = "Data message"; msgRequest2.expireMinutes = 0; msgRequest2.data = data2; msgRequest2.npIDCount = 8; string dataDescription2 = "Some data to test messages"; string dataName2 = "Test data"; msgRequest2.dataDescription = dataDescription2; msgRequest2.dataName = dataName2; msgRequest2.iconPath = Application.streamingAssetsPath + "/PSP2SessionImage.jpg"; Messaging.SendMessage(msgRequest2); } if (menuMessaging.AddItem("Send In Game Data (Session)", Matching.InSession && !Messaging.IsBusy())) { Matching.Session session = Matching.GetSession(); Matching.SessionMemberInfo[] members = session.members; if (members == null) { return; } int num = -1; for (int i = 0; i < members.Length; i++) { if ((members[i].memberFlag & Matching.FlagMemberType.MEMBER_MYSELF) == 0) { num = i; break; } } if (num >= 0) { OnScreenLog.Add("Sending in game data message to " + members[num].npOnlineID); GameData gameData2 = default(GameData); gameData2.text = "Here's some data"; gameData2.item1 = 2; gameData2.item2 = 987654321; byte[] data3 = gameData2.WriteToBuffer(); Messaging.SendInGameDataMessage(members[num].npID, data3); } else { OnScreenLog.Add("No session member to send to."); } } if (menuMessaging.AddItem("Send In Game Message (Friend)", User.IsSignedInPSN && !Messaging.IsBusy())) { Friends.Friend[] cachedFriendsList = Friends.GetCachedFriendsList(); if (cachedFriendsList.Length > 0) { int num2 = 0; if (num2 >= 0) { OnScreenLog.Add("Sending in game data message to " + cachedFriendsList[num2].npOnlineID); GameData gameData3 = default(GameData); gameData3.text = "Here's some data"; gameData3.item1 = 2; gameData3.item2 = 987654321; byte[] data4 = gameData3.WriteToBuffer(); Messaging.SendInGameDataMessage(cachedFriendsList[num2].npID, data4); } else { OnScreenLog.Add("No friends in this context."); } } else { OnScreenLog.Add("No friends cached."); OnScreenLog.Add("refresh the friends list then try again."); } } if (menuMessaging.AddBackIndex("Back")) { menuStack.PopMenu(); } }