9 #import <Foundation/Foundation.h>
12 FOUNDATION_EXPORT
double SFS2X_API_IOS_CatalystVersionNumber;
15 FOUNDATION_EXPORT
const unsigned char SFS2X_API_IOS_CatalystVersionString[];
21 #import "UserPrivileges.h"
23 #import "IBuddyManager.h"
24 #import "IUserManager.h"
25 #import "IRoomManager.h"
26 #import "IBitSwarmEvents.h"
27 #import "ISFSEvents.h"
28 #import "IConfigLoader.h"
32 #import "RoomSettings.h"
33 #import "RoomProperties.h"
34 #import "UserProperties.h"
36 #import "LoginRequest.h"
37 #import "LogoutRequest.h"
38 #import "JoinRoomRequest.h"
39 #import "LeaveRoomRequest.h"
40 #import "ChangeRoomNameRequest.h"
41 #import "ChangeRoomCapacityRequest.h"
42 #import "CreateRoomRequest.h"
43 #import "PlayerToSpectatorRequest.h"
44 #import "RoomPermissions.h"
45 #import "PublicMessageRequest.h"
46 #import "ChangeRoomPasswordStateRequest.h"
47 #import "AdminMessageRequest.h"
49 #import "BanUserRequest.h"
50 #import "KickUserRequest.h"
51 #import "MessageRecipientMode.h"
52 #import "SpectatorToPlayerRequest.h"
53 #import "SubscribeRoomGroupRequest.h"
54 #import "UnsubscribeRoomGroupRequest.h"
55 #import "PrivateMessageRequest.h"
56 #import "SFSInvitation.h"
57 #import "ModeratorMessageRequest.h"
58 #import "InvitationReplyRequest.h"
59 #import "InviteUsersRequest.h"
60 #import "FindRoomsRequest.h"
61 #import "FindUsersRequest.h"
62 #import "SetRoomVariablesRequest.h"
63 #import "SFSRoomVariable.h"
64 #import "SetUserVariablesRequest.h"
65 #import "ObjectMessageRequest.h"
66 #import "SFSBuddyEvent.h"
67 #import "AddBuddyRequest.h"
68 #import "InitBuddyListRequest.h"
69 #import "RemoveBuddyRequest.h"
70 #import "BlockBuddyRequest.h"
71 #import "BuddyMessageRequest.h"
72 #import "GoOnlineRequest.h"
73 #import "SetBuddyVariablesRequest.h"
74 #import "SFSBuddyVariable.h"
75 #import "CreateSFSGameRequest.h"
76 #import "SFSGameSettings.h"
77 #import "QuickJoinGameRequest.h"
78 #import "MatchExpression.h"
80 #import "StringMatch.h"
81 #import "LogicOperator.h"
82 #import "NumberMatch.h"
83 #import "ExtensionRequest.h"
86 #import "ConfigData.h"
88 #import "IMMOItemVariable.h"
89 #import "MMOItemVariable.h"
93 #import "MMORoomSettings.h"
94 #import "SetUserPositionRequest.h"
96 #import "LagMonitor.h"
97 #import "JoinRoomInvitationRequest.h"
98 #import "QuickJoinOrCreateRoomRequest.h"
100 @class BitSwarmClient;
103 extern NSString *
const CLIENT_TYPE_SEPARATOR;
104 extern int const DEFAULT_HTTP_PORT;
118 NSInteger _majVersion;
119 NSInteger _minVersion;
120 NSInteger _subVersion;
122 NSMutableString *_clientDetails;
127 BitSwarmClient *_bitSwarm;
133 NSString *_lastIpAddress;
142 NSString *_sessionToken;
145 id <Room> _lastJoinedRoom;
160 id <IUserManager> _userManager;
163 id <IRoomManager> _roomManager;
166 id <IBuddyManager> _buddyManager;
171 NSString *_currentZone;
174 BOOL _autoConnectOnConfig;
176 id <ISFSEvents> __weak _delegate;
187 @property (strong) id <IBuddyManager> buddyManager;
194 @property (readonly) NSInteger compressionThreshold;
209 @property (weak, readonly) NSString *currentIp;
216 @property (readonly) NSInteger currentPort;
223 @property (strong) NSString *currentZone;
227 @property (assign) BOOL debug;
231 @property (assign) BOOL useBlueBox;
235 @property (readonly) BOOL isConnected;
239 @property (weak, readonly) NSString *connectionMode;
241 @property (strong, readonly) LagMonitor *lagMonitor;
247 @property (weak, readonly) NSMutableArray *joinedRooms;
255 @property (strong) id <Room> lastJoinedRoom;
261 @property (weak, readonly) Logger *logger;
268 @property (strong) id <User> mySelf;
278 @property (weak, readonly) NSArray *roomList;
283 @property (strong) id <IRoomManager> roomManager;
289 @property (strong) NSString *sessionToken;
295 @property (strong) id <IUserManager> userManager;
299 @property (weak, readonly) NSString *version;
301 @property (strong) BitSwarmClient *bitSwarm;
302 @property (readwrite) BOOL isJoining;
303 @property (weak, readonly) id <ISFSEvents> delegate;
305 -(void)handleHandshake:(
SFSEvent *)evt;
306 -(void)setReconnectionSeconds:(NSInteger)seconds;
307 -(NSInteger)getReconnectionSeconds;
308 -(void)handleClientDisconnection:(NSString *)reason;
309 -(void)handleReconnectionFailure;
312 -(BitSwarmClient *)getSocketEngine;
322 -(id)initSmartFoxWithDebugMode:(BOOL)debug delegate:(
id <
ISFSEvents>)delegate;
331 +(id)smartFoxWithDebugMode:(BOOL)debug delegate:(
id <
ISFSEvents>)delegate;
356 -(void)connect:(NSString *)host port:(
int)port;
409 -(void)killConnection;
421 -(void) enableLagMonitor:(BOOL)enabled;
434 -(void) enableLagMonitorWithInterval:(BOOL)enabled interval:(NSInteger)interval queueSize:(NSInteger)qSize;
441 -(NSString*) httpUploadURI;
492 -(void)loadConfig:(NSString *)filePath connectOnSuccess:(BOOL)connectOnSuccess;
508 -(void)send:(
id <IRequest>)request;
517 -(
id <Room>)getRoomById:(NSInteger)roomId;
526 -(
id <Room>)getRoomByName:(NSString *)roomName;
534 -(NSArray *)getRoomListFromGroup:(NSString *)groupId;
559 -(void)initUDP:(NSString *)udpHost :(NSInteger)udpPort;
576 -(void)setClientDetails:(NSString *)platformId :(NSString *)version;
646 -(NSRunLoopMode) getRunLoopMode;
671 -(void) setRunLoopMode:(NSRunLoopMode)mode;