예제 #1
0
    public void Init()
    {
        instance = this;

        //

        enterGame = Log;

        goPlay += GameManager.instance.charManager.move.Check;
        goPlay += delegate { GameManager.instance.itemManager.isPlaying = true; };
        goPlay += delegate { AudioManager.Instance.PlaySound(AudioManager.AudioName.StartGame, 0.9F); };

        restart += GameManager.instance.Reload;

        moveView += GameManager.instance.charManager.View;

        buyItem += GameManager.instance.itemManager.buyItem;

        setItemInCell += GameManager.instance.itemManager.setItemInCell_World;
        setItemInCell += delegate { AudioManager.Instance.PlaySound(AudioManager.AudioName.ItemDrop, 0.8F); };
        //setItemInCell += LogCellPos;

        lose += delegate { AudioManager.Instance.PlaySound(AudioManager.AudioName.GameOver, 0.8F); };

        win += delegate { AudioManager.Instance.PlaySound(AudioManager.AudioName.LevelClear1, 0.8F); };
        win += delegate { AudioManager.Instance.PlaySound(AudioManager.AudioName.LevelClear2, 0.8F); };
    }
예제 #2
0
    public override bool HandleMessage()
    {
        EnterGame msg = GetParam <EnterGame>(0);

        Program.EnterGame(msg);
        return(true);
    }
예제 #3
0
    public static PacketDistributed CreatePacket(MessageID packetID)
    {
        PacketDistributed packet = null;

        switch (packetID)
        {
        case MessageID.GCErrorBack: { packet = new GCErrorBack(); } break;

        case MessageID.CGheartbeatClientSend: { packet = new CGheartbeatClientSend(); } break;

        case MessageID.GCheartbeatServerBack: { packet = new GCheartbeatServerBack(); } break;

        case MessageID.GCServerMsg: { packet = new GCServerMsg(); } break;

        case MessageID.OptionEvent: { packet = new OptionEvent(); } break;

        case MessageID.FrameOpts: { packet = new FrameOpts(); } break;

        case MessageID.LogicFrame: { packet = new LogicFrame(); } break;

        case MessageID.NextFrameOpts: { packet = new NextFrameOpts(); } break;

        case MessageID.GamePlayerInfo: { packet = new GamePlayerInfo(); } break;

        case MessageID.EnterGame: { packet = new EnterGame(); } break;
        }
        if (null != packet)
        {
            packet.packetID = packetID;
        }
        //netActionTime = DateTime.Now.ToFileTimeUtc();
        return(packet);
    }
예제 #4
0
        protected virtual void GameSocket_OnGameLogonSuccess(GameLogonSuccess Packet)
        {
            this.Game.WriteToLog("Entered Game", Color.Green);
            EnterGame packet = new EnterGame();

            this.Game.SendPacket(packet);
        }
예제 #5
0
 private async void OnEnterGameButtonClick(object sender, EventArgs e)
 {
     await Task.Run(() =>
     {
         if (EnterGame != null)
         {
             EnterGame.Invoke(this, EventArgs.Empty);
         }
     });
 }
예제 #6
0
파일: EntryUI.cs 프로젝트: Tavrox/Lavapools
    //    private GameObject _Objective;
    // Use this for initialization
    public void Setup()
    {
        _EnterUI = FETool.findWithinChildren(this.gameObject, "EnterGame").GetComponent<EnterGame>();
        _EnterUI.Setup(LevelManager.CurrentLevelInfo);

        GameEventManager.GameStart += GameStart;
        GameEventManager.GameOver += GameOver;
        GameEventManager.Respawn += Respawn;

        //		_Objective = FETool.findWithinChildren(this.gameObject, "Objective");
    }
예제 #7
0
 public void StartGame(EnterGame msg)
 {
     if (msg.IsStartGame > 0)
     {
         Console.WriteLine("StartGame");
         //开启逻辑帧事件
         timer          = new Timer();
         timer.Elapsed += new ElapsedEventHandler(OnLogicFrame);
         timer.Interval = m_fFrameLen * 1000;
         //执行一次 false,一直执行true
         timer.AutoReset = true;
         timer.Enabled   = true;
     }
 }
예제 #8
0
    public void Handle(int cmd, byte[] data)
    {
        switch (cmd)
        {
        case MessageConst.Login.RESP_CREATE_ROLE:
            //CreateRole createRole = ProtobufTool.DeSerialize<CreateRole>(data);
            actions.Enqueue(CreateRole);
            break;

        case MessageConst.Login.RESP_ENTER_GAME:
            EnterGame enterGame = ProtobufTool.DeSerialize <EnterGame>(data);
            PlayerManager.self.player        = enterGame.player;
            PlayerManager.self.statusManager = new PlayerStatusManager();
            actions.Enqueue(LoginSuccess);
            break;

        default:
            break;
        }
    }
예제 #9
0
        public dynamic Index([FromBody] EnterGame model)
        {
            Player player = new Player();

            player.Name = model.Name;
            Console.WriteLine(model.Code);

            Game game = this._context.Games.FirstOrDefault(g => g.Code == model.Code);

            if (game == null)
            {
                return(Ok("Game not found"));
            }

            player.Game = game;

            this._context.Add(player);
            this._context.SaveChanges();

            return(Ok("Player added"));
        }
