public void P_User_Exit_Room(ARWObject obj, SpecialRequestParam specialReqParam) { if (ARWServer.instance == null) { return; } ARWRoom currentRoom = ARWRoomManager.instance.allRooms.Where(a => a.id == specialReqParam.GetInt("room_id")).FirstOrDefault(); if (currentRoom == null) { return; } int userId = specialReqParam.GetInt("user_id"); ARWUser userLeaved = currentRoom.userList.Where(a => a.userId == userId).FirstOrDefault(); if (userLeaved == null) { return; } currentRoom.RemoveUser(userLeaved); if (ARWEvents.USER_EXIT_ROOM.handler == null) { return; } ARWEvents.USER_EXIT_ROOM.handler(obj, userLeaved); }
public void P_User_Enter_Room(ARWObject obj, SpecialRequestParam specialReqParam) { if (ARWServer.instance == null) { return; } string userProperties = specialReqParam.GetString("user_properties"); ARWUser newUser = ARWUserManager.instance.CreateUser(new JSONObject(userProperties)); ARWRoom currentRoom = ARWRoomManager.instance.allRooms.Where(a => a.id == specialReqParam.GetInt("room_id")).FirstOrDefault(); if (currentRoom == null) { return; } currentRoom.AddUserToRoom(newUser); if (ARWEvents.USER_ENTER_ROOM.handler == null) { return; } ARWEvents.USER_ENTER_ROOM.handler(obj, newUser); }