Exemplo n.º 1
0
        internal GameSocket(ServerChildTcpSocket socket, GameSocketProtocol protocol)
        {
            _internalSocket = socket;
            _lengthBuffer = new byte[protocol.Reader.LengthBytes];

            Habbo = HabboDistributor.GetPreLoginHabbo(this);
        }
Exemplo n.º 2
0
        /// <summary>
        ///   Called when the plugin is started.
        /// </summary>
        public override void Start(EventFirer eventFirer)
        {
            EventFirer = eventFirer;

            IPAddress ipAddress = CoreManager.ServerCore.Config.GetValue("r36:bindip", IPAddress.Any).Value;
            ushort port = CoreManager.ServerCore.Config.GetValue<ushort>("r36:bindport", 14478).Value;

            GameSocketProtocol r36Protocol = new GameSocketProtocol(new ClassicGameSocketReader(), 36);

            GameSocketManager = CoreManager.ServerCore.NewGameSocketManager("R36", ipAddress, port, r36Protocol);
            GameSocketManager.Start();

            CoreManager.ServerCore.EventManager.StrongBind<GameSocketEventArgs>("incoming_game_connection:after", AcceptConnection);
            CoreManager.ServerCore.EventManager.WeakBind<GameSocketEventArgs>("incoming_game_connection:after", RegisterLoginHandlers);
            CoreManager.ServerCore.EventManager.WeakBind<HabboEventArgs>("habbo_login:after", ConfirmLogin);
            CoreManager.ServerCore.EventManager.WeakBind<HabboEventArgs>("habbo_login:after", SendFuserights);
        }
Exemplo n.º 3
0
        public GameSocketManager NewGameSocketManager(string socketManagerName, IPAddress ipAddress, ushort port, GameSocketProtocol protocol)
        {
            GameSocketManager gameSocketManager = new GameSocketManager
            {
                Address = IPAddress.Any,
                Port = port,
                Protocol = protocol
            };

            CancelEventArgs args = new CancelEventArgs();
            OfficalEventFirer.Fire("gamesocketmanager_added", EventPriority.Before, gameSocketManager, args);

            if (args.Cancel)
                return null;

            GameSocketManagers.Add(socketManagerName, gameSocketManager);
            OfficalEventFirer.Fire("gamesocketmanager_added", EventPriority.Before, gameSocketManager, args);
            return gameSocketManager;
        }
Exemplo n.º 4
0
 public GameSocketManager NewGameSocketManager(string protocolName, ushort port, GameSocketProtocol protocol)
 {
     return NewGameSocketManager(protocolName, IPAddress.Any, port, protocol);
 }
Exemplo n.º 5
0
 public GameSocketManager NewGameSocketManager(string protocolName, IPEndPoint ipEndpoint, GameSocketProtocol protocol)
 {
     return NewGameSocketManager(protocolName, ipEndpoint.Address, (ushort)ipEndpoint.Port, protocol);
 }
Exemplo n.º 6
0
        public GameSocketManager NewGameSocketManager(string socketManagerName, IPAddress ipAddress, ushort port, GameSocketProtocol protocol)
        {
            GameSocketManager gameSocketManager = new GameSocketManager
            {
                Address = IPAddress.Any,
                Port = port,
                Protocol = protocol
            };

            GameSocketManagerEventArgs eventArgs = new GameSocketManagerEventArgs(gameSocketManager, socketManagerName);
            OfficalEventFirer.Fire("gamesocket_manager_added:before", eventArgs);
            if (eventArgs.IsCancelled)
                return null;
            GameSocketManagers.Add(socketManagerName, gameSocketManager);
            OfficalEventFirer.Fire("gamesocket_manager_added:after", eventArgs);

            return gameSocketManager;
        }