using System; using System.Runtime.InteropServices; using System.Text; namespace Sony.NP { // Token: 0x02000042 RID: 66 public class Matching { // Token: 0x06000130 RID: 304 [DllImport("UnityNpToolkit2")] private static extern int PrxSetInitConfiguration(Matching.SetInitConfigurationRequest request, out APIResult result); // Token: 0x06000131 RID: 305 [DllImport("UnityNpToolkit2")] private static extern int PrxGetWorlds(Matching.GetWorldsRequest request, out APIResult result); // Token: 0x06000132 RID: 306 [DllImport("UnityNpToolkit2")] private static extern int PrxCreateRoom(Matching.CreateRoomRequest request, out APIResult result); // Token: 0x06000133 RID: 307 [DllImport("UnityNpToolkit2")] private static extern int PrxLeaveRoom(Matching.LeaveRoomRequest request, out APIResult result); // Token: 0x06000134 RID: 308 [DllImport("UnityNpToolkit2")] private static extern int PrxSearchRooms(Matching.SearchRoomsRequest request, out APIResult result); // Token: 0x06000135 RID: 309 [DllImport("UnityNpToolkit2")] private static extern int PrxJoinRoom(Matching.JoinRoomRequest request, out APIResult result); // Token: 0x06000136 RID: 310 [DllImport("UnityNpToolkit2")] private static extern int PrxGetRoomPingTime(Matching.GetRoomPingTimeRequest request, out APIResult result); // Token: 0x06000137 RID: 311 [DllImport("UnityNpToolkit2")] private static extern int PrxKickOutRoomMember(Matching.KickOutRoomMemberRequest request, out APIResult result); // Token: 0x06000138 RID: 312 [DllImport("UnityNpToolkit2")] private static extern int PrxSendRoomMessage(Matching.SendRoomMessageRequest request, out APIResult result); // Token: 0x06000139 RID: 313 [DllImport("UnityNpToolkit2")] private static extern int PrxGetAttributes(Matching.GetAttributesRequest request, out APIResult result); // Token: 0x0600013A RID: 314 [DllImport("UnityNpToolkit2")] private static extern int PrxSetRoomInfo(Matching.SetRoomInfoRequest request, out APIResult result); // Token: 0x0600013B RID: 315 [DllImport("UnityNpToolkit2")] private static extern int PrxSendInvitation(Matching.SendInvitationRequest request, out APIResult result); // Token: 0x0600013C RID: 316 [DllImport("UnityNpToolkit2")] private static extern int PrxGetData(Matching.GetDataRequest request, out APIResult result); // Token: 0x0600013D RID: 317 RVA: 0x00004C5C File Offset: 0x00003C5C public static int SetInitConfiguration(Matching.SetInitConfigurationRequest request, Core.EmptyResponse response) { if (response.locked) { throw new NpToolkitException("Response object is already locked"); } APIResult apiresult; int num = Matching.PrxSetInitConfiguration(request, out apiresult); if (apiresult.RaiseException) { throw new NpToolkitException(apiresult); } RequestBase.FinaliseRequest(request, response, num); return num; } // Token: 0x0600013E RID: 318 RVA: 0x00004CB0 File Offset: 0x00003CB0 public static int GetWorlds(Matching.GetWorldsRequest request, Matching.WorldsResponse response) { if (response.locked) { throw new NpToolkitException("Response object is already locked"); } APIResult apiresult; int num = Matching.PrxGetWorlds(request, out apiresult); if (apiresult.RaiseException) { throw new NpToolkitException(apiresult); } RequestBase.FinaliseRequest(request, response, num); return num; } // Token: 0x0600013F RID: 319 RVA: 0x00004D04 File Offset: 0x00003D04 public static int CreateRoom(Matching.CreateRoomRequest request, Matching.RoomResponse response) { if (response.locked) { throw new NpToolkitException("Response object is already locked"); } if (!request.image.IsValid()) { throw new NpToolkitException("Request Image hasn't be defined. A session can't be created without an image."); } if (!request.image.Exists()) { throw new NpToolkitException("Request Image doesn't exists. A session can't be created without an image. " + request.image.sessionImgPath); } if (request.status == null || request.status.Length == 0) { throw new NpToolkitException("Request Status text doesn't exists. A session can't be created without Status text being set."); } APIResult apiresult; int num = Matching.PrxCreateRoom(request, out apiresult); if (apiresult.RaiseException) { throw new NpToolkitException(apiresult); } RequestBase.FinaliseRequest(request, response, num); return num; } // Token: 0x06000140 RID: 320 RVA: 0x00004DCC File Offset: 0x00003DCC public static int LeaveRoom(Matching.LeaveRoomRequest request, Core.EmptyResponse response) { if (response.locked) { throw new NpToolkitException("Response object is already locked"); } APIResult apiresult; int num = Matching.PrxLeaveRoom(request, out apiresult); if (apiresult.RaiseException) { throw new NpToolkitException(apiresult); } RequestBase.FinaliseRequest(request, response, num); return num; } // Token: 0x06000141 RID: 321 RVA: 0x00004E20 File Offset: 0x00003E20 public static int SearchRooms(Matching.SearchRoomsRequest request, Matching.RoomsResponse response) { if (response.locked) { throw new NpToolkitException("Response object is already locked"); } APIResult apiresult; int num = Matching.PrxSearchRooms(request, out apiresult); if (apiresult.RaiseException) { throw new NpToolkitException(apiresult); } RequestBase.FinaliseRequest(request, response, num); return num; } // Token: 0x06000142 RID: 322 RVA: 0x00004E74 File Offset: 0x00003E74 public static int JoinRoom(Matching.JoinRoomRequest request, Matching.RoomResponse response) { if (response.locked) { throw new NpToolkitException("Response object is already locked"); } APIResult apiresult; int num = Matching.PrxJoinRoom(request, out apiresult); if (apiresult.RaiseException) { throw new NpToolkitException(apiresult); } RequestBase.FinaliseRequest(request, response, num); return num; } // Token: 0x06000143 RID: 323 RVA: 0x00004EC8 File Offset: 0x00003EC8 public static int GetRoomPingTime(Matching.GetRoomPingTimeRequest request, Matching.GetRoomPingTimeResponse response) { if (response.locked) { throw new NpToolkitException("Response object is already locked"); } APIResult apiresult; int num = Matching.PrxGetRoomPingTime(request, out apiresult); if (apiresult.RaiseException) { throw new NpToolkitException(apiresult); } RequestBase.FinaliseRequest(request, response, num); return num; } // Token: 0x06000144 RID: 324 RVA: 0x00004F1C File Offset: 0x00003F1C public static int KickOutRoomMember(Matching.KickOutRoomMemberRequest request, Core.EmptyResponse response) { if (response.locked) { throw new NpToolkitException("Response object is already locked"); } APIResult apiresult; int num = Matching.PrxKickOutRoomMember(request, out apiresult); if (apiresult.RaiseException) { throw new NpToolkitException(apiresult); } RequestBase.FinaliseRequest(request, response, num); return num; } // Token: 0x06000145 RID: 325 RVA: 0x00004F70 File Offset: 0x00003F70 public static int SendRoomMessage(Matching.SendRoomMessageRequest request, Core.EmptyResponse response) { if (response.locked) { throw new NpToolkitException("Response object is already locked"); } APIResult apiresult; int num = Matching.PrxSendRoomMessage(request, out apiresult); if (apiresult.RaiseException) { throw new NpToolkitException(apiresult); } RequestBase.FinaliseRequest(request, response, num); return num; } // Token: 0x06000146 RID: 326 RVA: 0x00004FC4 File Offset: 0x00003FC4 public static int GetAttributes(Matching.GetAttributesRequest request, Matching.RefreshRoomResponse response) { if (response.locked) { throw new NpToolkitException("Response object is already locked"); } APIResult apiresult; int num = Matching.PrxGetAttributes(request, out apiresult); if (apiresult.RaiseException) { throw new NpToolkitException(apiresult); } RequestBase.FinaliseRequest(request, response, num); return num; } // Token: 0x06000147 RID: 327 RVA: 0x00005018 File Offset: 0x00004018 public static int GetData(Matching.GetDataRequest request, Matching.GetDataResponse response) { if (response.locked) { throw new NpToolkitException("Response object is already locked"); } APIResult apiresult; int num = Matching.PrxGetData(request, out apiresult); if (apiresult.RaiseException) { throw new NpToolkitException(apiresult); } RequestBase.FinaliseRequest(request, response, num); return num; } // Token: 0x06000148 RID: 328 RVA: 0x0000506C File Offset: 0x0000406C public static int SendInvitation(Matching.SendInvitationRequest request, Core.EmptyResponse response) { if (response.locked) { throw new NpToolkitException("Response object is already locked"); } APIResult apiresult; int num = Matching.PrxSendInvitation(request, out apiresult); if (apiresult.RaiseException) { throw new NpToolkitException(apiresult); } RequestBase.FinaliseRequest(request, response, num); return num; } // Token: 0x06000149 RID: 329 RVA: 0x000050C0 File Offset: 0x000040C0 public static int SetRoomInfo(Matching.SetRoomInfoRequest request, Core.EmptyResponse response) { if (response.locked) { throw new NpToolkitException("Response object is already locked"); } APIResult apiresult; int num = Matching.PrxSetRoomInfo(request, out apiresult); if (apiresult.RaiseException) { throw new NpToolkitException(apiresult); } RequestBase.FinaliseRequest(request, response, num); return num; } // Token: 0x040000C0 RID: 192 public const int INVALID_ROOM_MEMBER_ID = 0; // Token: 0x02000043 RID: 67 public enum AttributeType { // Token: 0x040000C2 RID: 194 Invalid, // Token: 0x040000C3 RID: 195 Integer, // Token: 0x040000C4 RID: 196 Binary } // Token: 0x02000044 RID: 68 public enum AttributeScope { // Token: 0x040000C6 RID: 198 Invalid, // Token: 0x040000C7 RID: 199 Room, // Token: 0x040000C8 RID: 200 Member } // Token: 0x02000045 RID: 69 public enum RoomAttributeVisibility { // Token: 0x040000CA RID: 202 Invalid, // Token: 0x040000CB RID: 203 Internal, // Token: 0x040000CC RID: 204 External, // Token: 0x040000CD RID: 205 Search } // Token: 0x02000046 RID: 70 public enum RoomVisibility { // Token: 0x040000CF RID: 207 Invalid, // Token: 0x040000D0 RID: 208 PublicRoom, // Token: 0x040000D1 RID: 209 PrivateRoom, // Token: 0x040000D2 RID: 210 ReserveSlots } // Token: 0x02000047 RID: 71 public enum RoomMigrationType { // Token: 0x040000D4 RID: 212 OwnerBind, // Token: 0x040000D5 RID: 213 OwnerMigration } // Token: 0x02000048 RID: 72 public enum TopologyType { // Token: 0x040000D7 RID: 215 Invalid, // Token: 0x040000D8 RID: 216 None, // Token: 0x040000D9 RID: 217 Mesh, // Token: 0x040000DA RID: 218 Star } // Token: 0x02000049 RID: 73 public struct AttributeMetadata { // Token: 0x17000075 RID: 117 // (get) Token: 0x0600014B RID: 331 RVA: 0x0000511C File Offset: 0x0000411C public string Name { get { return this.name; } } // Token: 0x17000076 RID: 118 // (get) Token: 0x0600014C RID: 332 RVA: 0x00005134 File Offset: 0x00004134 public Matching.AttributeType Type { get { return this.type; } } // Token: 0x17000077 RID: 119 // (get) Token: 0x0600014D RID: 333 RVA: 0x0000514C File Offset: 0x0000414C public Matching.AttributeScope Scope { get { return this.scope; } } // Token: 0x17000078 RID: 120 // (get) Token: 0x0600014E RID: 334 RVA: 0x00005164 File Offset: 0x00004164 public Matching.RoomAttributeVisibility RoomVisibility { get { return this.roomAttributeVisibility; } } // Token: 0x17000079 RID: 121 // (get) Token: 0x0600014F RID: 335 RVA: 0x0000517C File Offset: 0x0000417C public uint Size { get { return this.size; } } // Token: 0x06000150 RID: 336 RVA: 0x00005194 File Offset: 0x00004194 private void InternalSetAttribute(string name, Matching.AttributeType type, Matching.AttributeScope scope, Matching.RoomAttributeVisibility roomAttributeVisibility, uint size) { if (name.Length > 31) { throw new NpToolkitException(string.Concat(new object[] { "Attribute ", name, " : The size of the name string is more than ", 31, " characters." })); } if (type == Matching.AttributeType.Invalid) { throw new NpToolkitException("Attribute " + name + " : Can't set an Invalid type."); } if (scope == Matching.AttributeScope.Invalid) { throw new NpToolkitException("Attribute " + name + " : Can't set an Invalid scope."); } if (scope == Matching.AttributeScope.Room && roomAttributeVisibility == Matching.RoomAttributeVisibility.Invalid) { throw new NpToolkitException("Attribute " + name + " : Can't set an Invalid roomAttributeVisibility when Scope is Room."); } if (type == Matching.AttributeType.Integer && size != 8U) { throw new NpToolkitException("Attribute " + name + " : Integer attribute must be size 8."); } if (type == Matching.AttributeType.Binary && size > 256U) { throw new NpToolkitException(string.Concat(new object[] { "Attribute ", name, " : Binary attribute size must not be more than ", 256 })); } if (scope == Matching.AttributeScope.Member && roomAttributeVisibility != Matching.RoomAttributeVisibility.Invalid) { throw new NpToolkitException(string.Concat(new string[] { "Attribute ", name, " : A Member attribute can't set a RoomAttributeVisibility of ", roomAttributeVisibility.ToString(), ". It must always be set to RoomAttributeVisibility.Invalid." })); } if (roomAttributeVisibility == Matching.RoomAttributeVisibility.Search && type == Matching.AttributeType.Binary && size > 64U) { throw new NpToolkitException("Attribute " + name + " : A Binary Search attribute can't be more than 64 bytes."); } this.name = name; this.type = type; this.scope = scope; this.roomAttributeVisibility = roomAttributeVisibility; this.size = size; } // Token: 0x06000151 RID: 337 RVA: 0x00005372 File Offset: 0x00004372 internal void Read(MemoryBuffer buffer) { buffer.ReadString(ref this.name); this.type = (Matching.AttributeType)buffer.ReadUInt32(); this.scope = (Matching.AttributeScope)buffer.ReadUInt32(); this.roomAttributeVisibility = (Matching.RoomAttributeVisibility)buffer.ReadUInt32(); this.size = buffer.ReadUInt32(); } // Token: 0x06000152 RID: 338 RVA: 0x000053B4 File Offset: 0x000043B4 public static Matching.AttributeMetadata CreateIntegerAttribute(string name, Matching.AttributeScope scope, Matching.RoomAttributeVisibility roomAttributeVisibility) { Matching.AttributeMetadata attributeMetadata = default(Matching.AttributeMetadata); attributeMetadata.InternalSetAttribute(name, Matching.AttributeType.Integer, scope, roomAttributeVisibility, 8U); return attributeMetadata; } // Token: 0x06000153 RID: 339 RVA: 0x000053DC File Offset: 0x000043DC public static Matching.AttributeMetadata CreateBinaryAttribute(string name, Matching.AttributeScope scope, Matching.RoomAttributeVisibility roomAttributeVisibility, uint size) { Matching.AttributeMetadata attributeMetadata = default(Matching.AttributeMetadata); attributeMetadata.InternalSetAttribute(name, Matching.AttributeType.Binary, scope, roomAttributeVisibility, size); return attributeMetadata; } // Token: 0x040000DB RID: 219 public const int MAX_SIZE_NAME = 31; // Token: 0x040000DC RID: 220 [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 32)] internal string name; // Token: 0x040000DD RID: 221 internal Matching.AttributeType type; // Token: 0x040000DE RID: 222 internal Matching.AttributeScope scope; // Token: 0x040000DF RID: 223 internal Matching.RoomAttributeVisibility roomAttributeVisibility; // Token: 0x040000E0 RID: 224 internal uint size; } // Token: 0x0200004A RID: 74 public struct Attribute { // Token: 0x1700007A RID: 122 // (get) Token: 0x06000154 RID: 340 RVA: 0x00005404 File Offset: 0x00004404 public Matching.AttributeMetadata Metadata { get { return this.metadata; } } // Token: 0x1700007B RID: 123 // (get) Token: 0x06000155 RID: 341 RVA: 0x0000541C File Offset: 0x0000441C // (set) Token: 0x06000156 RID: 342 RVA: 0x00005468 File Offset: 0x00004468 public int IntValue { get { if (this.metadata.type != Matching.AttributeType.Integer) { throw new NpToolkitException("Attribute " + this.metadata.name + " : This is not an interger attribute type."); } return this.intValue; } set { if (this.metadata.type != Matching.AttributeType.Integer) { throw new NpToolkitException("Attribute " + this.metadata.name + " : Expecting an interger attribute type."); } this.intValue = value; } } // Token: 0x1700007C RID: 124 // (get) Token: 0x06000157 RID: 343 RVA: 0x000054B0 File Offset: 0x000044B0 // (set) Token: 0x06000158 RID: 344 RVA: 0x00005540 File Offset: 0x00004540 public byte[] BinValue { get { if (this.metadata.type != Matching.AttributeType.Binary) { throw new NpToolkitException("Attribute " + this.metadata.name + " : This is not a binary attribute type."); } byte[] array; if (this.metadata.size == 0U) { array = null; } else { byte[] array2 = new byte[this.metadata.size]; Array.Copy(this.binValue, array2, (long)((ulong)this.metadata.size)); array = this.binValue; } return array; } set { if (this.metadata.type != Matching.AttributeType.Binary) { throw new NpToolkitException("Attribute " + this.metadata.name + " : Expected a binary attribute type."); } if (value == null) { throw new NpToolkitException("Attribute " + this.metadata.name + " : Expected a non-null byte array."); } if (value.Length > 256) { throw new NpToolkitException(string.Concat(new object[] { "Attribute ", this.metadata.name, " : Binary array is more than ", 256 })); } if ((long)value.Length > (long)((ulong)this.metadata.size)) { throw new NpToolkitException(string.Concat(new object[] { "Attribute ", this.metadata.name, " : Array size of ", value.Length, " can't exceed ", this.metadata.size, " bytes defined in metadata." })); } if (this.binValue == null) { this.binValue = new byte[256]; } value.CopyTo(this.binValue, 0); } } // Token: 0x06000159 RID: 345 RVA: 0x000056A8 File Offset: 0x000046A8 internal void Read(MemoryBuffer buffer) { this.metadata.Read(buffer); if (this.metadata.type == Matching.AttributeType.Integer) { this.intValue = buffer.ReadInt32(); } else if (this.metadata.type == Matching.AttributeType.Binary) { buffer.ReadData(ref this.binValue); } } // Token: 0x0600015A RID: 346 RVA: 0x0000570C File Offset: 0x0000470C public static Matching.Attribute CreateIntegerAttribute(Matching.AttributeMetadata metadata, int intValue) { return new Matching.Attribute { metadata = metadata, IntValue = intValue }; } // Token: 0x0600015B RID: 347 RVA: 0x00005738 File Offset: 0x00004738 public static Matching.Attribute CreateBinaryAttribute(Matching.AttributeMetadata metadata, byte[] binValue) { return new Matching.Attribute { metadata = metadata, BinValue = binValue }; } // Token: 0x040000E1 RID: 225 public const int MAX_SIZE_BIN_VALUE = 256; // Token: 0x040000E2 RID: 226 internal Matching.AttributeMetadata metadata; // Token: 0x040000E3 RID: 227 internal int intValue; // Token: 0x040000E4 RID: 228 [MarshalAs(UnmanagedType.ByValArray, SizeConst = 256)] internal byte[] binValue; } // Token: 0x0200004B RID: 75 public struct SessionImage { // Token: 0x1700007D RID: 125 // (get) Token: 0x0600015C RID: 348 RVA: 0x00005764 File Offset: 0x00004764 // (set) Token: 0x0600015D RID: 349 RVA: 0x0000577C File Offset: 0x0000477C public string SessionImgPath { get { return this.sessionImgPath; } set { if (value.Length > 255) { throw new NpToolkitException("The size of the image path string is more than " + 255 + " characters."); } this.sessionImgPath = value; } } // Token: 0x0600015E RID: 350 RVA: 0x000057C8 File Offset: 0x000047C8 internal bool IsValid() { return this.sessionImgPath != null && this.sessionImgPath.Length != 0; } // Token: 0x0600015F RID: 351 RVA: 0x00005800 File Offset: 0x00004800 internal bool Exists() { return this.sessionImgPath != null && this.sessionImgPath.Length != 0; } // Token: 0x040000E5 RID: 229 public const int IMAGE_PATH_MAX_LEN = 255; // Token: 0x040000E6 RID: 230 [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 256)] internal string sessionImgPath; } // Token: 0x0200004C RID: 76 public struct LocalizedSessionInfo { // Token: 0x1700007E RID: 126 // (get) Token: 0x06000160 RID: 352 RVA: 0x00005838 File Offset: 0x00004838 // (set) Token: 0x06000161 RID: 353 RVA: 0x00005850 File Offset: 0x00004850 public string SessionName { get { return this.sessionName; } set { if (value.Length > 63) { throw new NpToolkitException("The size of the session name is more than " + 63 + " characters."); } this.sessionName = value; } } // Token: 0x1700007F RID: 127 // (get) Token: 0x06000162 RID: 354 RVA: 0x00005894 File Offset: 0x00004894 // (set) Token: 0x06000163 RID: 355 RVA: 0x000058AC File Offset: 0x000048AC public string Status { get { return this.status; } set { if (value.Length > 255) { throw new NpToolkitException("The size of the status string is more than " + 255 + " characters."); } this.status = value; } } // Token: 0x17000080 RID: 128 // (get) Token: 0x06000164 RID: 356 RVA: 0x000058F8 File Offset: 0x000048F8 // (set) Token: 0x06000165 RID: 357 RVA: 0x0000591D File Offset: 0x0000491D public Core.LanguageCode LanguageCode { get { return new Core.LanguageCode { code = this.languageCode }; } set { this.languageCode = value.code; } } // Token: 0x06000166 RID: 358 RVA: 0x0000592C File Offset: 0x0000492C public LocalizedSessionInfo(string sessionName, string status, Core.LanguageCode languageCode) { this.sessionName = ""; this.status = ""; this.languageCode = ""; this.SessionName = sessionName; this.Status = status; this.LanguageCode = languageCode; } // Token: 0x040000E7 RID: 231 public const int SESSION_NAME_LEN = 63; // Token: 0x040000E8 RID: 232 public const int STATUS_LEN = 255; // Token: 0x040000E9 RID: 233 [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 64)] private string sessionName; // Token: 0x040000EA RID: 234 [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 256)] private string status; // Token: 0x040000EB RID: 235 [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 6)] internal string languageCode; } // Token: 0x0200004D RID: 77 public struct PresenceOptionData { // Token: 0x06000167 RID: 359 RVA: 0x00005968 File Offset: 0x00004968 internal void Init() { this.data = new byte[16]; } // Token: 0x17000081 RID: 129 // (get) Token: 0x06000168 RID: 360 RVA: 0x00005978 File Offset: 0x00004978 // (set) Token: 0x06000169 RID: 361 RVA: 0x000059C0 File Offset: 0x000049C0 public byte[] Data { get { byte[] array; if (this.length == 0) { array = null; } else { byte[] array2 = new byte[(int)this.length]; Array.Copy(this.data, array2, (int)this.length); array = array2; } return array; } set { if (this.data == null) { this.data = new byte[16]; } if (value != null) { if (value.Length > 16) { throw new NpToolkitException("The size of the data array is more than " + 16); } value.CopyTo(this.data, 0); this.length = (byte)value.Length; } else { this.length = 0; } } } // Token: 0x17000082 RID: 130 // (get) Token: 0x0600016A RID: 362 RVA: 0x00005A40 File Offset: 0x00004A40 // (set) Token: 0x0600016B RID: 363 RVA: 0x00005A84 File Offset: 0x00004A84 public string DataAsString { get { string text; if (this.length == 0) { text = ""; } else { text = Encoding.ASCII.GetString(this.data, 0, (int)this.length); } return text; } set { if (this.data == null) { this.data = new byte[16]; } if (value != null) { byte[] bytes = Encoding.ASCII.GetBytes(value); if (bytes.Length > 16) { throw new NpToolkitException("The size of the ASCII string is more than " + 16 + " characters."); } bytes.CopyTo(this.data, 0); this.length = (byte)bytes.Length; } else { if (this.data == null) { this.data = new byte[16]; } this.length = 0; } } } // Token: 0x0600016C RID: 364 RVA: 0x00005B34 File Offset: 0x00004B34 internal void Read(MemoryBuffer buffer) { buffer.ReadData(ref this.data); } // Token: 0x040000EC RID: 236 public const int NP_MATCHING2_PRESENCE_OPTION_DATA_SIZE = 16; // Token: 0x040000ED RID: 237 [MarshalAs(UnmanagedType.ByValArray, SizeConst = 16)] internal byte[] data; // Token: 0x040000EE RID: 238 [MarshalAs(UnmanagedType.U1)] internal byte length; } // Token: 0x0200004E RID: 78 public enum SearchOperatorTypes { // Token: 0x040000F0 RID: 240 Invalid, // Token: 0x040000F1 RID: 241 Equals, // Token: 0x040000F2 RID: 242 NotEquals, // Token: 0x040000F3 RID: 243 LessThan, // Token: 0x040000F4 RID: 244 LessEqualsThan, // Token: 0x040000F5 RID: 245 GreaterThan, // Token: 0x040000F6 RID: 246 GreaterEqualsThan } // Token: 0x0200004F RID: 79 public struct SearchClause { // Token: 0x17000083 RID: 131 // (get) Token: 0x0600016D RID: 365 RVA: 0x00005B44 File Offset: 0x00004B44 // (set) Token: 0x0600016E RID: 366 RVA: 0x00005B5C File Offset: 0x00004B5C public Matching.Attribute AttributeToCompare { get { return this.attributeToCompare; } set { this.attributeToCompare = value; } } // Token: 0x17000084 RID: 132 // (get) Token: 0x0600016F RID: 367 RVA: 0x00005B68 File Offset: 0x00004B68 // (set) Token: 0x06000170 RID: 368 RVA: 0x00005B80 File Offset: 0x00004B80 public Matching.SearchOperatorTypes OperatorType { get { return this.operatorType; } set { this.operatorType = value; } } // Token: 0x040000F7 RID: 247 internal Matching.Attribute attributeToCompare; // Token: 0x040000F8 RID: 248 internal Matching.SearchOperatorTypes operatorType; } // Token: 0x02000050 RID: 80 [StructLayout(LayoutKind.Sequential)] public class SetInitConfigurationRequest : RequestBase { // Token: 0x17000085 RID: 133 // (get) Token: 0x06000171 RID: 369 RVA: 0x00005B8C File Offset: 0x00004B8C // (set) Token: 0x06000172 RID: 370 RVA: 0x00005BD8 File Offset: 0x00004BD8 public Matching.AttributeMetadata[] Attributes { get { Matching.AttributeMetadata[] array; if (this.numAttributes == 0UL) { array = null; } else { Matching.AttributeMetadata[] array2 = new Matching.AttributeMetadata[this.numAttributes]; Array.Copy(this.attributes, array2, (int)this.numAttributes); array = array2; } return array; } set { if (value != null) { if (value.Length > 64) { throw new NpToolkitException("The size of the array is more than " + 64); } value.CopyTo(this.attributes, 0); this.numAttributes = (ulong)value.Length; } else { this.numAttributes = 0UL; } this.ValidateAttributes(); } } // Token: 0x06000173 RID: 371 RVA: 0x00005C44 File Offset: 0x00004C44 private void ValidateAttributes() { uint num = 0U; uint num2 = 0U; uint num3 = 0U; uint num4 = 0U; uint num5 = 0U; for (ulong num6 = 0UL; num6 < this.numAttributes; num6 += 1UL) { if (this.attributes[(int)(checked((IntPtr)num6))].scope == Matching.AttributeScope.Member) { num += this.attributes[(int)(checked((IntPtr)num6))].size; } else { checked { if (this.attributes[(int)((IntPtr)num6)].scope != Matching.AttributeScope.Room) { throw new NpToolkitException(string.Concat(new object[] { "Attribute ", this.attributes[(int)((IntPtr)num6)].name, " : ", num6, " : Scope is not set to either Member or Room." })); } if (this.attributes[(int)((IntPtr)num6)].roomAttributeVisibility == Matching.RoomAttributeVisibility.Internal) { unchecked { num2 += this.attributes[(int)(checked((IntPtr)num6))].size; } } else if (this.attributes[(int)((IntPtr)num6)].roomAttributeVisibility == Matching.RoomAttributeVisibility.External) { unchecked { num3 += this.attributes[(int)(checked((IntPtr)num6))].size; } } else { if (this.attributes[(int)((IntPtr)num6)].roomAttributeVisibility != Matching.RoomAttributeVisibility.Search) { throw new NpToolkitException("Attribute " + this.attributes[(int)((IntPtr)num6)].name + " : RoomAttributeVisibility is not set to either Internal or External."); } if (this.attributes[(int)((IntPtr)num6)].type == Matching.AttributeType.Binary) { unchecked { num4 += 1U; } } else { if (this.attributes[(int)((IntPtr)num6)].type != Matching.AttributeType.Integer) { throw new NpToolkitException("Attribute " + this.attributes[(int)((IntPtr)num6)].name + " : Type is not set to either Binary or Integer."); } unchecked { num5 += 1U; } } } } } } if (num > 64U) { throw new NpToolkitException("The sum of all member attributes has to be a max of 64."); } if (num2 > 448U) { throw new NpToolkitException("The sum of all internal room attributes has to be a max of 448 bytes. "); } if (num3 > 448U) { throw new NpToolkitException("The sum of all external room attributes has to be a max of 448 bytes"); } if (num4 > 1U) { throw new NpToolkitException("Only 1 binary search variable is permitted."); } if (num5 > 8U) { throw new NpToolkitException("Only 8 interger search variables are permitted."); } } // Token: 0x06000174 RID: 372 RVA: 0x00005EFB File Offset: 0x00004EFB public SetInitConfigurationRequest() : base(ServiceTypes.Matching, FunctionTypes.MatchingSetInitConfiguration) { } // Token: 0x040000F9 RID: 249 public const int MAX_ATTRIBUTES = 64; // Token: 0x040000FA RID: 250 private ulong numAttributes; // Token: 0x040000FB RID: 251 [MarshalAs(UnmanagedType.ByValArray, SizeConst = 64)] private Matching.AttributeMetadata[] attributes = new Matching.AttributeMetadata[64]; } // Token: 0x02000051 RID: 81 [StructLayout(LayoutKind.Sequential)] public class GetWorldsRequest : RequestBase { // Token: 0x06000175 RID: 373 RVA: 0x00005F17 File Offset: 0x00004F17 public GetWorldsRequest() : base(ServiceTypes.Matching, FunctionTypes.MatchingGetWorlds) { } } // Token: 0x02000052 RID: 82 [StructLayout(LayoutKind.Sequential)] public class CreateRoomRequest : RequestBase { // Token: 0x17000086 RID: 134 // (get) Token: 0x06000176 RID: 374 RVA: 0x00005F28 File Offset: 0x00004F28 // (set) Token: 0x06000177 RID: 375 RVA: 0x00005F74 File Offset: 0x00004F74 public Matching.Attribute[] Attributes { get { Matching.Attribute[] array; if (this.numAttributes == 0UL) { array = null; } else { Matching.Attribute[] array2 = new Matching.Attribute[this.numAttributes]; Array.Copy(this.attributes, array2, (int)this.numAttributes); array = array2; } return array; } set { if (value != null) { if (value.Length > 64) { throw new NpToolkitException("The size of the array is more than " + 64); } value.CopyTo(this.attributes, 0); this.numAttributes = (ulong)value.Length; } else { this.numAttributes = 0UL; } } } // Token: 0x17000087 RID: 135 // (get) Token: 0x06000178 RID: 376 RVA: 0x00005FD8 File Offset: 0x00004FD8 // (set) Token: 0x06000179 RID: 377 RVA: 0x00005FF0 File Offset: 0x00004FF0 public string Name { get { return this.name; } set { if (value.Length > 63) { throw new NpToolkitException("The size of the name string is more than " + 63 + " characters."); } this.name = value; } } // Token: 0x17000088 RID: 136 // (get) Token: 0x0600017A RID: 378 RVA: 0x00006034 File Offset: 0x00005034 // (set) Token: 0x0600017B RID: 379 RVA: 0x0000604C File Offset: 0x0000504C public Matching.NpMatching2SessionPassword Password { get { return this.password; } set { this.password = value; } } // Token: 0x17000089 RID: 137 // (get) Token: 0x0600017C RID: 380 RVA: 0x00006058 File Offset: 0x00005058 // (set) Token: 0x0600017D RID: 381 RVA: 0x00006070 File Offset: 0x00005070 public Matching.RoomVisibility Visibility { get { return this.visibility; } set { this.visibility = value; } } // Token: 0x1700008A RID: 138 // (get) Token: 0x0600017E RID: 382 RVA: 0x0000607C File Offset: 0x0000507C // (set) Token: 0x0600017F RID: 383 RVA: 0x00006094 File Offset: 0x00005094 public uint NumReservedSlots { get { return this.numReservedSlots; } set { this.numReservedSlots = value; } } // Token: 0x1700008B RID: 139 // (get) Token: 0x06000180 RID: 384 RVA: 0x000060A0 File Offset: 0x000050A0 // (set) Token: 0x06000181 RID: 385 RVA: 0x000060B8 File Offset: 0x000050B8 public byte[] FixedData { get { return this.fixedData; } set { if (value.Length > 1047552) { throw new NpToolkitException("The size of the fixed data array is more than " + 1047552 + " bytes."); } this.fixedData = value; this.fixedDataSize = (ulong)((value != null) ? ((long)value.Length) : 0L); } } // Token: 0x1700008C RID: 140 // (get) Token: 0x06000182 RID: 386 RVA: 0x00006110 File Offset: 0x00005110 // (set) Token: 0x06000183 RID: 387 RVA: 0x00006128 File Offset: 0x00005128 public byte[] ChangeableData { get { return this.changeableData; } set { if (value.Length > 1024) { throw new NpToolkitException("The size of the changeable data array is more than " + 1024 + " bytes."); } this.changeableData = value; this.changeableDataSize = (ulong)((value != null) ? ((long)value.Length) : 0L); } } // Token: 0x1700008D RID: 141 // (get) Token: 0x06000184 RID: 388 RVA: 0x00006180 File Offset: 0x00005180 // (set) Token: 0x06000185 RID: 389 RVA: 0x00006198 File Offset: 0x00005198 public string Status { get { return this.status; } set { if (value.Length > 255) { throw new NpToolkitException("The size of the status string is more than " + 255 + " characters."); } this.status = value; } } // Token: 0x1700008E RID: 142 // (get) Token: 0x06000186 RID: 390 RVA: 0x000061E4 File Offset: 0x000051E4 // (set) Token: 0x06000187 RID: 391 RVA: 0x00006210 File Offset: 0x00005210 public Matching.LocalizedSessionInfo[] Localizations { get { Matching.LocalizedSessionInfo[] array = new Matching.LocalizedSessionInfo[10]; Array.Copy(this.localizations, array, 10); return array; } set { if (value != null) { if (value.Length > 10) { throw new NpToolkitException("The size of the array is more than " + 10); } value.CopyTo(this.localizations, 0); } } } // Token: 0x1700008F RID: 143 // (get) Token: 0x06000188 RID: 392 RVA: 0x0000625C File Offset: 0x0000525C // (set) Token: 0x06000189 RID: 393 RVA: 0x00006274 File Offset: 0x00005274 public Matching.SessionImage Image { get { return this.image; } set { this.image = value; } } // Token: 0x17000090 RID: 144 // (get) Token: 0x0600018A RID: 394 RVA: 0x00006280 File Offset: 0x00005280 // (set) Token: 0x0600018B RID: 395 RVA: 0x00006298 File Offset: 0x00005298 public bool DisplayOnSystem { get { return this.displayOnSystem; } set { this.displayOnSystem = value; } } // Token: 0x17000091 RID: 145 // (get) Token: 0x0600018C RID: 396 RVA: 0x000062A4 File Offset: 0x000052A4 // (set) Token: 0x0600018D RID: 397 RVA: 0x000062BC File Offset: 0x000052BC public bool IsSystemJoinable { get { return this.isSystemJoinable; } set { this.isSystemJoinable = value; } } // Token: 0x17000092 RID: 146 // (get) Token: 0x0600018E RID: 398 RVA: 0x000062C8 File Offset: 0x000052C8 // (set) Token: 0x0600018F RID: 399 RVA: 0x000062E0 File Offset: 0x000052E0 public bool JoinAllLocalUsers { get { return this.joinAllLocalUsers; } set { this.joinAllLocalUsers = value; } } // Token: 0x17000093 RID: 147 // (get) Token: 0x06000190 RID: 400 RVA: 0x000062EC File Offset: 0x000052EC // (set) Token: 0x06000191 RID: 401 RVA: 0x00006304 File Offset: 0x00005304 public bool IsNatRestricted { get { return this.isNatRestricted; } set { this.isNatRestricted = value; } } // Token: 0x17000094 RID: 148 // (get) Token: 0x06000192 RID: 402 RVA: 0x00006310 File Offset: 0x00005310 // (set) Token: 0x06000193 RID: 403 RVA: 0x00006328 File Offset: 0x00005328 public Matching.RoomMigrationType OwnershipMigration { get { return this.ownershipMigration; } set { this.ownershipMigration = value; } } // Token: 0x17000095 RID: 149 // (get) Token: 0x06000194 RID: 404 RVA: 0x00006334 File Offset: 0x00005334 // (set) Token: 0x06000195 RID: 405 RVA: 0x0000634C File Offset: 0x0000534C public Matching.TopologyType Topology { get { return this.topology; } set { this.topology = value; } } // Token: 0x17000096 RID: 150 // (get) Token: 0x06000196 RID: 406 RVA: 0x00006358 File Offset: 0x00005358 // (set) Token: 0x06000197 RID: 407 RVA: 0x00006370 File Offset: 0x00005370 public uint MaxNumMembers { get { return this.maxNumMembers; } set { this.maxNumMembers = value; } } // Token: 0x17000097 RID: 151 // (get) Token: 0x06000198 RID: 408 RVA: 0x0000637C File Offset: 0x0000537C // (set) Token: 0x06000199 RID: 409 RVA: 0x00006394 File Offset: 0x00005394 public Matching.NpMatching2WorldNumber WorldNumber { get { return this.worldNumber; } set { this.worldNumber = value; } } // Token: 0x17000098 RID: 152 // (get) Token: 0x0600019A RID: 410 RVA: 0x000063A0 File Offset: 0x000053A0 // (set) Token: 0x0600019B RID: 411 RVA: 0x000063B8 File Offset: 0x000053B8 public bool IsCrossplatform { get { return this.isCrossplatform; } set { this.isCrossplatform = value; } } // Token: 0x17000099 RID: 153 // (get) Token: 0x0600019C RID: 412 RVA: 0x000063C4 File Offset: 0x000053C4 // (set) Token: 0x0600019D RID: 413 RVA: 0x000063DC File Offset: 0x000053DC public bool AllowBlockedUsersOfOwner { get { return this.allowBlockedUsersOfOwner; } set { this.allowBlockedUsersOfOwner = value; } } // Token: 0x1700009A RID: 154 // (get) Token: 0x0600019E RID: 414 RVA: 0x000063E8 File Offset: 0x000053E8 // (set) Token: 0x0600019F RID: 415 RVA: 0x00006400 File Offset: 0x00005400 public bool AllowBlockedUsersOfMembers { get { return this.allowBlockedUsersOfMembers; } set { this.allowBlockedUsersOfMembers = value; } } // Token: 0x060001A0 RID: 416 RVA: 0x0000640C File Offset: 0x0000540C public CreateRoomRequest() : base(ServiceTypes.Matching, FunctionTypes.MatchingCreateRoom) { this.numReservedSlots = 0U; this.displayOnSystem = true; this.isSystemJoinable = true; this.joinAllLocalUsers = false; this.isNatRestricted = false; this.ownershipMigration = Matching.RoomMigrationType.OwnerBind; this.topology = Matching.TopologyType.None; this.worldNumber.num = 1; this.isCrossplatform = false; this.allowBlockedUsersOfOwner = false; this.allowBlockedUsersOfMembers = true; } // Token: 0x040000FC RID: 252 public const int MAX_ATTRIBUTES = 64; // Token: 0x040000FD RID: 253 public const int MAX_SIZE_ROOM_NAME = 63; // Token: 0x040000FE RID: 254 public const int MAX_SIZE_ROOM_STATUS = 255; // Token: 0x040000FF RID: 255 public const int MAX_SIZE_FIXED_DATA = 1047552; // Token: 0x04000100 RID: 256 public const int MAX_SIZE_CHANGEABLE_DATA = 1024; // Token: 0x04000101 RID: 257 public const int MAX_SIZE_LOCALIZATIONS = 10; // Token: 0x04000102 RID: 258 internal ulong numAttributes; // Token: 0x04000103 RID: 259 [MarshalAs(UnmanagedType.ByValArray, SizeConst = 64)] internal Matching.Attribute[] attributes = new Matching.Attribute[64]; // Token: 0x04000104 RID: 260 [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 64)] internal string name; // Token: 0x04000105 RID: 261 internal Matching.NpMatching2SessionPassword password; // Token: 0x04000106 RID: 262 internal Matching.RoomVisibility visibility; // Token: 0x04000107 RID: 263 internal uint numReservedSlots; // Token: 0x04000108 RID: 264 internal ulong fixedDataSize; // Token: 0x04000109 RID: 265 [MarshalAs(UnmanagedType.LPArray)] internal byte[] fixedData; // Token: 0x0400010A RID: 266 internal ulong changeableDataSize; // Token: 0x0400010B RID: 267 [MarshalAs(UnmanagedType.LPArray)] internal byte[] changeableData; // Token: 0x0400010C RID: 268 [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 256)] internal string status; // Token: 0x0400010D RID: 269 [MarshalAs(UnmanagedType.ByValArray, SizeConst = 10)] internal Matching.LocalizedSessionInfo[] localizations = new Matching.LocalizedSessionInfo[10]; // Token: 0x0400010E RID: 270 internal Matching.SessionImage image; // Token: 0x0400010F RID: 271 internal Matching.RoomMigrationType ownershipMigration; // Token: 0x04000110 RID: 272 internal Matching.TopologyType topology; // Token: 0x04000111 RID: 273 internal uint maxNumMembers; // Token: 0x04000112 RID: 274 internal Matching.NpMatching2WorldNumber worldNumber; // Token: 0x04000113 RID: 275 [MarshalAs(UnmanagedType.I1)] internal bool displayOnSystem; // Token: 0x04000114 RID: 276 [MarshalAs(UnmanagedType.I1)] internal bool isSystemJoinable; // Token: 0x04000115 RID: 277 [MarshalAs(UnmanagedType.I1)] internal bool joinAllLocalUsers; // Token: 0x04000116 RID: 278 [MarshalAs(UnmanagedType.I1)] internal bool isNatRestricted; // Token: 0x04000117 RID: 279 [MarshalAs(UnmanagedType.I1)] internal bool isCrossplatform; // Token: 0x04000118 RID: 280 [MarshalAs(UnmanagedType.I1)] internal bool allowBlockedUsersOfOwner; // Token: 0x04000119 RID: 281 [MarshalAs(UnmanagedType.I1)] internal bool allowBlockedUsersOfMembers; } // Token: 0x02000053 RID: 83 [StructLayout(LayoutKind.Sequential)] public class LeaveRoomRequest : RequestBase { // Token: 0x1700009B RID: 155 // (get) Token: 0x060001A1 RID: 417 RVA: 0x00006494 File Offset: 0x00005494 // (set) Token: 0x060001A2 RID: 418 RVA: 0x000064AC File Offset: 0x000054AC public ulong RoomId { get { return this.roomId; } set { this.roomId = value; } } // Token: 0x1700009C RID: 156 // (get) Token: 0x060001A3 RID: 419 RVA: 0x000064B8 File Offset: 0x000054B8 // (set) Token: 0x060001A4 RID: 420 RVA: 0x000064D0 File Offset: 0x000054D0 public Matching.PresenceOptionData NotificationDataToMembers { get { return this.notificationDataToMembers; } set { this.notificationDataToMembers = value; } } // Token: 0x060001A5 RID: 421 RVA: 0x000064DA File Offset: 0x000054DA public LeaveRoomRequest() : base(ServiceTypes.Matching, FunctionTypes.MatchingLeaveRoom) { this.notificationDataToMembers.Init(); } // Token: 0x0400011A RID: 282 internal ulong roomId; // Token: 0x0400011B RID: 283 internal Matching.PresenceOptionData notificationDataToMembers; } // Token: 0x02000054 RID: 84 public enum RoomsSearchScope { // Token: 0x0400011D RID: 285 All, // Token: 0x0400011E RID: 286 FriendsRooms, // Token: 0x0400011F RID: 287 RecentlyMetRooms, // Token: 0x04000120 RID: 288 CustomUsersList } // Token: 0x02000055 RID: 85 [StructLayout(LayoutKind.Sequential)] public class SearchRoomsRequest : RequestBase { // Token: 0x1700009D RID: 157 // (get) Token: 0x060001A6 RID: 422 RVA: 0x000064F8 File Offset: 0x000054F8 // (set) Token: 0x060001A7 RID: 423 RVA: 0x00006544 File Offset: 0x00005544 public Matching.SearchClause[] SearchClauses { get { Matching.SearchClause[] array; if (this.numSearchClauses == 0UL) { array = null; } else { Matching.SearchClause[] array2 = new Matching.SearchClause[this.numSearchClauses]; Array.Copy(this.searchClauses, array2, (int)this.numSearchClauses); array = array2; } return array; } set { if (value != null) { if (value.Length > 64) { throw new NpToolkitException("The size of the array is more than " + 64); } value.CopyTo(this.searchClauses, 0); this.numSearchClauses = (ulong)value.Length; } else { this.numSearchClauses = 0UL; } } } // Token: 0x1700009E RID: 158 // (get) Token: 0x060001A8 RID: 424 RVA: 0x000065A8 File Offset: 0x000055A8 // (set) Token: 0x060001A9 RID: 425 RVA: 0x000065F4 File Offset: 0x000055F4 public Core.NpAccountId[] UsersToSearchInRooms { get { Core.NpAccountId[] array; if (this.numUsersToSearchInRooms == 0UL) { array = null; } else { Core.NpAccountId[] array2 = new Core.NpAccountId[this.numUsersToSearchInRooms]; Array.Copy(this.usersToSearchInRooms, array2, (int)this.numUsersToSearchInRooms); array = array2; } return array; } set { if (value != null) { if (value.Length > 20) { throw new NpToolkitException("The size of the array is larger than " + 20); } value.CopyTo(this.usersToSearchInRooms, 0); this.numUsersToSearchInRooms = (ulong)((long)value.Length); } else { this.numUsersToSearchInRooms = 0UL; } } } // Token: 0x1700009F RID: 159 // (get) Token: 0x060001AA RID: 426 RVA: 0x00006658 File Offset: 0x00005658 // (set) Token: 0x060001AB RID: 427 RVA: 0x00006670 File Offset: 0x00005670 public int Offset { get { return this.offset; } set { this.offset = value; } } // Token: 0x170000A0 RID: 160 // (get) Token: 0x060001AC RID: 428 RVA: 0x0000667C File Offset: 0x0000567C // (set) Token: 0x060001AD RID: 429 RVA: 0x00006694 File Offset: 0x00005694 public int PageSize { get { return this.pageSize; } set { this.pageSize = value; } } // Token: 0x170000A1 RID: 161 // (get) Token: 0x060001AE RID: 430 RVA: 0x000066A0 File Offset: 0x000056A0 // (set) Token: 0x060001AF RID: 431 RVA: 0x000066B8 File Offset: 0x000056B8 public Matching.RoomsSearchScope SearchScope { get { return this.searchScope; } set { this.searchScope = value; } } // Token: 0x170000A2 RID: 162 // (get) Token: 0x060001B0 RID: 432 RVA: 0x000066C4 File Offset: 0x000056C4 // (set) Token: 0x060001B1 RID: 433 RVA: 0x000066DC File Offset: 0x000056DC public Matching.NpMatching2WorldNumber WorldNumber { get { return this.worldNumber; } set { this.worldNumber = value; } } // Token: 0x170000A3 RID: 163 // (get) Token: 0x060001B2 RID: 434 RVA: 0x000066E8 File Offset: 0x000056E8 // (set) Token: 0x060001B3 RID: 435 RVA: 0x00006700 File Offset: 0x00005700 public bool ProvideRandomRooms { get { return this.provideRandomRooms; } set { this.provideRandomRooms = value; } } // Token: 0x170000A4 RID: 164 // (get) Token: 0x060001B4 RID: 436 RVA: 0x0000670C File Offset: 0x0000570C // (set) Token: 0x060001B5 RID: 437 RVA: 0x00006724 File Offset: 0x00005724 public bool QuickJoin { get { return this.quickJoin; } set { this.quickJoin = value; } } // Token: 0x170000A5 RID: 165 // (get) Token: 0x060001B6 RID: 438 RVA: 0x00006730 File Offset: 0x00005730 // (set) Token: 0x060001B7 RID: 439 RVA: 0x00006748 File Offset: 0x00005748 public bool ApplyNatTypeFilter { get { return this.applyNatTypeFilter; } set { this.applyNatTypeFilter = value; } } // Token: 0x060001B8 RID: 440 RVA: 0x00006754 File Offset: 0x00005754 public SearchRoomsRequest() : base(ServiceTypes.Matching, FunctionTypes.MatchingSearchRooms) { this.offset = 1; this.pageSize = 20; this.worldNumber.num = 1; this.provideRandomRooms = false; this.quickJoin = false; this.applyNatTypeFilter = true; } // Token: 0x04000121 RID: 289 public const int MAX_SEARCH_CLAUSES = 64; // Token: 0x04000122 RID: 290 public const int MAX_PAGE_SIZE = 20; // Token: 0x04000123 RID: 291 public const int MIN_OFFSET = 1; // Token: 0x04000124 RID: 292 public const int MAX_NUM_USERS_TO_SEARCH_IN_ROOMS = 20; // Token: 0x04000125 RID: 293 internal ulong numSearchClauses; // Token: 0x04000126 RID: 294 [MarshalAs(UnmanagedType.ByValArray, SizeConst = 64)] internal Matching.SearchClause[] searchClauses = new Matching.SearchClause[64]; // Token: 0x04000127 RID: 295 internal ulong numUsersToSearchInRooms; // Token: 0x04000128 RID: 296 [MarshalAs(UnmanagedType.ByValArray, SizeConst = 20)] internal Core.NpAccountId[] usersToSearchInRooms = new Core.NpAccountId[20]; // Token: 0x04000129 RID: 297 internal int offset; // Token: 0x0400012A RID: 298 internal int pageSize; // Token: 0x0400012B RID: 299 internal Matching.RoomsSearchScope searchScope; // Token: 0x0400012C RID: 300 internal Matching.NpMatching2WorldNumber worldNumber; // Token: 0x0400012D RID: 301 [MarshalAs(UnmanagedType.I1)] internal bool provideRandomRooms; // Token: 0x0400012E RID: 302 [MarshalAs(UnmanagedType.I1)] internal bool quickJoin; // Token: 0x0400012F RID: 303 [MarshalAs(UnmanagedType.I1)] internal bool applyNatTypeFilter; } // Token: 0x02000056 RID: 86 public enum RoomJoiningType { // Token: 0x04000131 RID: 305 Room, // Token: 0x04000132 RID: 306 BoundSessionId } // Token: 0x02000057 RID: 87 [StructLayout(LayoutKind.Sequential)] public class JoinRoomRequest : RequestBase { // Token: 0x170000A6 RID: 166 // (get) Token: 0x060001B9 RID: 441 RVA: 0x000067B8 File Offset: 0x000057B8 // (set) Token: 0x060001BA RID: 442 RVA: 0x000067D0 File Offset: 0x000057D0 public Matching.NpMatching2SessionPassword Password { get { return this.password; } set { this.password = value; } } // Token: 0x170000A7 RID: 167 // (get) Token: 0x060001BB RID: 443 RVA: 0x000067DC File Offset: 0x000057DC // (set) Token: 0x060001BC RID: 444 RVA: 0x00006828 File Offset: 0x00005828 public Matching.Attribute[] MemberAttributes { get { Matching.Attribute[] array; if (this.numMemberAttributes == 0UL) { array = null; } else { Matching.Attribute[] array2 = new Matching.Attribute[this.numMemberAttributes]; Array.Copy(this.memberAttributes, array2, (int)this.numMemberAttributes); array = array2; } return array; } set { if (value != null) { if (value.Length > 64) { throw new NpToolkitException("The size of the array is larger than " + 64); } value.CopyTo(this.memberAttributes, 0); this.numMemberAttributes = (ulong)((long)value.Length); } else { this.numMemberAttributes = 0UL; } } } // Token: 0x170000A8 RID: 168 // (get) Token: 0x060001BD RID: 445 RVA: 0x0000688C File Offset: 0x0000588C // (set) Token: 0x060001BE RID: 446 RVA: 0x000068A4 File Offset: 0x000058A4 public Matching.PresenceOptionData NotificationDataToMembers { get { return this.notificationDataToMembers; } set { this.notificationDataToMembers = value; } } // Token: 0x170000A9 RID: 169 // (get) Token: 0x060001BF RID: 447 RVA: 0x000068B0 File Offset: 0x000058B0 // (set) Token: 0x060001C0 RID: 448 RVA: 0x000068C8 File Offset: 0x000058C8 public ulong RoomId { get { return this.roomId; } set { if (this.identifyRoomBy != Matching.RoomJoiningType.Room) { throw new NpToolkitException("Can't set RoomId if IdentifyRoomBy isn't RoomJoiningType.Room."); } this.roomId = value; } } // Token: 0x170000AA RID: 170 // (get) Token: 0x060001C1 RID: 449 RVA: 0x000068F8 File Offset: 0x000058F8 // (set) Token: 0x060001C2 RID: 450 RVA: 0x00006910 File Offset: 0x00005910 public Matching.NpSessionId BoundSessionId { get { return this.boundSessionId; } set { if (this.identifyRoomBy != Matching.RoomJoiningType.BoundSessionId) { throw new NpToolkitException("Can't set BoundSessionId if IdentifyRoomBy isn't RoomJoiningType.BoundSessionId."); } this.boundSessionId = value; } } // Token: 0x170000AB RID: 171 // (get) Token: 0x060001C3 RID: 451 RVA: 0x00006940 File Offset: 0x00005940 // (set) Token: 0x060001C4 RID: 452 RVA: 0x00006958 File Offset: 0x00005958 public Matching.RoomJoiningType IdentifyRoomBy { get { return this.identifyRoomBy; } set { this.identifyRoomBy = value; } } // Token: 0x170000AC RID: 172 // (get) Token: 0x060001C5 RID: 453 RVA: 0x00006964 File Offset: 0x00005964 // (set) Token: 0x060001C6 RID: 454 RVA: 0x0000697C File Offset: 0x0000597C public bool JoinAllLocalUsers { get { return this.joinAllLocalUsers; } set { this.joinAllLocalUsers = value; } } // Token: 0x170000AD RID: 173 // (get) Token: 0x060001C7 RID: 455 RVA: 0x00006988 File Offset: 0x00005988 // (set) Token: 0x060001C8 RID: 456 RVA: 0x000069A0 File Offset: 0x000059A0 public bool AllowBlockedUsers { get { return this.allowBlockedUsers; } set { this.allowBlockedUsers = value; } } // Token: 0x060001C9 RID: 457 RVA: 0x000069AA File Offset: 0x000059AA public JoinRoomRequest() : base(ServiceTypes.Matching, FunctionTypes.MatchingJoinRoom) { this.joinAllLocalUsers = false; this.allowBlockedUsers = true; this.notificationDataToMembers.Init(); } // Token: 0x04000133 RID: 307 public const int MAX_ATTRIBUTES = 64; // Token: 0x04000134 RID: 308 internal Matching.NpMatching2SessionPassword password; // Token: 0x04000135 RID: 309 internal ulong numMemberAttributes; // Token: 0x04000136 RID: 310 [MarshalAs(UnmanagedType.ByValArray, SizeConst = 64)] internal Matching.Attribute[] memberAttributes = new Matching.Attribute[64]; // Token: 0x04000137 RID: 311 internal Matching.PresenceOptionData notificationDataToMembers; // Token: 0x04000138 RID: 312 internal ulong roomId; // Token: 0x04000139 RID: 313 internal Matching.NpSessionId boundSessionId; // Token: 0x0400013A RID: 314 internal Matching.RoomJoiningType identifyRoomBy; // Token: 0x0400013B RID: 315 [MarshalAs(UnmanagedType.I1)] internal bool joinAllLocalUsers; // Token: 0x0400013C RID: 316 [MarshalAs(UnmanagedType.I1)] internal bool allowBlockedUsers; } // Token: 0x02000058 RID: 88 [StructLayout(LayoutKind.Sequential)] public class GetRoomPingTimeRequest : RequestBase { // Token: 0x170000AE RID: 174 // (get) Token: 0x060001CA RID: 458 RVA: 0x000069E0 File Offset: 0x000059E0 // (set) Token: 0x060001CB RID: 459 RVA: 0x000069F8 File Offset: 0x000059F8 public ulong RoomId { get { return this.roomId; } set { this.roomId = value; } } // Token: 0x060001CC RID: 460 RVA: 0x00006A02 File Offset: 0x00005A02 public GetRoomPingTimeRequest() : base(ServiceTypes.Matching, FunctionTypes.MatchingGetRoomPingTime) { } // Token: 0x0400013D RID: 317 internal ulong roomId; } // Token: 0x02000059 RID: 89 [StructLayout(LayoutKind.Sequential)] public class KickOutRoomMemberRequest : RequestBase { // Token: 0x170000AF RID: 175 // (get) Token: 0x060001CD RID: 461 RVA: 0x00006A14 File Offset: 0x00005A14 // (set) Token: 0x060001CE RID: 462 RVA: 0x00006A2C File Offset: 0x00005A2C public ulong RoomId { get { return this.roomId; } set { this.roomId = value; } } // Token: 0x170000B0 RID: 176 // (get) Token: 0x060001CF RID: 463 RVA: 0x00006A38 File Offset: 0x00005A38 // (set) Token: 0x060001D0 RID: 464 RVA: 0x00006A50 File Offset: 0x00005A50 public Matching.PresenceOptionData NotificationDataToMembers { get { return this.notificationDataToMembers; } set { if (value.data == null || value.length != 16) { this.notificationDataToMembers.Init(); } this.notificationDataToMembers = value; } } // Token: 0x170000B1 RID: 177 // (get) Token: 0x060001D1 RID: 465 RVA: 0x00006A90 File Offset: 0x00005A90 // (set) Token: 0x060001D2 RID: 466 RVA: 0x00006AA8 File Offset: 0x00005AA8 public ushort MemberId { get { return this.memberId; } set { this.memberId = value; } } // Token: 0x170000B2 RID: 178 // (get) Token: 0x060001D3 RID: 467 RVA: 0x00006AB4 File Offset: 0x00005AB4 // (set) Token: 0x060001D4 RID: 468 RVA: 0x00006ACC File Offset: 0x00005ACC public bool AllowRejoin { get { return this.allowRejoin; } set { this.allowRejoin = value; } } // Token: 0x060001D5 RID: 469 RVA: 0x00006AD6 File Offset: 0x00005AD6 public KickOutRoomMemberRequest() : base(ServiceTypes.Matching, FunctionTypes.MatchingKickOutRoomMember) { this.notificationDataToMembers.Init(); } // Token: 0x0400013E RID: 318 internal ulong roomId; // Token: 0x0400013F RID: 319 internal Matching.PresenceOptionData notificationDataToMembers; // Token: 0x04000140 RID: 320 internal ushort memberId; // Token: 0x04000141 RID: 321 [MarshalAs(UnmanagedType.I1)] internal bool allowRejoin; } // Token: 0x0200005A RID: 90 [StructLayout(LayoutKind.Sequential)] public class SendRoomMessageRequest : RequestBase { // Token: 0x170000B3 RID: 179 // (get) Token: 0x060001D6 RID: 470 RVA: 0x00006AF4 File Offset: 0x00005AF4 // (set) Token: 0x060001D7 RID: 471 RVA: 0x00006B0C File Offset: 0x00005B0C public ulong RoomId { get { return this.roomId; } set { this.roomId = value; } } // Token: 0x170000B4 RID: 180 // (get) Token: 0x060001D8 RID: 472 RVA: 0x00006B18 File Offset: 0x00005B18 // (set) Token: 0x060001D9 RID: 473 RVA: 0x00006B64 File Offset: 0x00005B64 public ushort[] Members { get { ushort[] array; if (this.numMembers == 0UL) { array = null; } else { ushort[] array2 = new ushort[this.numMembers]; Array.Copy(this.members, array2, (int)this.numMembers); array = array2; } return array; } set { if (value != null) { if (value.Length > 32) { throw new NpToolkitException("The size of the array is larger than " + 32); } value.CopyTo(this.members, 0); this.numMembers = (ulong)((long)value.Length); } else { this.numMembers = 0UL; } } } // Token: 0x170000B5 RID: 181 // (get) Token: 0x060001DA RID: 474 RVA: 0x00006BC8 File Offset: 0x00005BC8 // (set) Token: 0x060001DB RID: 475 RVA: 0x00006C14 File Offset: 0x00005C14 public byte[] Data { get { byte[] array; if (this.dataSize == 0UL) { array = null; } else { byte[] array2 = new byte[this.dataSize]; Array.Copy(this.data, array2, (int)this.dataSize); array = array2; } return array; } set { if (this.data == null) { this.data = new byte[1023]; } if (value != null) { if (value.Length > 1023) { throw new NpToolkitException("The size of the data array is more than " + 1023); } value.CopyTo(this.data, 0); this.dataSize = (ulong)((byte)value.Length); } else { this.dataSize = 0UL; } } } // Token: 0x170000B6 RID: 182 // (get) Token: 0x060001DC RID: 476 RVA: 0x00006CA0 File Offset: 0x00005CA0 // (set) Token: 0x060001DD RID: 477 RVA: 0x00006CE4 File Offset: 0x00005CE4 public string DataAsString { get { string text; if (this.dataSize == 0UL) { text = ""; } else { text = Encoding.UTF8.GetString(this.data, 0, (int)this.dataSize); } return text; } set { if (this.data == null) { this.data = new byte[1023]; } if (value != null) { byte[] bytes = Encoding.UTF8.GetBytes(value); if (bytes.Length > 1023) { throw new NpToolkitException("The size of the string is more than " + 1023 + " bytes."); } bytes.CopyTo(this.data, 0); this.dataSize = (ulong)((byte)bytes.Length); } else { if (this.data == null) { this.data = new byte[1023]; } this.dataSize = 0UL; } } } // Token: 0x170000B7 RID: 183 // (get) Token: 0x060001DE RID: 478 RVA: 0x00006DA4 File Offset: 0x00005DA4 // (set) Token: 0x060001DF RID: 479 RVA: 0x00006DBC File Offset: 0x00005DBC public bool IsChatMsg { get { return this.isChatMsg; } set { this.isChatMsg = value; } } // Token: 0x060001E0 RID: 480 RVA: 0x00006DC6 File Offset: 0x00005DC6 public SendRoomMessageRequest() : base(ServiceTypes.Matching, FunctionTypes.MatchingSendRoomMessage) { } // Token: 0x04000142 RID: 322 public const int MESSAGE_MAX_SIZE = 1023; // Token: 0x04000143 RID: 323 public const int MAX_MEMBERS = 32; // Token: 0x04000144 RID: 324 internal ulong roomId; // Token: 0x04000145 RID: 325 internal ulong numMembers; // Token: 0x04000146 RID: 326 [MarshalAs(UnmanagedType.ByValArray, SizeConst = 32)] internal ushort[] members = new ushort[32]; // Token: 0x04000147 RID: 327 internal ulong dataSize; // Token: 0x04000148 RID: 328 [MarshalAs(UnmanagedType.ByValArray, SizeConst = 1024)] internal byte[] data = new byte[1024]; // Token: 0x04000149 RID: 329 [MarshalAs(UnmanagedType.I1)] internal bool isChatMsg; } // Token: 0x0200005B RID: 91 [StructLayout(LayoutKind.Sequential)] public class GetAttributesRequest : RequestBase { // Token: 0x170000B8 RID: 184 // (get) Token: 0x060001E1 RID: 481 RVA: 0x00006DF4 File Offset: 0x00005DF4 // (set) Token: 0x060001E2 RID: 482 RVA: 0x00006E0C File Offset: 0x00005E0C public ulong RoomId { get { return this.roomId; } set { this.roomId = value; } } // Token: 0x170000B9 RID: 185 // (get) Token: 0x060001E3 RID: 483 RVA: 0x00006E18 File Offset: 0x00005E18 public Matching.AttributeScope Scope { get { return this.scope; } } // Token: 0x170000BA RID: 186 // (get) Token: 0x060001E4 RID: 484 RVA: 0x00006E30 File Offset: 0x00005E30 // (set) Token: 0x060001E5 RID: 485 RVA: 0x00006E48 File Offset: 0x00005E48 public Matching.RoomAttributeVisibility RoomAttributeVisibility { get { return this.roomAttributeVisibility; } set { this.roomAttributeVisibility = value; this.scope = Matching.AttributeScope.Room; } } // Token: 0x170000BB RID: 187 // (get) Token: 0x060001E6 RID: 486 RVA: 0x00006E5C File Offset: 0x00005E5C // (set) Token: 0x060001E7 RID: 487 RVA: 0x00006E74 File Offset: 0x00005E74 public ushort MemberId { get { return this.memberId; } set { this.memberId = value; this.scope = Matching.AttributeScope.Member; } } // Token: 0x060001E8 RID: 488 RVA: 0x00006E85 File Offset: 0x00005E85 public GetAttributesRequest() : base(ServiceTypes.Matching, FunctionTypes.MatchingGetAttributes) { } // Token: 0x0400014A RID: 330 internal ulong roomId; // Token: 0x0400014B RID: 331 internal Matching.AttributeScope scope; // Token: 0x0400014C RID: 332 internal Matching.RoomAttributeVisibility roomAttributeVisibility; // Token: 0x0400014D RID: 333 internal ushort memberId; } // Token: 0x0200005C RID: 92 public enum DataType { // Token: 0x0400014F RID: 335 Fixed, // Token: 0x04000150 RID: 336 Changeable } // Token: 0x0200005D RID: 93 [StructLayout(LayoutKind.Sequential)] public class GetDataRequest : RequestBase { // Token: 0x170000BC RID: 188 // (get) Token: 0x060001E9 RID: 489 RVA: 0x00006E94 File Offset: 0x00005E94 // (set) Token: 0x060001EA RID: 490 RVA: 0x00006EAC File Offset: 0x00005EAC public ulong RoomId { get { return this.roomId; } set { this.roomId = value; } } // Token: 0x170000BD RID: 189 // (get) Token: 0x060001EB RID: 491 RVA: 0x00006EB8 File Offset: 0x00005EB8 // (set) Token: 0x060001EC RID: 492 RVA: 0x00006ED0 File Offset: 0x00005ED0 public Matching.DataType Type { get { return this.type; } set { this.type = value; } } // Token: 0x060001ED RID: 493 RVA: 0x00006EDA File Offset: 0x00005EDA public GetDataRequest() : base(ServiceTypes.Matching, FunctionTypes.MatchingGetData) { } // Token: 0x04000151 RID: 337 internal ulong roomId; // Token: 0x04000152 RID: 338 internal Matching.DataType type; } // Token: 0x0200005E RID: 94 [StructLayout(LayoutKind.Sequential)] public class SendInvitationRequest : RequestBase { // Token: 0x170000BE RID: 190 // (get) Token: 0x060001EE RID: 494 RVA: 0x00006EEC File Offset: 0x00005EEC // (set) Token: 0x060001EF RID: 495 RVA: 0x00006F04 File Offset: 0x00005F04 public ulong RoomId { get { return this.roomId; } set { this.roomId = value; } } // Token: 0x170000BF RID: 191 // (get) Token: 0x060001F0 RID: 496 RVA: 0x00006F10 File Offset: 0x00005F10 // (set) Token: 0x060001F1 RID: 497 RVA: 0x00006F5C File Offset: 0x00005F5C public Core.NpAccountId[] Recipients { get { Core.NpAccountId[] array; if (this.numRecipients == 0UL) { array = null; } else { Core.NpAccountId[] array2 = new Core.NpAccountId[this.numRecipients]; Array.Copy(this.recipients, array2, (int)this.numRecipients); array = array2; } return array; } set { if (value != null) { if (value.Length > 16) { throw new NpToolkitException("The size of the array is larger than " + 16); } value.CopyTo(this.recipients, 0); this.numRecipients = (ulong)((long)value.Length); } else { this.numRecipients = 0UL; } } } // Token: 0x170000C0 RID: 192 // (get) Token: 0x060001F2 RID: 498 RVA: 0x00006FC0 File Offset: 0x00005FC0 // (set) Token: 0x060001F3 RID: 499 RVA: 0x00006FD8 File Offset: 0x00005FD8 public string UserMessage { get { return this.userMessage; } set { if (value.Length > 511) { throw new NpToolkitException("The size of the user message string is more than " + 511 + " characters."); } this.userMessage = value; } } // Token: 0x170000C1 RID: 193 // (get) Token: 0x060001F4 RID: 500 RVA: 0x00007024 File Offset: 0x00006024 // (set) Token: 0x060001F5 RID: 501 RVA: 0x0000703C File Offset: 0x0000603C public byte[] Attachment { get { return this.attachment; } set { if (value.Length > 1048576) { throw new NpToolkitException("The size of the attachment array is more than " + 1048576); } this.attachment = value; this.attachmentSize = (ulong)((byte)value.Length); } } // Token: 0x170000C2 RID: 194 // (get) Token: 0x060001F6 RID: 502 RVA: 0x00007088 File Offset: 0x00006088 // (set) Token: 0x060001F7 RID: 503 RVA: 0x000070A0 File Offset: 0x000060A0 public int MaxNumberRecipientsToAdd { get { return this.maxNumberRecipientsToAdd; } set { this.maxNumberRecipientsToAdd = value; } } // Token: 0x170000C3 RID: 195 // (get) Token: 0x060001F8 RID: 504 RVA: 0x000070AC File Offset: 0x000060AC // (set) Token: 0x060001F9 RID: 505 RVA: 0x000070C4 File Offset: 0x000060C4 public bool RecipientsEditableByUser { get { return this.recipientsEditableByUser; } set { this.recipientsEditableByUser = value; } } // Token: 0x170000C4 RID: 196 // (get) Token: 0x060001FA RID: 506 RVA: 0x000070D0 File Offset: 0x000060D0 // (set) Token: 0x060001FB RID: 507 RVA: 0x000070E8 File Offset: 0x000060E8 public bool EnableDialog { get { return this.enableDialog; } set { this.enableDialog = value; } } // Token: 0x060001FC RID: 508 RVA: 0x000070F2 File Offset: 0x000060F2 public SendInvitationRequest() : base(ServiceTypes.Matching, FunctionTypes.MatchingSendInvitation) { } // Token: 0x04000153 RID: 339 public const int MAX_SIZE_ATTACHMENT = 1048576; // Token: 0x04000154 RID: 340 public const int MAX_NUM_RECIPIENTS = 16; // Token: 0x04000155 RID: 341 public const int MAX_SIZE_USER_MESSAGE = 511; // Token: 0x04000156 RID: 342 internal ulong roomId; // Token: 0x04000157 RID: 343 internal ulong numRecipients; // Token: 0x04000158 RID: 344 [MarshalAs(UnmanagedType.ByValArray, SizeConst = 16)] internal Core.NpAccountId[] recipients = new Core.NpAccountId[16]; // Token: 0x04000159 RID: 345 [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 512)] internal string userMessage; // Token: 0x0400015A RID: 346 internal ulong attachmentSize; // Token: 0x0400015B RID: 347 [MarshalAs(UnmanagedType.LPArray)] internal byte[] attachment; // Token: 0x0400015C RID: 348 internal int maxNumberRecipientsToAdd; // Token: 0x0400015D RID: 349 [MarshalAs(UnmanagedType.I1)] internal bool recipientsEditableByUser; // Token: 0x0400015E RID: 350 [MarshalAs(UnmanagedType.I1)] internal bool enableDialog; } // Token: 0x0200005F RID: 95 public enum SetRoomInfoType { // Token: 0x04000160 RID: 352 Invalid, // Token: 0x04000161 RID: 353 MemberInfo, // Token: 0x04000162 RID: 354 RoomExternalInfo, // Token: 0x04000163 RID: 355 RoomInternalInfo, // Token: 0x04000164 RID: 356 RoomSessionInfo, // Token: 0x04000165 RID: 357 RoomTopology } // Token: 0x02000060 RID: 96 [StructLayout(LayoutKind.Sequential)] public class SetRoomInfoRequest : RequestBase { // Token: 0x170000C5 RID: 197 // (get) Token: 0x060001FD RID: 509 RVA: 0x00007110 File Offset: 0x00006110 // (set) Token: 0x060001FE RID: 510 RVA: 0x00007128 File Offset: 0x00006128 public ulong RoomId { get { return this.roomId; } set { this.roomId = value; } } // Token: 0x170000C6 RID: 198 // (get) Token: 0x060001FF RID: 511 RVA: 0x00007134 File Offset: 0x00006134 // (set) Token: 0x06000200 RID: 512 RVA: 0x0000714C File Offset: 0x0000614C public Matching.SetRoomInfoType RoomInfoType { get { return this.roomInfoType; } set { this.roomInfoType = value; } } // Token: 0x170000C7 RID: 199 // (get) Token: 0x06000201 RID: 513 RVA: 0x00007158 File Offset: 0x00006158 // (set) Token: 0x06000202 RID: 514 RVA: 0x00007170 File Offset: 0x00006170 public Matching.SetRoomInfoRequest.MemberInformation MemberInfo { get { return this.memberInfo; } set { this.memberInfo = value; } } // Token: 0x170000C8 RID: 200 // (get) Token: 0x06000203 RID: 515 RVA: 0x0000717C File Offset: 0x0000617C // (set) Token: 0x06000204 RID: 516 RVA: 0x00007194 File Offset: 0x00006194 public Matching.SetRoomInfoRequest.ExternalRoomInformation ExternalRoomInfo { get { return this.externalRoomInfo; } set { this.externalRoomInfo = value; } } // Token: 0x170000C9 RID: 201 // (get) Token: 0x06000205 RID: 517 RVA: 0x000071A0 File Offset: 0x000061A0 // (set) Token: 0x06000206 RID: 518 RVA: 0x000071B8 File Offset: 0x000061B8 public Matching.SetRoomInfoRequest.InternalRoomInformation InternalRoomInfo { get { return this.internalRoomInfo; } set { this.internalRoomInfo = value; } } // Token: 0x170000CA RID: 202 // (get) Token: 0x06000207 RID: 519 RVA: 0x000071C4 File Offset: 0x000061C4 // (set) Token: 0x06000208 RID: 520 RVA: 0x000071DC File Offset: 0x000061DC public Matching.SetRoomInfoRequest.RoomSessionInformation RoomSessionInfo { get { return this.roomSessionInfo; } set { this.roomSessionInfo = value; } } // Token: 0x170000CB RID: 203 // (get) Token: 0x06000209 RID: 521 RVA: 0x000071E8 File Offset: 0x000061E8 // (set) Token: 0x0600020A RID: 522 RVA: 0x00007200 File Offset: 0x00006200 public Matching.TopologyType RoomTopology { get { return this.roomTopology; } set { this.roomTopology = value; } } // Token: 0x0600020B RID: 523 RVA: 0x0000720A File Offset: 0x0000620A public SetRoomInfoRequest() : base(ServiceTypes.Matching, FunctionTypes.MatchingSetRoomInfo) { this.memberInfo.Init(); this.externalRoomInfo.Init(); this.internalRoomInfo.Init(); this.roomSessionInfo.Init(); } // Token: 0x04000166 RID: 358 public const int MAX_MEMBER_ATTRIBUTES = 8; // Token: 0x04000167 RID: 359 public const int MAX_ATTRIBUTES = 64; // Token: 0x04000168 RID: 360 internal ulong roomId; // Token: 0x04000169 RID: 361 internal Matching.SetRoomInfoType roomInfoType; // Token: 0x0400016A RID: 362 internal Matching.SetRoomInfoRequest.MemberInformation memberInfo; // Token: 0x0400016B RID: 363 internal Matching.SetRoomInfoRequest.ExternalRoomInformation externalRoomInfo; // Token: 0x0400016C RID: 364 internal Matching.SetRoomInfoRequest.InternalRoomInformation internalRoomInfo; // Token: 0x0400016D RID: 365 internal Matching.SetRoomInfoRequest.RoomSessionInformation roomSessionInfo; // Token: 0x0400016E RID: 366 internal Matching.TopologyType roomTopology; // Token: 0x02000061 RID: 97 public struct MemberInformation { // Token: 0x0600020C RID: 524 RVA: 0x00007249 File Offset: 0x00006249 internal void Init() { this.memberAttributes = new Matching.Attribute[8]; } // Token: 0x170000CC RID: 204 // (get) Token: 0x0600020D RID: 525 RVA: 0x00007258 File Offset: 0x00006258 // (set) Token: 0x0600020E RID: 526 RVA: 0x000072A4 File Offset: 0x000062A4 public Matching.Attribute[] MemberAttributes { get { Matching.Attribute[] array; if (this.numMemberAttributes == 0UL) { array = null; } else { Matching.Attribute[] array2 = new Matching.Attribute[this.numMemberAttributes]; Array.Copy(this.memberAttributes, array2, (int)this.numMemberAttributes); array = array2; } return array; } set { if (this.memberAttributes == null) { this.memberAttributes = new Matching.Attribute[8]; } if (value != null) { if (value.Length > 8) { throw new NpToolkitException("The size of the attributes array is more than " + 8); } value.CopyTo(this.memberAttributes, 0); this.numMemberAttributes = (ulong)((long)value.Length); } else { this.numMemberAttributes = 0UL; } } } // Token: 0x170000CD RID: 205 // (get) Token: 0x0600020F RID: 527 RVA: 0x00007324 File Offset: 0x00006324 // (set) Token: 0x06000210 RID: 528 RVA: 0x0000733C File Offset: 0x0000633C public ushort MemberId { get { return this.memberId; } set { this.memberId = value; } } // Token: 0x0400016F RID: 367 internal ulong numMemberAttributes; // Token: 0x04000170 RID: 368 [MarshalAs(UnmanagedType.ByValArray, SizeConst = 8)] internal Matching.Attribute[] memberAttributes; // Token: 0x04000171 RID: 369 internal ushort memberId; } // Token: 0x02000062 RID: 98 public struct ExternalRoomInformation { // Token: 0x06000211 RID: 529 RVA: 0x00007346 File Offset: 0x00006346 internal void Init() { this.externalAttributes = new Matching.Attribute[64]; this.searchAttributes = new Matching.Attribute[64]; } // Token: 0x170000CE RID: 206 // (get) Token: 0x06000212 RID: 530 RVA: 0x00007364 File Offset: 0x00006364 // (set) Token: 0x06000213 RID: 531 RVA: 0x000073B0 File Offset: 0x000063B0 public Matching.Attribute[] ExternalAttributes { get { Matching.Attribute[] array; if (this.numExternalAttributes == 0UL) { array = null; } else { Matching.Attribute[] array2 = new Matching.Attribute[this.numExternalAttributes]; Array.Copy(this.externalAttributes, array2, (int)this.numExternalAttributes); array = array2; } return array; } set { if (this.externalAttributes == null) { this.externalAttributes = new Matching.Attribute[64]; } if (value != null) { if (value.Length > 64) { throw new NpToolkitException("The size of the attributes array is more than " + 64); } value.CopyTo(this.externalAttributes, 0); this.numExternalAttributes = (ulong)((long)value.Length); } else { this.numExternalAttributes = 0UL; } } } // Token: 0x170000CF RID: 207 // (get) Token: 0x06000214 RID: 532 RVA: 0x00007434 File Offset: 0x00006434 // (set) Token: 0x06000215 RID: 533 RVA: 0x00007480 File Offset: 0x00006480 public Matching.Attribute[] SearchAttributes { get { Matching.Attribute[] array; if (this.numSearchAttributes == 0UL) { array = null; } else { Matching.Attribute[] array2 = new Matching.Attribute[this.numSearchAttributes]; Array.Copy(this.searchAttributes, array2, (int)this.numSearchAttributes); array = array2; } return array; } set { if (this.searchAttributes == null) { this.searchAttributes = new Matching.Attribute[64]; } if (value != null) { if (value.Length > 64) { throw new NpToolkitException("The size of the attributes array is more than " + 64); } value.CopyTo(this.searchAttributes, 0); this.numSearchAttributes = (ulong)((long)value.Length); } else { this.numSearchAttributes = 0UL; } } } // Token: 0x04000172 RID: 370 internal ulong numExternalAttributes; // Token: 0x04000173 RID: 371 [MarshalAs(UnmanagedType.ByValArray, SizeConst = 64)] internal Matching.Attribute[] externalAttributes; // Token: 0x04000174 RID: 372 internal ulong numSearchAttributes; // Token: 0x04000175 RID: 373 [MarshalAs(UnmanagedType.ByValArray, SizeConst = 64)] internal Matching.Attribute[] searchAttributes; } // Token: 0x02000063 RID: 99 public struct InternalRoomInformation { // Token: 0x06000216 RID: 534 RVA: 0x00007501 File Offset: 0x00006501 internal void Init() { this.internalAttributes = new Matching.Attribute[64]; } // Token: 0x170000D0 RID: 208 // (get) Token: 0x06000217 RID: 535 RVA: 0x00007514 File Offset: 0x00006514 // (set) Token: 0x06000218 RID: 536 RVA: 0x00007560 File Offset: 0x00006560 public Matching.Attribute[] InternalAttributes { get { Matching.Attribute[] array; if (this.numInternalAttributes == 0UL) { array = null; } else { Matching.Attribute[] array2 = new Matching.Attribute[this.numInternalAttributes]; Array.Copy(this.internalAttributes, array2, (int)this.numInternalAttributes); array = array2; } return array; } set { if (this.internalAttributes == null) { this.internalAttributes = new Matching.Attribute[64]; } if (value != null) { if (value.Length > 64) { throw new NpToolkitException("The size of the attributes array is more than " + 64); } value.CopyTo(this.internalAttributes, 0); this.numInternalAttributes = (ulong)((long)value.Length); } else { this.numInternalAttributes = 0UL; } } } // Token: 0x170000D1 RID: 209 // (get) Token: 0x06000219 RID: 537 RVA: 0x000075E4 File Offset: 0x000065E4 // (set) Token: 0x0600021A RID: 538 RVA: 0x000075FC File Offset: 0x000065FC public Core.OptionalBoolean AllowBlockedUsersOfMembers { get { return this.allowBlockedUsersOfMembers; } set { this.allowBlockedUsersOfMembers = value; } } // Token: 0x170000D2 RID: 210 // (get) Token: 0x0600021B RID: 539 RVA: 0x00007608 File Offset: 0x00006608 // (set) Token: 0x0600021C RID: 540 RVA: 0x00007620 File Offset: 0x00006620 public Core.OptionalBoolean JoinAllLocalUsers { get { return this.joinAllLocalUsers; } set { this.joinAllLocalUsers = value; } } // Token: 0x170000D3 RID: 211 // (get) Token: 0x0600021D RID: 541 RVA: 0x0000762C File Offset: 0x0000662C // (set) Token: 0x0600021E RID: 542 RVA: 0x00007644 File Offset: 0x00006644 public Core.OptionalBoolean IsNatRestricted { get { return this.isNatRestricted; } set { this.isNatRestricted = value; } } // Token: 0x170000D4 RID: 212 // (get) Token: 0x0600021F RID: 543 RVA: 0x00007650 File Offset: 0x00006650 // (set) Token: 0x06000220 RID: 544 RVA: 0x00007668 File Offset: 0x00006668 public uint NumReservedSlots { get { return this.numReservedSlots; } set { this.numReservedSlots = value; } } // Token: 0x170000D5 RID: 213 // (get) Token: 0x06000221 RID: 545 RVA: 0x00007674 File Offset: 0x00006674 // (set) Token: 0x06000222 RID: 546 RVA: 0x0000768C File Offset: 0x0000668C public Matching.RoomVisibility Visibility { get { return this.visibility; } set { this.visibility = value; } } // Token: 0x170000D6 RID: 214 // (get) Token: 0x06000223 RID: 547 RVA: 0x00007698 File Offset: 0x00006698 // (set) Token: 0x06000224 RID: 548 RVA: 0x000076B0 File Offset: 0x000066B0 public Core.OptionalBoolean CloseRoom { get { return this.closeRoom; } set { this.closeRoom = value; } } // Token: 0x04000176 RID: 374 internal ulong numInternalAttributes; // Token: 0x04000177 RID: 375 [MarshalAs(UnmanagedType.ByValArray, SizeConst = 64)] internal Matching.Attribute[] internalAttributes; // Token: 0x04000178 RID: 376 internal Core.OptionalBoolean allowBlockedUsersOfMembers; // Token: 0x04000179 RID: 377 internal Core.OptionalBoolean joinAllLocalUsers; // Token: 0x0400017A RID: 378 internal Core.OptionalBoolean isNatRestricted; // Token: 0x0400017B RID: 379 internal uint numReservedSlots; // Token: 0x0400017C RID: 380 internal Matching.RoomVisibility visibility; // Token: 0x0400017D RID: 381 internal Core.OptionalBoolean closeRoom; } // Token: 0x02000064 RID: 100 public struct RoomSessionInformation { // Token: 0x06000225 RID: 549 RVA: 0x000076BA File Offset: 0x000066BA internal void Init() { this.localizations = new Matching.LocalizedSessionInfo[10]; } // Token: 0x170000D7 RID: 215 // (get) Token: 0x06000226 RID: 550 RVA: 0x000076CC File Offset: 0x000066CC // (set) Token: 0x06000227 RID: 551 RVA: 0x000076E4 File Offset: 0x000066E4 public Core.OptionalBoolean DisplayOnSystem { get { return this.displayOnSystem; } set { this.displayOnSystem = value; } } // Token: 0x170000D8 RID: 216 // (get) Token: 0x06000228 RID: 552 RVA: 0x000076F0 File Offset: 0x000066F0 // (set) Token: 0x06000229 RID: 553 RVA: 0x00007708 File Offset: 0x00006708 public Core.OptionalBoolean IsSystemJoinable { get { return this.isSystemJoinable; } set { this.isSystemJoinable = value; } } // Token: 0x170000D9 RID: 217 // (get) Token: 0x0600022A RID: 554 RVA: 0x00007714 File Offset: 0x00006714 // (set) Token: 0x0600022B RID: 555 RVA: 0x0000772C File Offset: 0x0000672C public byte[] ChangeableData { get { return this.changeableData; } set { if (value.Length > 1024) { throw new NpToolkitException("The size of the changeable data array is more than " + 1024 + " bytes."); } this.changeableData = value; this.changeableDataSize = (ulong)((long)value.Length); } } // Token: 0x170000DA RID: 218 // (get) Token: 0x0600022C RID: 556 RVA: 0x0000777C File Offset: 0x0000677C // (set) Token: 0x0600022D RID: 557 RVA: 0x00007794 File Offset: 0x00006794 public string Status { get { return this.status; } set { if (value.Length > 255) { throw new NpToolkitException("The size of the status string is more than " + 255 + " characters."); } this.status = value; } } // Token: 0x170000DB RID: 219 // (get) Token: 0x0600022E RID: 558 RVA: 0x000077E0 File Offset: 0x000067E0 // (set) Token: 0x0600022F RID: 559 RVA: 0x0000782C File Offset: 0x0000682C public Matching.LocalizedSessionInfo[] Localizations { get { Matching.LocalizedSessionInfo[] array; if (this.numLocalizations == 0UL) { array = null; } else { Matching.LocalizedSessionInfo[] array2 = new Matching.LocalizedSessionInfo[this.numLocalizations]; Array.Copy(this.localizations, array2, (int)this.numLocalizations); array = array2; } return array; } set { if (value != null) { if (value.Length > 10) { throw new NpToolkitException("The size of the localization array is more than " + 10); } value.CopyTo(this.localizations, 0); this.numLocalizations = (ulong)((long)value.Length); } else { this.numLocalizations = 0UL; } } } // Token: 0x170000DC RID: 220 // (get) Token: 0x06000230 RID: 560 RVA: 0x00007890 File Offset: 0x00006890 // (set) Token: 0x06000231 RID: 561 RVA: 0x000078A8 File Offset: 0x000068A8 public Matching.SessionImage Image { get { return this.image; } set { this.image = value; } } // Token: 0x0400017E RID: 382 internal Core.OptionalBoolean displayOnSystem; // Token: 0x0400017F RID: 383 internal Core.OptionalBoolean isSystemJoinable; // Token: 0x04000180 RID: 384 internal ulong changeableDataSize; // Token: 0x04000181 RID: 385 [MarshalAs(UnmanagedType.LPArray)] internal byte[] changeableData; // Token: 0x04000182 RID: 386 [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 256)] internal string status; // Token: 0x04000183 RID: 387 internal ulong numLocalizations; // Token: 0x04000184 RID: 388 [MarshalAs(UnmanagedType.ByValArray, SizeConst = 10)] internal Matching.LocalizedSessionInfo[] localizations; // Token: 0x04000185 RID: 389 internal Matching.SessionImage image; } } // Token: 0x02000065 RID: 101 public struct NpMatching2SessionPassword { // Token: 0x170000DD RID: 221 // (get) Token: 0x06000232 RID: 562 RVA: 0x000078B4 File Offset: 0x000068B4 // (set) Token: 0x06000233 RID: 563 RVA: 0x000078CC File Offset: 0x000068CC public string Password { get { return this.password; } set { if (value.Length > 8) { throw new NpToolkitException("The size of the password string is more than " + 8 + " characters."); } this.password = value; } } // Token: 0x06000234 RID: 564 RVA: 0x0000790D File Offset: 0x0000690D internal void Read(MemoryBuffer buffer) { buffer.ReadString(ref this.password); } // Token: 0x06000235 RID: 565 RVA: 0x00007920 File Offset: 0x00006920 public override string ToString() { return this.password; } // Token: 0x06000236 RID: 566 RVA: 0x00007938 File Offset: 0x00006938 public static implicit operator Matching.NpMatching2SessionPassword(string value) { return new Matching.NpMatching2SessionPassword { Password = value }; } // Token: 0x04000186 RID: 390 public const int NP_MATCHING2_SESSION_PASSWORD_SIZE = 8; // Token: 0x04000187 RID: 391 [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 8)] internal string password; } // Token: 0x02000066 RID: 102 public struct NpSessionId { // Token: 0x170000DE RID: 222 // (get) Token: 0x06000237 RID: 567 RVA: 0x0000795C File Offset: 0x0000695C public string Data { get { return this.data; } } // Token: 0x06000238 RID: 568 RVA: 0x00007974 File Offset: 0x00006974 internal void Read(MemoryBuffer buffer) { buffer.ReadString(ref this.data); } // Token: 0x06000239 RID: 569 RVA: 0x00007984 File Offset: 0x00006984 public override string ToString() { return this.data; } // Token: 0x04000188 RID: 392 public const int NP_SESSION_ID_MAX_SIZE = 45; // Token: 0x04000189 RID: 393 [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 46)] internal string data; } // Token: 0x02000067 RID: 103 public struct NpMatching2WorldId { // Token: 0x170000DF RID: 223 // (get) Token: 0x0600023A RID: 570 RVA: 0x0000799C File Offset: 0x0000699C // (set) Token: 0x0600023B RID: 571 RVA: 0x000079B4 File Offset: 0x000069B4 public uint Id { get { return this.id; } set { this.id = value; } } // Token: 0x0600023C RID: 572 RVA: 0x000079BE File Offset: 0x000069BE internal void Read(MemoryBuffer buffer) { this.id = buffer.ReadUInt32(); } // Token: 0x0400018A RID: 394 internal uint id; } // Token: 0x02000068 RID: 104 public struct NpMatching2WorldNumber { // Token: 0x170000E0 RID: 224 // (get) Token: 0x0600023D RID: 573 RVA: 0x000079D0 File Offset: 0x000069D0 // (set) Token: 0x0600023E RID: 574 RVA: 0x000079E8 File Offset: 0x000069E8 public ushort Num { get { return this.num; } set { this.num = value; } } // Token: 0x0600023F RID: 575 RVA: 0x000079F2 File Offset: 0x000069F2 internal void Read(MemoryBuffer buffer) { this.num = buffer.ReadUInt16(); } // Token: 0x06000240 RID: 576 RVA: 0x00007A04 File Offset: 0x00006A04 public static implicit operator Matching.NpMatching2WorldNumber(ushort value) { return new Matching.NpMatching2WorldNumber { num = value }; } // Token: 0x0400018B RID: 395 internal ushort num; } // Token: 0x02000069 RID: 105 public struct World { // Token: 0x170000E1 RID: 225 // (get) Token: 0x06000241 RID: 577 RVA: 0x00007A28 File Offset: 0x00006A28 public Matching.NpMatching2WorldId WorldId { get { return this.worldId; } } // Token: 0x170000E2 RID: 226 // (get) Token: 0x06000242 RID: 578 RVA: 0x00007A40 File Offset: 0x00006A40 public uint CurrentNumberOfRooms { get { return this.currentNumberOfRooms; } } // Token: 0x170000E3 RID: 227 // (get) Token: 0x06000243 RID: 579 RVA: 0x00007A58 File Offset: 0x00006A58 public uint CurrentNumberOfMembers { get { return this.currentNumberOfMembers; } } // Token: 0x170000E4 RID: 228 // (get) Token: 0x06000244 RID: 580 RVA: 0x00007A70 File Offset: 0x00006A70 public Matching.NpMatching2WorldNumber WorldNumber { get { return this.worldNumber; } } // Token: 0x06000245 RID: 581 RVA: 0x00007A88 File Offset: 0x00006A88 internal void Read(MemoryBuffer buffer) { this.worldId.Read(buffer); this.currentNumberOfRooms = buffer.ReadUInt32(); this.currentNumberOfMembers = buffer.ReadUInt32(); this.worldNumber.Read(buffer); } // Token: 0x0400018C RID: 396 internal Matching.NpMatching2WorldId worldId; // Token: 0x0400018D RID: 397 internal uint currentNumberOfRooms; // Token: 0x0400018E RID: 398 internal uint currentNumberOfMembers; // Token: 0x0400018F RID: 399 internal Matching.NpMatching2WorldNumber worldNumber; } // Token: 0x0200006A RID: 106 public enum SignalingStatus { // Token: 0x04000191 RID: 401 NotApplicable, // Token: 0x04000192 RID: 402 Established, // Token: 0x04000193 RID: 403 EstablishedFailToGetInformation, // Token: 0x04000194 RID: 404 Dead } // Token: 0x0200006B RID: 107 public enum NatType { // Token: 0x04000196 RID: 406 Invalid, // Token: 0x04000197 RID: 407 NatType1, // Token: 0x04000198 RID: 408 NatType2, // Token: 0x04000199 RID: 409 NatType3 } // Token: 0x0200006C RID: 108 public class MemberSignalingInformation { // Token: 0x170000E5 RID: 229 // (get) Token: 0x06000246 RID: 582 RVA: 0x00007AC0 File Offset: 0x00006AC0 public Matching.NatType NatType { get { return this.natType; } } // Token: 0x170000E6 RID: 230 // (get) Token: 0x06000247 RID: 583 RVA: 0x00007AD8 File Offset: 0x00006AD8 public Matching.SignalingStatus Status { get { return this.status; } } // Token: 0x170000E7 RID: 231 // (get) Token: 0x06000248 RID: 584 RVA: 0x00007AF0 File Offset: 0x00006AF0 public uint RoundTripTime { get { return this.roundTripTime; } } // Token: 0x170000E8 RID: 232 // (get) Token: 0x06000249 RID: 585 RVA: 0x00007B08 File Offset: 0x00006B08 public NetworkUtils.NetInAddr IpAddress { get { return this.ipAddress; } } // Token: 0x170000E9 RID: 233 // (get) Token: 0x0600024A RID: 586 RVA: 0x00007B20 File Offset: 0x00006B20 public ushort Port { get { return this.port; } } // Token: 0x170000EA RID: 234 // (get) Token: 0x0600024B RID: 587 RVA: 0x00007B38 File Offset: 0x00006B38 public ushort PortNetworkOrder { get { return this.portNetworkOrder; } } // Token: 0x0600024C RID: 588 RVA: 0x00007B50 File Offset: 0x00006B50 internal void Read(MemoryBuffer buffer) { this.natType = (Matching.NatType)buffer.ReadUInt32(); this.status = (Matching.SignalingStatus)buffer.ReadUInt32(); this.roundTripTime = buffer.ReadUInt32(); this.ipAddress.Read(buffer); this.port = buffer.ReadUInt16(); this.portNetworkOrder = buffer.ReadUInt16(); } // Token: 0x0400019A RID: 410 internal Matching.NatType natType; // Token: 0x0400019B RID: 411 internal Matching.SignalingStatus status; // Token: 0x0400019C RID: 412 internal uint roundTripTime; // Token: 0x0400019D RID: 413 internal NetworkUtils.NetInAddr ipAddress; // Token: 0x0400019E RID: 414 internal ushort port; // Token: 0x0400019F RID: 415 internal ushort portNetworkOrder; } // Token: 0x0200006D RID: 109 public class Member { // Token: 0x170000EB RID: 235 // (get) Token: 0x0600024E RID: 590 RVA: 0x00007BB0 File Offset: 0x00006BB0 public Core.OnlineUser OnlineUser { get { return this.onlineUser; } } // Token: 0x170000EC RID: 236 // (get) Token: 0x0600024F RID: 591 RVA: 0x00007BC8 File Offset: 0x00006BC8 public Matching.Attribute[] MemberAttributes { get { return this.memberAttributes; } } // Token: 0x170000ED RID: 237 // (get) Token: 0x06000250 RID: 592 RVA: 0x00007BE0 File Offset: 0x00006BE0 public DateTime JoinedDate { get { return this.joinedDate; } } // Token: 0x170000EE RID: 238 // (get) Token: 0x06000251 RID: 593 RVA: 0x00007BF8 File Offset: 0x00006BF8 public Matching.MemberSignalingInformation SignalingInformation { get { return this.signalingInformation; } } // Token: 0x170000EF RID: 239 // (get) Token: 0x06000252 RID: 594 RVA: 0x00007C10 File Offset: 0x00006C10 public Core.PlatformType Platform { get { return this.platform; } } // Token: 0x170000F0 RID: 240 // (get) Token: 0x06000253 RID: 595 RVA: 0x00007C28 File Offset: 0x00006C28 public ushort RoomMemberId { get { return this.roomMemberId; } } // Token: 0x170000F1 RID: 241 // (get) Token: 0x06000254 RID: 596 RVA: 0x00007C40 File Offset: 0x00006C40 public bool IsOwner { get { return this.isOwner; } } // Token: 0x170000F2 RID: 242 // (get) Token: 0x06000255 RID: 597 RVA: 0x00007C58 File Offset: 0x00006C58 public bool IsMe { get { return this.isMe; } } // Token: 0x06000256 RID: 598 RVA: 0x00007C70 File Offset: 0x00006C70 internal void Read(MemoryBuffer buffer) { this.onlineUser.Read(buffer); ulong num = buffer.ReadUInt64(); this.memberAttributes = new Matching.Attribute[num]; for (ulong num2 = 0UL; num2 < num; num2 += 1UL) { this.memberAttributes[(int)(checked((IntPtr)num2))].Read(buffer); } this.joinedDate = Core.ReadRtcTick(buffer); this.signalingInformation.Read(buffer); this.platform = (Core.PlatformType)buffer.ReadUInt32(); this.roomMemberId = buffer.ReadUInt16(); this.isOwner = buffer.ReadBool(); this.isMe = buffer.ReadBool(); } // Token: 0x040001A0 RID: 416 internal Core.OnlineUser onlineUser = new Core.OnlineUser(); // Token: 0x040001A1 RID: 417 internal Matching.Attribute[] memberAttributes; // Token: 0x040001A2 RID: 418 internal DateTime joinedDate; // Token: 0x040001A3 RID: 419 internal Matching.MemberSignalingInformation signalingInformation = new Matching.MemberSignalingInformation(); // Token: 0x040001A4 RID: 420 internal Core.PlatformType platform; // Token: 0x040001A5 RID: 421 internal ushort roomMemberId; // Token: 0x040001A6 RID: 422 internal bool isOwner; // Token: 0x040001A7 RID: 423 internal bool isMe; } // Token: 0x0200006E RID: 110 public class Room { // Token: 0x170000F3 RID: 243 // (get) Token: 0x06000258 RID: 600 RVA: 0x00007D30 File Offset: 0x00006D30 public ushort MatchingContext { get { return this.matchingContext; } } // Token: 0x170000F4 RID: 244 // (get) Token: 0x06000259 RID: 601 RVA: 0x00007D48 File Offset: 0x00006D48 public ushort ServerId { get { return this.serverId; } } // Token: 0x170000F5 RID: 245 // (get) Token: 0x0600025A RID: 602 RVA: 0x00007D60 File Offset: 0x00006D60 public uint WorldId { get { return this.worldId; } } // Token: 0x170000F6 RID: 246 // (get) Token: 0x0600025B RID: 603 RVA: 0x00007D78 File Offset: 0x00006D78 public ulong RoomId { get { return this.roomId; } } // Token: 0x170000F7 RID: 247 // (get) Token: 0x0600025C RID: 604 RVA: 0x00007D90 File Offset: 0x00006D90 public Matching.Attribute[] Attributes { get { return this.attributes; } } // Token: 0x170000F8 RID: 248 // (get) Token: 0x0600025D RID: 605 RVA: 0x00007DA8 File Offset: 0x00006DA8 public string Name { get { return this.name; } } // Token: 0x170000F9 RID: 249 // (get) Token: 0x0600025E RID: 606 RVA: 0x00007DC0 File Offset: 0x00006DC0 public Matching.Member[] CurrentMembers { get { return this.currentMembers; } } // Token: 0x170000FA RID: 250 // (get) Token: 0x0600025F RID: 607 RVA: 0x00007DD8 File Offset: 0x00006DD8 public ulong NumMaxMembers { get { return this.numMaxMembers; } } // Token: 0x170000FB RID: 251 // (get) Token: 0x06000260 RID: 608 RVA: 0x00007DF0 File Offset: 0x00006DF0 public Matching.TopologyType Topology { get { return this.topology; } } // Token: 0x170000FC RID: 252 // (get) Token: 0x06000261 RID: 609 RVA: 0x00007E08 File Offset: 0x00006E08 public uint NumReservedSlots { get { return this.numReservedSlots; } } // Token: 0x170000FD RID: 253 // (get) Token: 0x06000262 RID: 610 RVA: 0x00007E20 File Offset: 0x00006E20 public bool IsNatRestricted { get { return this.isNatRestricted; } } // Token: 0x170000FE RID: 254 // (get) Token: 0x06000263 RID: 611 RVA: 0x00007E38 File Offset: 0x00006E38 public bool AllowBlockedUsersOfOwner { get { return this.allowBlockedUsersOfOwner; } } // Token: 0x170000FF RID: 255 // (get) Token: 0x06000264 RID: 612 RVA: 0x00007E50 File Offset: 0x00006E50 public bool AllowBlockedUsersOfMembers { get { return this.allowBlockedUsersOfMembers; } } // Token: 0x17000100 RID: 256 // (get) Token: 0x06000265 RID: 613 RVA: 0x00007E68 File Offset: 0x00006E68 public bool JoinAllLocalUsers { get { return this.joinAllLocalUsers; } } // Token: 0x17000101 RID: 257 // (get) Token: 0x06000266 RID: 614 RVA: 0x00007E80 File Offset: 0x00006E80 public Matching.RoomMigrationType OwnershipMigration { get { return this.ownershipMigration; } } // Token: 0x17000102 RID: 258 // (get) Token: 0x06000267 RID: 615 RVA: 0x00007E98 File Offset: 0x00006E98 public Matching.RoomVisibility Visibility { get { return this.visibility; } } // Token: 0x17000103 RID: 259 // (get) Token: 0x06000268 RID: 616 RVA: 0x00007EB0 File Offset: 0x00006EB0 public Matching.NpMatching2SessionPassword Password { get { return this.password; } } // Token: 0x17000104 RID: 260 // (get) Token: 0x06000269 RID: 617 RVA: 0x00007EC8 File Offset: 0x00006EC8 public Matching.NpSessionId BoundSessionId { get { return this.boundSessionId; } } // Token: 0x17000105 RID: 261 // (get) Token: 0x0600026A RID: 618 RVA: 0x00007EE0 File Offset: 0x00006EE0 public bool IsSystemJoinable { get { return this.isSystemJoinable; } } // Token: 0x17000106 RID: 262 // (get) Token: 0x0600026B RID: 619 RVA: 0x00007EF8 File Offset: 0x00006EF8 public bool DisplayOnSystem { get { return this.displayOnSystem; } } // Token: 0x17000107 RID: 263 // (get) Token: 0x0600026C RID: 620 RVA: 0x00007F10 File Offset: 0x00006F10 public bool HasChangeableData { get { return this.hasChangeableData; } } // Token: 0x17000108 RID: 264 // (get) Token: 0x0600026D RID: 621 RVA: 0x00007F28 File Offset: 0x00006F28 public bool HasFixedData { get { return this.hasFixedData; } } // Token: 0x17000109 RID: 265 // (get) Token: 0x0600026E RID: 622 RVA: 0x00007F40 File Offset: 0x00006F40 public bool IsCrossplatform { get { return this.isCrossplatform; } } // Token: 0x1700010A RID: 266 // (get) Token: 0x0600026F RID: 623 RVA: 0x00007F58 File Offset: 0x00006F58 public bool IsClosed { get { return this.isClosed; } } // Token: 0x06000270 RID: 624 RVA: 0x00007F70 File Offset: 0x00006F70 public ushort FindRoomMemberId(Core.NpAccountId accountId) { ushort num; if (this.currentMembers == null) { num = 0; } else { for (int i = 0; i < this.currentMembers.Length; i++) { if (this.currentMembers[i].OnlineUser.accountId == accountId) { return this.currentMembers[i].roomMemberId; } } num = 0; } return num; } // Token: 0x06000271 RID: 625 RVA: 0x00007FE0 File Offset: 0x00006FE0 public ushort FindRoomMemberId(Core.OnlineID onlineId) { ushort num; if (this.currentMembers == null) { num = 0; } else { for (int i = 0; i < this.currentMembers.Length; i++) { if (this.currentMembers[i].OnlineUser.onlineId == onlineId) { return this.currentMembers[i].roomMemberId; } } num = 0; } return num; } // Token: 0x06000272 RID: 626 RVA: 0x00008050 File Offset: 0x00007050 internal void Read(MemoryBuffer buffer) { buffer.CheckMarker(MemoryBuffer.BufferIntegrityChecks.RoomBegin); this.matchingContext = buffer.ReadUInt16(); this.serverId = buffer.ReadUInt16(); this.worldId = buffer.ReadUInt32(); this.roomId = buffer.ReadUInt64(); ulong num = buffer.ReadUInt64(); this.attributes = new Matching.Attribute[num]; for (ulong num2 = 0UL; num2 < num; num2 += 1UL) { this.attributes[(int)(checked((IntPtr)num2))].Read(buffer); } buffer.ReadString(ref this.name); ulong num3 = buffer.ReadUInt64(); this.currentMembers = new Matching.Member[num3]; for (ulong num2 = 0UL; num2 < num3; num2 += 1UL) { checked { this.currentMembers[(int)((IntPtr)num2)] = new Matching.Member(); this.currentMembers[(int)((IntPtr)num2)].Read(buffer); } } this.numMaxMembers = buffer.ReadUInt64(); this.topology = (Matching.TopologyType)buffer.ReadUInt32(); this.numReservedSlots = buffer.ReadUInt32(); this.isNatRestricted = buffer.ReadBool(); this.allowBlockedUsersOfOwner = buffer.ReadBool(); this.allowBlockedUsersOfMembers = buffer.ReadBool(); this.joinAllLocalUsers = buffer.ReadBool(); this.ownershipMigration = (Matching.RoomMigrationType)buffer.ReadUInt32(); this.visibility = (Matching.RoomVisibility)buffer.ReadUInt32(); this.password.Read(buffer); this.boundSessionId.Read(buffer); this.isSystemJoinable = buffer.ReadBool(); this.displayOnSystem = buffer.ReadBool(); this.hasChangeableData = buffer.ReadBool(); this.hasFixedData = buffer.ReadBool(); this.isCrossplatform = buffer.ReadBool(); this.isClosed = buffer.ReadBool(); buffer.CheckMarker(MemoryBuffer.BufferIntegrityChecks.RoomEnd); } // Token: 0x040001A8 RID: 424 internal ushort matchingContext; // Token: 0x040001A9 RID: 425 internal ushort serverId; // Token: 0x040001AA RID: 426 internal uint worldId; // Token: 0x040001AB RID: 427 internal ulong roomId; // Token: 0x040001AC RID: 428 internal Matching.Attribute[] attributes; // Token: 0x040001AD RID: 429 internal string name; // Token: 0x040001AE RID: 430 internal Matching.Member[] currentMembers; // Token: 0x040001AF RID: 431 internal ulong numMaxMembers; // Token: 0x040001B0 RID: 432 internal Matching.TopologyType topology; // Token: 0x040001B1 RID: 433 internal uint numReservedSlots; // Token: 0x040001B2 RID: 434 internal bool isNatRestricted; // Token: 0x040001B3 RID: 435 internal bool allowBlockedUsersOfOwner; // Token: 0x040001B4 RID: 436 internal bool allowBlockedUsersOfMembers; // Token: 0x040001B5 RID: 437 internal bool joinAllLocalUsers; // Token: 0x040001B6 RID: 438 internal Matching.RoomMigrationType ownershipMigration; // Token: 0x040001B7 RID: 439 internal Matching.RoomVisibility visibility; // Token: 0x040001B8 RID: 440 internal Matching.NpMatching2SessionPassword password; // Token: 0x040001B9 RID: 441 internal Matching.NpSessionId boundSessionId; // Token: 0x040001BA RID: 442 internal bool isSystemJoinable; // Token: 0x040001BB RID: 443 internal bool displayOnSystem; // Token: 0x040001BC RID: 444 internal bool hasChangeableData; // Token: 0x040001BD RID: 445 internal bool hasFixedData; // Token: 0x040001BE RID: 446 internal bool isCrossplatform; // Token: 0x040001BF RID: 447 internal bool isClosed; } // Token: 0x0200006F RID: 111 public class WorldsResponse : ResponseBase { // Token: 0x1700010B RID: 267 // (get) Token: 0x06000274 RID: 628 RVA: 0x00008208 File Offset: 0x00007208 public Matching.World[] Worlds { get { return this.worlds; } } // Token: 0x06000275 RID: 629 RVA: 0x00008220 File Offset: 0x00007220 protected internal override void ReadResult(uint id, FunctionTypes apiCalled, RequestBase request) { base.ReadResult(id, apiCalled, request); APIResult apiresult; MemoryBuffer memoryBuffer = base.BeginReadResponseBuffer(id, apiCalled, out apiresult); if (apiresult.RaiseException) { throw new NpToolkitException(apiresult); } memoryBuffer.CheckMarker(MemoryBuffer.BufferIntegrityChecks.WorldsBegin); ulong num = memoryBuffer.ReadUInt64(); this.worlds = new Matching.World[num]; for (ulong num2 = 0UL; num2 < num; num2 += 1UL) { this.worlds[(int)(checked((IntPtr)num2))].Read(memoryBuffer); } memoryBuffer.CheckMarker(MemoryBuffer.BufferIntegrityChecks.WorldsEnd); base.EndReadResponseBuffer(memoryBuffer); } // Token: 0x040001C0 RID: 448 internal Matching.World[] worlds; } // Token: 0x02000070 RID: 112 public class RoomResponse : ResponseBase { // Token: 0x1700010C RID: 268 // (get) Token: 0x06000277 RID: 631 RVA: 0x000082BC File Offset: 0x000072BC public Matching.Room Room { get { return this.room; } } // Token: 0x06000278 RID: 632 RVA: 0x000082D4 File Offset: 0x000072D4 protected internal override void ReadResult(uint id, FunctionTypes apiCalled, RequestBase request) { base.ReadResult(id, apiCalled, request); APIResult apiresult; MemoryBuffer memoryBuffer = base.BeginReadResponseBuffer(id, apiCalled, out apiresult); if (apiresult.RaiseException) { throw new NpToolkitException(apiresult); } memoryBuffer.CheckMarker(MemoryBuffer.BufferIntegrityChecks.CreateRoomBegin); this.room = new Matching.Room(); this.room.Read(memoryBuffer); memoryBuffer.CheckMarker(MemoryBuffer.BufferIntegrityChecks.CreateRoomEnd); base.EndReadResponseBuffer(memoryBuffer); } // Token: 0x040001C1 RID: 449 internal Matching.Room room; } // Token: 0x02000071 RID: 113 public class RoomsResponse : ResponseBase { // Token: 0x1700010D RID: 269 // (get) Token: 0x0600027A RID: 634 RVA: 0x00008348 File Offset: 0x00007348 public Matching.Room[] Rooms { get { return this.rooms; } } // Token: 0x0600027B RID: 635 RVA: 0x00008360 File Offset: 0x00007360 protected internal override void ReadResult(uint id, FunctionTypes apiCalled, RequestBase request) { base.ReadResult(id, apiCalled, request); APIResult apiresult; MemoryBuffer memoryBuffer = base.BeginReadResponseBuffer(id, apiCalled, out apiresult); if (apiresult.RaiseException) { throw new NpToolkitException(apiresult); } memoryBuffer.CheckMarker(MemoryBuffer.BufferIntegrityChecks.RoomsBegin); ulong num = memoryBuffer.ReadUInt64(); this.rooms = new Matching.Room[num]; for (ulong num2 = 0UL; num2 < num; num2 += 1UL) { checked { this.rooms[(int)((IntPtr)num2)] = new Matching.Room(); this.rooms[(int)((IntPtr)num2)].Read(memoryBuffer); } } memoryBuffer.CheckMarker(MemoryBuffer.BufferIntegrityChecks.RoomsEnd); base.EndReadResponseBuffer(memoryBuffer); } // Token: 0x040001C2 RID: 450 internal Matching.Room[] rooms; } // Token: 0x02000072 RID: 114 public class GetRoomPingTimeResponse : ResponseBase { // Token: 0x1700010E RID: 270 // (get) Token: 0x0600027D RID: 637 RVA: 0x00008404 File Offset: 0x00007404 public uint RoundTripTime { get { return this.roundTripTime; } } // Token: 0x0600027E RID: 638 RVA: 0x0000841C File Offset: 0x0000741C protected internal override void ReadResult(uint id, FunctionTypes apiCalled, RequestBase request) { base.ReadResult(id, apiCalled, request); APIResult apiresult; MemoryBuffer memoryBuffer = base.BeginReadResponseBuffer(id, apiCalled, out apiresult); if (apiresult.RaiseException) { throw new NpToolkitException(apiresult); } memoryBuffer.CheckMarker(MemoryBuffer.BufferIntegrityChecks.RoomPingTimeBegin); this.roundTripTime = memoryBuffer.ReadUInt32(); memoryBuffer.CheckMarker(MemoryBuffer.BufferIntegrityChecks.RoomPingTimeEnd); base.EndReadResponseBuffer(memoryBuffer); } // Token: 0x040001C3 RID: 451 private uint roundTripTime; } // Token: 0x02000073 RID: 115 public class GetDataResponse : ResponseBase { // Token: 0x1700010F RID: 271 // (get) Token: 0x06000280 RID: 640 RVA: 0x00008484 File Offset: 0x00007484 public byte[] Data { get { return this.data; } } // Token: 0x17000110 RID: 272 // (get) Token: 0x06000281 RID: 641 RVA: 0x0000849C File Offset: 0x0000749C public Matching.DataType Type { get { return this.type; } } // Token: 0x06000282 RID: 642 RVA: 0x000084B4 File Offset: 0x000074B4 protected internal override void ReadResult(uint id, FunctionTypes apiCalled, RequestBase request) { base.ReadResult(id, apiCalled, request); APIResult apiresult; MemoryBuffer memoryBuffer = base.BeginReadResponseBuffer(id, apiCalled, out apiresult); if (apiresult.RaiseException) { throw new NpToolkitException(apiresult); } memoryBuffer.CheckMarker(MemoryBuffer.BufferIntegrityChecks.GetDataBegin); this.type = (Matching.DataType)memoryBuffer.ReadUInt32(); memoryBuffer.ReadData(ref this.data); memoryBuffer.CheckMarker(MemoryBuffer.BufferIntegrityChecks.GetDataEnd); base.EndReadResponseBuffer(memoryBuffer); } // Token: 0x040001C4 RID: 452 internal byte[] data; // Token: 0x040001C5 RID: 453 internal Matching.DataType type; } // Token: 0x02000074 RID: 116 public enum Reasons { // Token: 0x040001C7 RID: 455 MemberJoined, // Token: 0x040001C8 RID: 456 MemberLeft, // Token: 0x040001C9 RID: 457 MemberSignalingUpdate, // Token: 0x040001CA RID: 458 MemberInfoUpdated, // Token: 0x040001CB RID: 459 OwnerChanged, // Token: 0x040001CC RID: 460 RoomDestroyed, // Token: 0x040001CD RID: 461 RoomKickedOut, // Token: 0x040001CE RID: 462 RoomExternalInfoUpdated, // Token: 0x040001CF RID: 463 RoomInternalInfoUpdated, // Token: 0x040001D0 RID: 464 RoomTopologyUpdated, // Token: 0x040001D1 RID: 465 RoomSessionInfoUpdated } // Token: 0x02000075 RID: 117 public enum Causes { // Token: 0x040001D3 RID: 467 Unknown = 1, // Token: 0x040001D4 RID: 468 LeaveAction = 1, // Token: 0x040001D5 RID: 469 KickoutAction, // Token: 0x040001D6 RID: 470 GrantOwnerAction, // Token: 0x040001D7 RID: 471 ServerOperation, // Token: 0x040001D8 RID: 472 MemberDisappeared, // Token: 0x040001D9 RID: 473 ServerInternal, // Token: 0x040001DA RID: 474 ConnectionError, // Token: 0x040001DB RID: 475 SignedOut, // Token: 0x040001DC RID: 476 SystemError, // Token: 0x040001DD RID: 477 ContextError, // Token: 0x040001DE RID: 478 ContextAction } // Token: 0x02000076 RID: 118 public class RefreshRoomResponse : ResponseBase { // Token: 0x17000111 RID: 273 // (get) Token: 0x06000284 RID: 644 RVA: 0x00008528 File Offset: 0x00007528 public ulong RoomId { get { return this.roomId; } } // Token: 0x17000112 RID: 274 // (get) Token: 0x06000285 RID: 645 RVA: 0x00008540 File Offset: 0x00007540 public Matching.PresenceOptionData NotificationFromMember { get { return this.notificationFromMember; } } // Token: 0x17000113 RID: 275 // (get) Token: 0x06000286 RID: 646 RVA: 0x00008558 File Offset: 0x00007558 public Matching.Reasons Reason { get { return this.reason; } } // Token: 0x17000114 RID: 276 // (get) Token: 0x06000287 RID: 647 RVA: 0x00008570 File Offset: 0x00007570 public Matching.Causes Cause { get { return this.cause; } } // Token: 0x17000115 RID: 277 // (get) Token: 0x06000288 RID: 648 RVA: 0x00008588 File Offset: 0x00007588 public Matching.RefreshRoomResponse.OwnerInformation OwnerInfo { get { return this.ownerInfo; } } // Token: 0x17000116 RID: 278 // (get) Token: 0x06000289 RID: 649 RVA: 0x000085A0 File Offset: 0x000075A0 public Matching.Member MemberInfo { get { return this.memberInfo; } } // Token: 0x17000117 RID: 279 // (get) Token: 0x0600028A RID: 650 RVA: 0x000085B8 File Offset: 0x000075B8 public long RoomLeftError { get { return this.roomLeftError; } } // Token: 0x17000118 RID: 280 // (get) Token: 0x0600028B RID: 651 RVA: 0x000085D0 File Offset: 0x000075D0 public Matching.RefreshRoomResponse.RoomExternalInformation RoomExternalInfo { get { return this.roomExternalInfo; } } // Token: 0x17000119 RID: 281 // (get) Token: 0x0600028C RID: 652 RVA: 0x000085E8 File Offset: 0x000075E8 public Matching.RefreshRoomResponse.RoomInternalInformation RoomInternalInfo { get { return this.roomInternalInfo; } } // Token: 0x1700011A RID: 282 // (get) Token: 0x0600028D RID: 653 RVA: 0x00008600 File Offset: 0x00007600 public Matching.RefreshRoomResponse.RoomSessionInformation RoomSessionInfo { get { return this.roomSessionInfo; } } // Token: 0x1700011B RID: 283 // (get) Token: 0x0600028E RID: 654 RVA: 0x00008618 File Offset: 0x00007618 public Matching.TopologyType RoomTopology { get { return this.roomTopology; } } // Token: 0x0600028F RID: 655 RVA: 0x00008630 File Offset: 0x00007630 protected internal override void ReadResult(uint id, FunctionTypes apiCalled, RequestBase request) { base.ReadResult(id, apiCalled, request); APIResult apiresult; MemoryBuffer memoryBuffer = base.BeginReadResponseBuffer(id, apiCalled, out apiresult); if (apiresult.RaiseException) { throw new NpToolkitException(apiresult); } memoryBuffer.CheckMarker(MemoryBuffer.BufferIntegrityChecks.RefreshRoomBegin); this.roomId = memoryBuffer.ReadUInt64(); this.notificationFromMember.Read(memoryBuffer); this.reason = (Matching.Reasons)memoryBuffer.ReadUInt32(); this.cause = (Matching.Causes)memoryBuffer.ReadUInt32(); if (this.reason == Matching.Reasons.MemberJoined || this.reason == Matching.Reasons.MemberLeft || this.reason == Matching.Reasons.MemberSignalingUpdate || this.reason == Matching.Reasons.MemberInfoUpdated) { this.memberInfo = new Matching.Member(); this.memberInfo.Read(memoryBuffer); } else if (this.reason == Matching.Reasons.OwnerChanged) { this.ownerInfo = new Matching.RefreshRoomResponse.OwnerInformation(); this.ownerInfo.Read(memoryBuffer); } else if (this.reason == Matching.Reasons.RoomDestroyed || this.reason == Matching.Reasons.RoomKickedOut) { this.roomLeftError = memoryBuffer.ReadInt64(); } else if (this.reason == Matching.Reasons.RoomExternalInfoUpdated) { this.roomExternalInfo = new Matching.RefreshRoomResponse.RoomExternalInformation(); this.roomExternalInfo.Read(memoryBuffer); } else if (this.reason == Matching.Reasons.RoomInternalInfoUpdated) { this.roomInternalInfo = new Matching.RefreshRoomResponse.RoomInternalInformation(); this.roomInternalInfo.Read(memoryBuffer); } else if (this.reason == Matching.Reasons.RoomSessionInfoUpdated) { this.roomSessionInfo = new Matching.RefreshRoomResponse.RoomSessionInformation(); this.roomSessionInfo.Read(memoryBuffer); } else if (this.reason == Matching.Reasons.RoomTopologyUpdated) { this.roomTopology = (Matching.TopologyType)memoryBuffer.ReadUInt32(); } memoryBuffer.CheckMarker(MemoryBuffer.BufferIntegrityChecks.RefreshRoomEnd); base.EndReadResponseBuffer(memoryBuffer); } // Token: 0x040001DF RID: 479 internal ulong roomId; // Token: 0x040001E0 RID: 480 internal Matching.PresenceOptionData notificationFromMember; // Token: 0x040001E1 RID: 481 internal Matching.Reasons reason; // Token: 0x040001E2 RID: 482 internal Matching.Causes cause; // Token: 0x040001E3 RID: 483 internal Matching.RefreshRoomResponse.OwnerInformation ownerInfo; // Token: 0x040001E4 RID: 484 internal Matching.Member memberInfo; // Token: 0x040001E5 RID: 485 internal long roomLeftError; // Token: 0x040001E6 RID: 486 internal Matching.RefreshRoomResponse.RoomExternalInformation roomExternalInfo; // Token: 0x040001E7 RID: 487 internal Matching.RefreshRoomResponse.RoomInternalInformation roomInternalInfo; // Token: 0x040001E8 RID: 488 internal Matching.RefreshRoomResponse.RoomSessionInformation roomSessionInfo; // Token: 0x040001E9 RID: 489 internal Matching.TopologyType roomTopology; // Token: 0x02000077 RID: 119 public class OwnerInformation { // Token: 0x1700011C RID: 284 // (get) Token: 0x06000291 RID: 657 RVA: 0x0000880C File Offset: 0x0000780C public Matching.NpMatching2SessionPassword Password { get { return this.password; } } // Token: 0x1700011D RID: 285 // (get) Token: 0x06000292 RID: 658 RVA: 0x00008824 File Offset: 0x00007824 public ushort[] OldAndNewOwners { get { return this.oldAndNewOwners; } } // Token: 0x06000293 RID: 659 RVA: 0x0000883C File Offset: 0x0000783C internal void Read(MemoryBuffer buffer) { this.password.Read(buffer); for (int i = 0; i < 2; i++) { this.oldAndNewOwners[i] = buffer.ReadUInt16(); } } // Token: 0x06000294 RID: 660 RVA: 0x00008877 File Offset: 0x00007877 internal OwnerInformation() { this.oldAndNewOwners = new ushort[2]; } // Token: 0x040001EA RID: 490 public const int OWNER_EXCHANGE_SIZE = 2; // Token: 0x040001EB RID: 491 internal Matching.NpMatching2SessionPassword password; // Token: 0x040001EC RID: 492 internal ushort[] oldAndNewOwners; } // Token: 0x02000078 RID: 120 public class RoomExternalInformation { // Token: 0x1700011E RID: 286 // (get) Token: 0x06000295 RID: 661 RVA: 0x00008890 File Offset: 0x00007890 public Matching.Attribute[] Attributes { get { return this.attributes; } } // Token: 0x06000296 RID: 662 RVA: 0x000088A8 File Offset: 0x000078A8 internal void Read(MemoryBuffer buffer) { ulong num = buffer.ReadUInt64(); this.attributes = new Matching.Attribute[num]; for (ulong num2 = 0UL; num2 < num; num2 += 1UL) { checked { this.attributes[(int)((IntPtr)num2)] = default(Matching.Attribute); this.attributes[(int)((IntPtr)num2)].Read(buffer); } } } // Token: 0x040001ED RID: 493 internal Matching.Attribute[] attributes; } // Token: 0x02000079 RID: 121 public class RoomInternalInformation { // Token: 0x1700011F RID: 287 // (get) Token: 0x06000298 RID: 664 RVA: 0x00008910 File Offset: 0x00007910 public Matching.Attribute[] Attributes { get { return this.attributes; } } // Token: 0x17000120 RID: 288 // (get) Token: 0x06000299 RID: 665 RVA: 0x00008928 File Offset: 0x00007928 public Core.OptionalBoolean AllowBlockedUsersOfMembers { get { return this.allowBlockedUsersOfMembers; } } // Token: 0x17000121 RID: 289 // (get) Token: 0x0600029A RID: 666 RVA: 0x00008940 File Offset: 0x00007940 public Core.OptionalBoolean JoinAllLocalUsers { get { return this.joinAllLocalUsers; } } // Token: 0x17000122 RID: 290 // (get) Token: 0x0600029B RID: 667 RVA: 0x00008958 File Offset: 0x00007958 public Core.OptionalBoolean IsNatRestricted { get { return this.isNatRestricted; } } // Token: 0x17000123 RID: 291 // (get) Token: 0x0600029C RID: 668 RVA: 0x00008970 File Offset: 0x00007970 public uint NumReservedSlots { get { return this.numReservedSlots; } } // Token: 0x17000124 RID: 292 // (get) Token: 0x0600029D RID: 669 RVA: 0x00008988 File Offset: 0x00007988 public Matching.RoomVisibility Visibility { get { return this.visibility; } } // Token: 0x17000125 RID: 293 // (get) Token: 0x0600029E RID: 670 RVA: 0x000089A0 File Offset: 0x000079A0 public Core.OptionalBoolean CloseRoom { get { return this.closeRoom; } } // Token: 0x0600029F RID: 671 RVA: 0x000089B8 File Offset: 0x000079B8 internal void Read(MemoryBuffer buffer) { ulong num = buffer.ReadUInt64(); this.attributes = new Matching.Attribute[num]; for (ulong num2 = 0UL; num2 < num; num2 += 1UL) { checked { this.attributes[(int)((IntPtr)num2)] = default(Matching.Attribute); this.attributes[(int)((IntPtr)num2)].Read(buffer); } } this.allowBlockedUsersOfMembers = (Core.OptionalBoolean)buffer.ReadUInt32(); this.joinAllLocalUsers = (Core.OptionalBoolean)buffer.ReadUInt32(); this.isNatRestricted = (Core.OptionalBoolean)buffer.ReadUInt32(); this.numReservedSlots = buffer.ReadUInt32(); this.visibility = (Matching.RoomVisibility)buffer.ReadUInt32(); this.closeRoom = (Core.OptionalBoolean)buffer.ReadUInt32(); } // Token: 0x040001EE RID: 494 internal Matching.Attribute[] attributes; // Token: 0x040001EF RID: 495 internal Core.OptionalBoolean allowBlockedUsersOfMembers; // Token: 0x040001F0 RID: 496 internal Core.OptionalBoolean joinAllLocalUsers; // Token: 0x040001F1 RID: 497 internal Core.OptionalBoolean isNatRestricted; // Token: 0x040001F2 RID: 498 internal uint numReservedSlots; // Token: 0x040001F3 RID: 499 internal Matching.RoomVisibility visibility; // Token: 0x040001F4 RID: 500 internal Core.OptionalBoolean closeRoom; } // Token: 0x0200007A RID: 122 public class RoomSessionInformation { // Token: 0x17000126 RID: 294 // (get) Token: 0x060002A1 RID: 673 RVA: 0x00008A68 File Offset: 0x00007A68 public Core.OptionalBoolean DisplayOnSystem { get { return this.displayOnSystem; } } // Token: 0x17000127 RID: 295 // (get) Token: 0x060002A2 RID: 674 RVA: 0x00008A80 File Offset: 0x00007A80 public Core.OptionalBoolean IsSystemJoinable { get { return this.isSystemJoinable; } } // Token: 0x17000128 RID: 296 // (get) Token: 0x060002A3 RID: 675 RVA: 0x00008A98 File Offset: 0x00007A98 public Core.OptionalBoolean HasChangeableData { get { return this.hasChangeableData; } } // Token: 0x17000129 RID: 297 // (get) Token: 0x060002A4 RID: 676 RVA: 0x00008AB0 File Offset: 0x00007AB0 public Matching.NpSessionId BoundSessionId { get { return this.boundSessionId; } } // Token: 0x060002A5 RID: 677 RVA: 0x00008AC8 File Offset: 0x00007AC8 internal void Read(MemoryBuffer buffer) { this.displayOnSystem = (Core.OptionalBoolean)buffer.ReadUInt32(); this.isSystemJoinable = (Core.OptionalBoolean)buffer.ReadUInt32(); this.hasChangeableData = (Core.OptionalBoolean)buffer.ReadUInt32(); this.boundSessionId.Read(buffer); } // Token: 0x040001F5 RID: 501 internal Core.OptionalBoolean displayOnSystem; // Token: 0x040001F6 RID: 502 internal Core.OptionalBoolean isSystemJoinable; // Token: 0x040001F7 RID: 503 internal Core.OptionalBoolean hasChangeableData; // Token: 0x040001F8 RID: 504 internal Matching.NpSessionId boundSessionId; } } // Token: 0x0200007B RID: 123 public class NewRoomMessageResponse : ResponseBase { // Token: 0x1700012A RID: 298 // (get) Token: 0x060002A7 RID: 679 RVA: 0x00008B04 File Offset: 0x00007B04 public ulong RoomId { get { return this.roomId; } } // Token: 0x1700012B RID: 299 // (get) Token: 0x060002A8 RID: 680 RVA: 0x00008B1C File Offset: 0x00007B1C public byte[] Data { get { return this.data; } } // Token: 0x1700012C RID: 300 // (get) Token: 0x060002A9 RID: 681 RVA: 0x00008B34 File Offset: 0x00007B34 public string DataAsString { get { if (!this.isChatMsg) { throw new NpToolkitException("Room message data is not a UTF-8 string."); } string text; if (this.data == null) { text = ""; } else { text = Encoding.UTF8.GetString(this.data, 0, this.data.Length); } return text; } } // Token: 0x1700012D RID: 301 // (get) Token: 0x060002AA RID: 682 RVA: 0x00008B90 File Offset: 0x00007B90 public ushort Sender { get { return this.sender; } } // Token: 0x1700012E RID: 302 // (get) Token: 0x060002AB RID: 683 RVA: 0x00008BA8 File Offset: 0x00007BA8 public bool IsChatMsg { get { return this.isChatMsg; } } // Token: 0x1700012F RID: 303 // (get) Token: 0x060002AC RID: 684 RVA: 0x00008BC0 File Offset: 0x00007BC0 public bool IsFiltered { get { return this.isFiltered; } } // Token: 0x060002AD RID: 685 RVA: 0x00008BD8 File Offset: 0x00007BD8 protected internal override void ReadResult(uint id, FunctionTypes apiCalled, RequestBase request) { base.ReadResult(id, apiCalled, request); APIResult apiresult; MemoryBuffer memoryBuffer = base.BeginReadResponseBuffer(id, apiCalled, out apiresult); if (apiresult.RaiseException) { throw new NpToolkitException(apiresult); } memoryBuffer.CheckMarker(MemoryBuffer.BufferIntegrityChecks.NewRoomMessageBegin); this.roomId = memoryBuffer.ReadUInt64(); memoryBuffer.ReadData(ref this.data); this.sender = memoryBuffer.ReadUInt16(); this.isChatMsg = memoryBuffer.ReadBool(); this.isFiltered = memoryBuffer.ReadBool(); memoryBuffer.CheckMarker(MemoryBuffer.BufferIntegrityChecks.NewRoomMessageEnd); base.EndReadResponseBuffer(memoryBuffer); } // Token: 0x040001F9 RID: 505 internal ulong roomId; // Token: 0x040001FA RID: 506 internal byte[] data; // Token: 0x040001FB RID: 507 internal ushort sender; // Token: 0x040001FC RID: 508 internal bool isChatMsg; // Token: 0x040001FD RID: 509 internal bool isFiltered; } // Token: 0x0200007C RID: 124 public enum CurrentPlatform { // Token: 0x040001FF RID: 511 NotSet, // Token: 0x04000200 RID: 512 PSVita, // Token: 0x04000201 RID: 513 PS4 } // Token: 0x0200007D RID: 125 public class InvitationReceivedResponse : ResponseBase { // Token: 0x17000130 RID: 304 // (get) Token: 0x060002AF RID: 687 RVA: 0x00008C78 File Offset: 0x00007C78 public Core.OnlineUser LocalUpdatedUser { get { return this.localUpdatedUser; } } // Token: 0x17000131 RID: 305 // (get) Token: 0x060002B0 RID: 688 RVA: 0x00008C90 File Offset: 0x00007C90 public Core.OnlineUser RemoteUser { get { return this.remoteUser; } } // Token: 0x17000132 RID: 306 // (get) Token: 0x060002B1 RID: 689 RVA: 0x00008CA8 File Offset: 0x00007CA8 public Matching.CurrentPlatform Platform { get { return this.platform; } } // Token: 0x060002B2 RID: 690 RVA: 0x00008CC0 File Offset: 0x00007CC0 protected internal override void ReadResult(uint id, FunctionTypes apiCalled, RequestBase request) { base.ReadResult(id, apiCalled, request); APIResult apiresult; MemoryBuffer memoryBuffer = base.BeginReadResponseBuffer(id, apiCalled, out apiresult); if (apiresult.RaiseException) { throw new NpToolkitException(apiresult); } memoryBuffer.CheckMarker(MemoryBuffer.BufferIntegrityChecks.InvitationReceivedBegin); this.localUpdatedUser.Read(memoryBuffer); this.remoteUser.Read(memoryBuffer); this.platform = (Matching.CurrentPlatform)memoryBuffer.ReadUInt32(); memoryBuffer.CheckMarker(MemoryBuffer.BufferIntegrityChecks.InvitationReceivedEnd); base.EndReadResponseBuffer(memoryBuffer); } // Token: 0x04000202 RID: 514 internal Core.OnlineUser localUpdatedUser = new Core.OnlineUser(); // Token: 0x04000203 RID: 515 internal Core.OnlineUser remoteUser = new Core.OnlineUser(); // Token: 0x04000204 RID: 516 internal Matching.CurrentPlatform platform; } // Token: 0x0200007E RID: 126 public struct NpInvitationId { // Token: 0x17000133 RID: 307 // (get) Token: 0x060002B4 RID: 692 RVA: 0x00008D58 File Offset: 0x00007D58 public string Id { get { return this.id; } } // Token: 0x060002B5 RID: 693 RVA: 0x00008D70 File Offset: 0x00007D70 internal void Read(MemoryBuffer buffer) { buffer.ReadString(ref this.id); } // Token: 0x060002B6 RID: 694 RVA: 0x00008D80 File Offset: 0x00007D80 public override string ToString() { return this.id; } // Token: 0x04000205 RID: 517 public const int NP_INVITATION_ID_MAX_SIZE = 60; // Token: 0x04000206 RID: 518 [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 60)] internal string id; } // Token: 0x0200007F RID: 127 public class SessionInvitationEventResponse : ResponseBase { // Token: 0x17000134 RID: 308 // (get) Token: 0x060002B7 RID: 695 RVA: 0x00008D98 File Offset: 0x00007D98 public Matching.NpSessionId SessionId { get { return this.sessionId; } } // Token: 0x17000135 RID: 309 // (get) Token: 0x060002B8 RID: 696 RVA: 0x00008DB0 File Offset: 0x00007DB0 public Matching.NpInvitationId InvitationId { get { return this.invitationId; } } // Token: 0x17000136 RID: 310 // (get) Token: 0x060002B9 RID: 697 RVA: 0x00008DC8 File Offset: 0x00007DC8 public bool AcceptedInvite { get { return this.acceptedInvite; } } // Token: 0x17000137 RID: 311 // (get) Token: 0x060002BA RID: 698 RVA: 0x00008DE0 File Offset: 0x00007DE0 public Core.OnlineID OnlineId { get { return this.onlineId; } } // Token: 0x17000138 RID: 312 // (get) Token: 0x060002BB RID: 699 RVA: 0x00008DF8 File Offset: 0x00007DF8 public Core.UserServiceUserId UserId { get { return this.userId; } } // Token: 0x17000139 RID: 313 // (get) Token: 0x060002BC RID: 700 RVA: 0x00008E10 File Offset: 0x00007E10 public Core.OnlineID ReferralOnlineId { get { return this.referralOnlineId; } } // Token: 0x1700013A RID: 314 // (get) Token: 0x060002BD RID: 701 RVA: 0x00008E28 File Offset: 0x00007E28 public Core.NpAccountId ReferralAccountId { get { return this.referralAccountId; } } // Token: 0x060002BE RID: 702 RVA: 0x00008E40 File Offset: 0x00007E40 protected internal override void ReadResult(uint id, FunctionTypes apiCalled, RequestBase request) { base.ReadResult(id, apiCalled, request); APIResult apiresult; MemoryBuffer memoryBuffer = base.BeginReadResponseBuffer(id, apiCalled, out apiresult); if (apiresult.RaiseException) { throw new NpToolkitException(apiresult); } memoryBuffer.CheckMarker(MemoryBuffer.BufferIntegrityChecks.SessionInvitationEventBegin); this.sessionId.Read(memoryBuffer); this.invitationId.Read(memoryBuffer); int num = memoryBuffer.ReadInt32(); if ((num & 1) != 0) { this.acceptedInvite = true; } this.onlineId.Read(memoryBuffer); this.userId.Read(memoryBuffer); this.referralOnlineId.Read(memoryBuffer); this.referralAccountId.Read(memoryBuffer); memoryBuffer.CheckMarker(MemoryBuffer.BufferIntegrityChecks.SessionInvitationEventEnd); base.EndReadResponseBuffer(memoryBuffer); } // Token: 0x04000207 RID: 519 internal Matching.NpSessionId sessionId; // Token: 0x04000208 RID: 520 internal Matching.NpInvitationId invitationId; // Token: 0x04000209 RID: 521 internal bool acceptedInvite; // Token: 0x0400020A RID: 522 internal Core.OnlineID onlineId = new Core.OnlineID(); // Token: 0x0400020B RID: 523 internal Core.UserServiceUserId userId; // Token: 0x0400020C RID: 524 internal Core.OnlineID referralOnlineId = new Core.OnlineID(); // Token: 0x0400020D RID: 525 internal Core.NpAccountId referralAccountId; } // Token: 0x02000080 RID: 128 public struct NpPlayTogetherInvitee { // Token: 0x1700013B RID: 315 // (get) Token: 0x060002C0 RID: 704 RVA: 0x00008F20 File Offset: 0x00007F20 public Core.NpAccountId AccountId { get { return this.accountId; } } // Token: 0x1700013C RID: 316 // (get) Token: 0x060002C1 RID: 705 RVA: 0x00008F38 File Offset: 0x00007F38 public Core.OnlineID OnlineId { get { return this.onlineId; } } // Token: 0x060002C2 RID: 706 RVA: 0x00008F50 File Offset: 0x00007F50 internal void Read(MemoryBuffer buffer) { this.onlineId = new Core.OnlineID(); this.accountId.Read(buffer); this.onlineId.Read(buffer); } // Token: 0x0400020E RID: 526 internal Core.NpAccountId accountId; // Token: 0x0400020F RID: 527 internal Core.OnlineID onlineId; } // Token: 0x02000081 RID: 129 public class PlayTogetherHostEventResponse : ResponseBase { // Token: 0x1700013D RID: 317 // (get) Token: 0x060002C3 RID: 707 RVA: 0x00008F78 File Offset: 0x00007F78 public Core.UserServiceUserId UserId { get { return this.userId; } } // Token: 0x1700013E RID: 318 // (get) Token: 0x060002C4 RID: 708 RVA: 0x00008F90 File Offset: 0x00007F90 public Matching.NpPlayTogetherInvitee[] Invitees { get { return this.invitees; } } // Token: 0x060002C5 RID: 709 RVA: 0x00008FA8 File Offset: 0x00007FA8 protected internal override void ReadResult(uint id, FunctionTypes apiCalled, RequestBase request) { base.ReadResult(id, apiCalled, request); APIResult apiresult; MemoryBuffer memoryBuffer = base.BeginReadResponseBuffer(id, apiCalled, out apiresult); if (apiresult.RaiseException) { throw new NpToolkitException(apiresult); } memoryBuffer.CheckMarker(MemoryBuffer.BufferIntegrityChecks.PlayTogetherHostEventBegin); this.userId.Read(memoryBuffer); uint num = memoryBuffer.ReadUInt32(); this.invitees = new Matching.NpPlayTogetherInvitee[num]; int num2 = 0; while ((long)num2 < (long)((ulong)num)) { this.invitees[num2].Read(memoryBuffer); num2++; } memoryBuffer.CheckMarker(MemoryBuffer.BufferIntegrityChecks.PlayTogetherHostEventEnd); base.EndReadResponseBuffer(memoryBuffer); } // Token: 0x04000210 RID: 528 internal Core.UserServiceUserId userId; // Token: 0x04000211 RID: 529 internal Matching.NpPlayTogetherInvitee[] invitees; } } }