SFS2X Objective-C API  1.7.13
iOS / macOS / tvOS
CreateRoomRequest.h
1 //
2 // CreateRoomRequest.h
3 // SFS2X
4 //
5 // Original development by Infosfer Game Technologies Ltd. | http://www.infosfer.com.
6 //
7 // Maintained and developed by A51 Integrated.
8 // Copyright 2012 A51 Integrated | http://a51integrated.com. All rights reserved.
9 //
10 
11 
12 #import "BaseRequest.h"
13 #import "Room.h"
14 #import "RoomSettings.h"
15 
16 EXTERN NSString * const CreateRoomRequest_KEY_ROOM;
17 EXTERN NSString * const CreateRoomRequest_KEY_NAME;
18 EXTERN NSString * const CreateRoomRequest_KEY_PASSWORD;
19 EXTERN NSString * const CreateRoomRequest_KEY_GROUP_ID;
20 EXTERN NSString * const CreateRoomRequest_KEY_ISGAME;
21 EXTERN NSString * const CreateRoomRequest_KEY_MAXUSERS;
22 EXTERN NSString * const CreateRoomRequest_KEY_MAXSPECTATORS;
23 EXTERN NSString * const CreateRoomRequest_KEY_MAXVARS;
24 EXTERN NSString * const CreateRoomRequest_KEY_ROOMVARS;
25 EXTERN NSString * const CreateRoomRequest_KEY_PERMISSIONS;
26 EXTERN NSString * const CreateRoomRequest_KEY_EVENTS;
27 EXTERN NSString * const CreateRoomRequest_KEY_EXTID;
28 EXTERN NSString * const CreateRoomRequest_KEY_EXTCLASS;
29 EXTERN NSString * const CreateRoomRequest_KEY_EXTPROP;
30 EXTERN NSString * const CreateRoomRequest_KEY_AUTOJOIN;
31 EXTERN NSString * const CreateRoomRequest_KEY_ROOM_TO_LEAVE;
32 
33 EXTERN NSString * const CreateRoomRequest_KEY_MMO_DEFAULT_AOI;
34 EXTERN NSString * const CreateRoomRequest_KEY_MMO_MAP_LOW_LIMIT;
35 EXTERN NSString * const CreateRoomRequest_KEY_MMO_MAP_HIGH_LIMIT;
36 EXTERN NSString * const CreateRoomRequest_KEY_MMO_USER_MAX_LIMBO_SECONDS;
37 EXTERN NSString * const CreateRoomRequest_KEY_MMO_PROXIMITY_UPDATE_MILLIS;
38 EXTERN NSString * const CreateRoomRequest_KEY_MMO_SEND_ENTRY_POINT;
39 
40 /**
41  Creates a new Room in the current Zone
42  */
43 @interface CreateRoomRequest : BaseRequest {
44 
45  RoomSettings *_settings;
46  BOOL _autoJoin;
47  id<Room> _roomToLeave;
48 }
49 
50 -(id)initWithRoomSettings:(RoomSettings *)settings autoJoin:(BOOL)autoJoin roomToLeave:(id<Room>)roomToLeave;
51 
52 /**
53  @param settings the new room settings
54  @param autoJoin if true the Room will be joined as soon as it is created
55  @param roomToLeave indicates which Room should be left once the join has succeeded
56 
57  @see [ISFSEvent onRoomAdd:]
58  @see RoomSettings
59 
60  */
61 +(id)requestWithRoomSettings:(RoomSettings *)settings autoJoin:(BOOL)autoJoin roomToLeave:(id<Room>)roomToLeave;
62 
63 /**
64  Creates a new room in the current zone without joining it.
65  @param settings the new room settings, see RoomSettings for all the details
66 
67  @see [ISFSEvent onRoomAdd:]
68  @see RoomSettings
69 
70  */
71 +(id)requestWithRoomSettings:(RoomSettings *)settings;
72 
73 @end
CreateRoomRequest
Definition: CreateRoomRequest.h:43
RoomSettings
Definition: RoomSettings.h:39