예제 #10
0
        public static ClientBasePacket HandlePacket(byte[] data, int offset, GameSession client)
        {
            // Calculate message size
            var size = (short)((data[offset + 1] << 8) + data[offset]);

            // Copy the packet to a new byte array
            // Skipping the header
            var packet = new byte[size];

            Array.Copy(data, offset, packet, 0, size);

            ClientBasePacket msg;

            // Get the id
            var id = packet[2];

            // Handle the packet
            // TODO: Can we group these into login / game / etc?
            switch (id)
            {
            case 0x00:
                msg = new ProtocolVersion(packet, client);
                break;

            case 0x01:
                msg = new ValidateClient(packet, client);
                break;

            case 0x03:
                msg = new ConnectClient(packet, client);
                break;

            case 0x04:
                msg = new ConnectSwitch(packet, client);
                break;

            case 0x05:
                msg = new SwitchServer(packet, client);
                break;

            case 0x06:
                msg = new ServerTime(packet, client);
                break;

            case 0x07:
                msg = new Message(packet, client);
                break;

            case 0x0d:
                msg = new Log(packet, client);
                break;

            case 0x0c:
                msg = new SyncMoney(packet, client);
                break;

            case 0x11:
                msg = new FactoryModifyUnit(packet, client);
                break;

            case 0x12:
                msg = new FactoryModifyEnd(packet, client);
                break;

            case 0x16:
                msg = new IsValidName(packet, client);
                break;

            case 0x17:
                msg = new FactoryChangeUnitName(packet, client);
                break;

            case 0x18:
                msg = new RequestInventory(packet, client);
                break;

            case 0x19:
                msg = new RequestSearchGame(packet, client);
                break;

            case 0x1b:
                msg = new CreateGame(packet, client);
                break;

            case 0x1c:
                msg = new EnterGame(packet, client);
                break;

            case 0x1f:
                msg = new ListUser(packet, client);
                break;

            case 0x20:
                msg = new Ready(packet, client);
                break;

            case 0x21:
                msg = new Exit(packet, client);
                break;

            case 0x22:
                msg = new StartGame(packet, client);
                break;

            case 0x2b:
                msg = new SelectBase(packet, client);
                break;

            case 0x2c:
                msg = new ReadyGame(packet, client);
                break;

            case 0x2e:
                msg = new RequestPalette(packet, client);
                break;

            case 0x2f:
                msg = new MoveUnit(packet, client);
                break;

            case 0x30:
                msg = new AimUnit(packet, client);
                break;

            case 0x31:
                msg = new StartAttack(packet, client);
                break;

            case 0x32:
                msg = new StopAttack(packet, client);
                break;

            case 0x35:
                msg = new RequestRegain(packet, client);
                break;

            case 0x38:
                msg = new ModeSniper(packet, client);
                break;

            case 0x3a:
                msg = new RequestChangeWeaponset(packet, client);
                break;

            case 0x3b:
                msg = new RequestQuitBattle(packet, client);
                break;

            case 0x3f:
                msg = new BuyList(packet, client);
                break;

            case 0x40:
                msg = new RequestGoodsData(packet, client);
                break;

            case 0x46:
                msg = new RequestAvatarInfo(packet, client);
                break;

            case 0x47:
            case 0x48:
            case 0x49:
            case 0x4a:
            case 0x4b:
            case 0x4c:
            case 0x4d:
                msg = new RequestStatsInfo(packet, client);
                break;

            case 0x4e:
                msg = new RequestBestInfo(packet, client);
                break;

            case 0x57:
                msg = new TutorialSelect(packet, client);
                break;

            case 0x5a:
                msg = new UnAimUnit(packet, client);
                break;

            case 0x63:
                msg = new MsgConnect(packet, client);
                break;

            case 0x64:
                msg = new MsgUserStateInfo(packet, client);
                break;

            case 0x66:
                msg = new MsgUserClanInfo(packet, client);
                break;

            case 0x67:
                msg = new MsgGetBuddyList(packet, client);
                break;

            case 0x69:
                msg = new MsgGetChannelList(packet, client);
                break;

            case 0x6a:
                msg = new MsgJoinChannel(packet, client);
                break;

            case 0x6b:
                msg = new MsgLeaveChannel(packet, client);
                break;

            case 0x6c:
                msg = new MsgChannelChatting(packet, client);
                break;

            case 0x71:
                msg = new RequestOperator(packet, client);
                break;

            case 0x72:
                msg = new SelectOperator(packet, client);
                break;

            default:
                msg = new UnknownPacket(packet, client);
                //Console.WriteLine("Unknown packet id [{0}] from user {1}", id, client.GetUserName());
                break;
            }

            return(msg);
        }
예제 #11
0
    public static void Execute(object p)
    {
        EnterGame msg = p as EnterGame;

        NetMsgManager.Instance.HandleMessage(MessageID.EnterGame, msg);
    }
예제 #12
0
 //进入游戏
 public static void EnterGame(EnterGame msg)
 {
     battleMgr.StartGame(msg);
 }
예제 #13
0
    public static string C2SEnterGame(string userId, int roleId)
    {
        EnterGame data = new EnterGame(userId, roleId);

        return(JsonMapper.ToJson(data));
    }