コード例 #1
0
        public NetworkEntity(ClientManagerEntity clientManager, ushort port, RootEntity root) : base(root)
        {
            this.clientManager = clientManager;

            server = new ServerNetwork();
            server.Listen(port, 100);

            server.SetMessageHandler(MessageType.Connect, ConnectHandler);
            server.SetMessageHandler(MessageType.Disconnect, DisconnectHandler);
            server.SetMessageHandler(MessageType.Timeout, TimeoutHandler);
            server.SetMessageHandler(MessageType.Move, MoveHandler);
        }
コード例 #2
0
        void SetBattle()
        {
            state = NetworkState.Battle;

            server.ClearMessageHandlers();

            server.SetMessageHandler(MessageType.Connect, ConnectHandler);
            server.SetMessageHandler(MessageType.Disconnect, DisconnectHandler);
            server.SetMessageHandler(MessageType.Timeout, TimeoutHandler);
            server.SetMessageHandler(MessageType.Move, MoveHandler);
            server.SetMessageHandler(MessageType.Attack, AttackHandler);
            server.SetMessageHandler(MessageType.Recall, RecallHandler);
            server.SetMessageHandler(MessageType.BuyItem, BuyItemHandler);
            server.SetMessageHandler(MessageType.SellItem, SellItemHandler);
            server.SetMessageHandler(MessageType.UseItem, UseItemHandler);
            server.SetMessageHandler(MessageType.Change, ChangeHandler);
            server.SetMessageHandler(MessageType.Cast, CastHandler);
            server.SetMessageHandler(MessageType.Chat, ChatHandler);
            server.SetMessageHandler(MessageType.Select, SelectHandler);

            ((RootEntity)Root).CreateWorld();

            foreach (var keyValue in peers)
            {
                Champion champion = new Champion(keyValue.Key, Root.GetChild <WorldEntity>().GetFountainPosition(keyValue.Value.Team), 0, 0.3f, keyValue.Value.Type, keyValue.Value.Team, initGold, Root);
                Root.GetChild <WorldEntity>().AddChild(champion);

                keyValue.Value.UnitID = champion.UnitID;
            }
        }