Esempio n. 1
0
        protected override void Setup()
        {
            base.Setup();

            var defaultRooms = Container.Resolve <IEnumerable <GameDefaultRoomConfig> >();

            foreach (var roomItem in defaultRooms)
            {
                TexasApplication.CreateRoom(ServerApplication, roomItem.Room);
                Log.InfoFormat("Default Room" + roomItem.Room.RoomID);
            }
        }
        public override bool OnHandleMessage(IMessage message, IServerPeer serverPeer)
        {
            if (base.OnHandleMessage(message, serverPeer))
            {
                Log.InfoFormat("CreateRoomTexasHandler :: " + roomItem.Name);

                //create room handle in application
                if (TexasApplication.CreateRoom(ServerApplication, roomItem))
                {
                    var param = new Dictionary <byte, object>()
                    {
                        { (byte)ServerParameterCode.PeerId, message.Parameters[(byte)ServerParameterCode.PeerId] },
                        { (byte)ClientParameterCode.SubOperationCode, message.Parameters[(byte)ClientParameterCode.SubOperationCode] },
                        { (byte)RoomParameterCode.Item, JsonConvert.SerializeObject(roomItem) },
                        { (byte)ClientParameterCode.ModuleId, message.Parameters[(byte)ClientParameterCode.ModuleId] },
                    };
                    var responseMessage = new Response((byte)RoomOperationCode.Create, null, param, "Room Create Success", (byte)ErrorCode.OK);
                    serverPeer.SendMessage(responseMessage);
                }
            }

            return(true);
        }