Exemple #1
0
        /// <summary>
        /// 创建Server服务器,地址绑定成功后,使用PubSocket发布出去ServerReady信息,
        /// 客户端的SubSocket接收到信息后,开始链接Server服务器
        ///
        /// </summary>
        void WarBegin()
        {
            //War Data Model is passed by Lua(what ever)
            IWarModel warModel = new DebugModel();

            warInfo = new WarInfo()
            {
                warMo = WarMode.NativeWar,
                                #if Server
                Side = WarSide.ServerAndClient,
                RequiredClientCount = 2,

                Map       = warModel.getMap(),
                Charactor = warModel.getCharactor(WarCamp.FirstCamp),

                ServerIp = "127.0.0.1",
                                #else
                Side      = WarSide.OnlyClient,
                Charactor = warModel.getCharactor(WarCamp.SecondCamp),
                ServerIp  = "192.168.1.176",               //TODO : real ip (not loopback)
                                #endif
            };

            if (warInfo.Side == WarSide.ServerAndClient)            //启动server
            {
                Server = new RealServer(warInfo, ServerRepOk, ServerPubOK);
            }
            else             //启动client , 这个client不和服务器端在一个物理设备上
            {
                Client = new RealClient(warInfo);
            }
        }