Esempio n. 1
0
        /*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~数据库~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
        private void OnDBPageClick(object sender, EventArgs e)
        {
            if (m_tabDB_Start.Text == "停止")
            {
                m_tabDB_Start.Enabled = false;
                ClientNetManager.Instance.CloseAll();
                m_tabDB_Start.Text    = "开始";
                m_tabDB_Start.Enabled = true;
                EnableTabPage(true, m_tabDB);
                EnableDBTabPage(true);

                EventController.TriggerEvent(ClientEventID.SWITCH_PRESSURE, ePressureType.DB, false);
            }
            else
            {
                sPressureDBInfo info = new sPressureDBInfo();
                info.ip            = this.m_tabDB_IP.Text;
                info.port          = ushort.Parse(this.m_tabDB_Port.Text);
                info.client_count  = ushort.Parse(this.m_tabDB_ClientCount.Text);
                info.start_account = int.Parse(this.m_tabDB_StartAccount.Text);
                info.end_account   = long.Parse(this.m_tabDB_EndAccount.Text);
                info.dis_conn_time = float.Parse(this.m_tabDB_DisconTime.Text);
                ServerConfig.net_info.db_server_ip     = info.ip;
                ServerConfig.net_info.db_server_port   = info.port;
                ServerConfig.net_info.db_client_count  = info.client_count;
                ServerConfig.net_info.db_start_account = info.start_account;

                m_tabDB_Start.Enabled = false;
                EnableTabPage(false, m_tabDB);
                EnableDBTabPage(false);
                m_pressure_type    = ePressureType.DB;
                m_tabDB_Start.Text = "停止";

                EventController.TriggerEvent(ClientEventID.SWITCH_PRESSURE, ePressureType.DB, true, info);
                ClientNetManager.Instance.StartConnect(info.ip, info.port, info.client_count, 8);
                m_tabDB_Start.Enabled = true;
            }
        }
Esempio n. 2
0
        /*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~移动~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
        private void OnMovePageClick(object sender, EventArgs e)
        {
            if (m_tabMove_Start.Text == "停止")
            {
                m_tabMove_Start.Enabled = false;
                ClientNetManager.Instance.CloseAll();
                m_tabMove_Start.Text    = "开始";
                m_tabMove_Start.Enabled = true;
                EnableTabPage(true, m_tabMove);
                EnableMoveTabPage(true);

                EventController.TriggerEvent(ClientEventID.SWITCH_PRESSURE, ePressureType.Move, false);
            }
            else
            {
                sPressureMoveInfo info = new sPressureMoveInfo();
                info.ip            = this.m_tabMove_IP.Text;
                info.port          = ushort.Parse(this.m_tabMove_Port.Text);
                info.client_count  = ushort.Parse(this.m_tabMove_ClientCount.Text);
                info.move_time     = float.Parse(this.m_tabMove_MoveTime.Text);
                info.start_account = long.Parse(this.m_tabMove_StartAccount.Text);
                ServerConfig.net_info.move_server_ip     = info.ip;
                ServerConfig.net_info.move_server_port   = info.port;
                ServerConfig.net_info.move_client_count  = info.client_count;
                ServerConfig.net_info.move_start_account = info.start_account;

                m_tabMove_Start.Enabled = false;
                EnableTabPage(false, m_tabMove);
                EnableMoveTabPage(false);
                m_pressure_type      = ePressureType.Move;
                m_tabMove_Start.Text = "停止";

                EventController.TriggerEvent(ClientEventID.SWITCH_PRESSURE, ePressureType.Move, true, info);
                ClientNetManager.Instance.StartConnect(info.ip, info.port, info.client_count, 10);
                m_tabMove_Start.Enabled = true;
            }
        }
        private void CreateOneUser(long account_idx, long char_idx)
        {
            if (!m_active || account_idx > m_pressure_info.end_account)
            {
                return;
            }

            CreateCharacterInfo create_info = new CreateCharacterInfo();

            create_info.spid      = 0;
            create_info.ws_id     = 0;
            create_info.ss_id     = 0;
            create_info.fs_id     = 0;
            create_info.char_idx  = char_idx;
            create_info.char_name = "test" + account_idx;
            create_info.char_type = (byte)(MathUtils.Rand_Sign() == 1 ? eSexType.BOY : eSexType.GIRL);

            SQLCharHandle.CreateCharacter(account_idx, create_info, (res) =>
            {
                if (create_info.char_idx != res)
                {
                    Log.Error("创建角色失败,账号:" + account_idx + ", error:" + res.ToString());
                }
                EventController.TriggerEvent(ClientEventID.CREATE_PROGRESS, (int)(account_idx - m_pressure_info.start_account), (int)(m_pressure_info.end_account - m_pressure_info.start_account));
                if (account_idx + 1 > m_pressure_info.end_account)
                {
                    EventController.TriggerEvent(ClientEventID.CREATE_COMPLETE);
                    this.Stop();
                }
                else
                {
                    this.CreateOneUser(account_idx + 1, char_idx + 1);
                }
            }
                                          );
        }
Esempio n. 4
0
        /*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~网络~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
        /// <summary>
        /// 网络压力
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void OnNetPageClick(object sender, EventArgs e)
        {
            if (m_tabNet_Start.Text == "停止")
            {
                m_tabNet_Start.Enabled = false;
                ClientNetManager.Instance.CloseAll();
                m_tabNet_Start.Text    = "开始";
                m_tabNet_Start.Enabled = true;
                EnableTabPage(true, m_tabNet);
                EnableNetTabPage(true);

                EventController.TriggerEvent(ClientEventID.SWITCH_PRESSURE, ePressureType.Net, false);
            }
            else
            {
                sPressureNetInfo info = new sPressureNetInfo();
                info.ip                                = this.m_tabNet_IP.Text;
                info.port                              = ushort.Parse(this.m_tabNet_Port.Text);
                info.client_count                      = ushort.Parse(this.m_tabNet_ClientCount.Text);
                info.send_count_per_second             = ushort.Parse(this.m_tabNet_SendCountPerSecond.Text);
                info.send_size_per_packet              = ushort.Parse(this.m_tabNet_SendSizePerSecond.Text);
                ServerConfig.net_info.net_server_ip    = info.ip;
                ServerConfig.net_info.net_server_port  = info.port;
                ServerConfig.net_info.net_client_count = info.client_count;

                m_tabNet_Start.Enabled = false;
                EnableTabPage(false, m_tabNet);
                EnableNetTabPage(false);
                m_pressure_type     = ePressureType.Net;
                m_tabNet_Start.Text = "停止";

                EventController.TriggerEvent(ClientEventID.SWITCH_PRESSURE, ePressureType.Net, true, info);
                ClientNetManager.Instance.StartConnect(info.ip, info.port, info.client_count, 5);
                m_tabNet_Start.Enabled = true;
            }
        }
 private void UnRegisterEvent()
 {
     EventController.RemoveEventListener(EventID.PLAYER_ENTER_GAME, OnGameEvent);
     EventController.RemoveEventListener(EventID.PLAYER_LEAVE_GAME, OnGameEvent);
 }
Esempio n. 6
0
 private void UnRegisterEvent()
 {
     EventController.RemoveEventListener(EventID.PLAYER_ENTER_GAME, OnGameEvent);
     EventController.RemoveEventListener(EventID.PLAYER_LEAVE_GAME, OnGameEvent);
     EventController.RemoveEventListener(EventID.NET_DISCONNECT_FIGHT_SRV, OnGameEvent);
 }
Esempio n. 7
0
 private void UnRegisterEvent()
 {
     EventController.RemoveEventListener(ClientEventID.NET_CONNECTED_OPEN, OnGameEvent);
     EventController.RemoveEventListener(ClientEventID.NET_CONNECTED_CLOSE, OnGameEvent);
 }
 private void OnMessageReveived(long conn_idx, ushort header, ByteArray data)
 {
     m_recv_msg_count++;
     m_recv_msg_size += data.Available + NetID.PacketHeadSize + 2;
     EventController.TriggerEvent(ClientEventID.RECV_DATA, conn_idx, header, data);
 }
 private void UnRegisterEvent()
 {
     EventController.RemoveEventListener(EventID.NET_CONNECTED_WORLD_SRV, OnGameEvent);
     EventController.RemoveEventListener(EventID.NET_DISCONNECT_WORLD_SRV, OnGameEvent);
 }
Esempio n. 10
0
 private void UnRegisterEvent()
 {
     EventController.RemoveEventListener(ClientEventID.CREATE_COMPLETE, OnGameEvent);
     EventController.RemoveEventListener(ClientEventID.CREATE_PROGRESS, OnGameEvent);
 }
Esempio n. 11
0
 private void RegisterEvent()
 {
     EventController.AddEventListener(EventID.DB_NEW_EVENT, OnGameEvent);
     EventController.AddEventListener(EventID.PLAYER_ENTER_GAME, OnGameEvent);
     EventController.AddEventListener(EventID.PLAYER_LEAVE_GAME, OnGameEvent);
 }
Esempio n. 12
0
 protected override void OnClosed(EventArgs e)
 {
     EventController.RemoveEventListener(ClientEventID.SERVER_PING, OnRecvPing);
     PingDataManager.Instance.Stop();
     base.OnClosed(e);
 }
Esempio n. 13
0
 private void Init()
 {
     EventController.AddEventListener(ClientEventID.SERVER_PING, OnRecvPing);
 }
Esempio n. 14
0
        public override void OnEnter()
        {
            base.OnEnter();

            EventController.TriggerEvent(EventID.PLAYER_ENTER_GAME, m_obj_idx);
        }
 private void UnRegisterEvent()
 {
     EventController.RemoveEventListener(ClientEventID.SWITCH_PRESSURE, OnGameEvent);
 }
Esempio n. 16
0
 /// <summary>
 /// 下线
 /// </summary>
 public void OnLeave()
 {
     EventController.TriggerEvent(EventID.PLAYER_LEAVE_GAME, m_char_idx);
 }
Esempio n. 17
0
 private void OnConnectClose(long conn_idx)
 {
     m_sockets.Remove(conn_idx);
     EventController.TriggerEvent(ClientEventID.NET_CONNECTED_CLOSE, conn_idx);
 }
Esempio n. 18
0
 /*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~事件~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
 private void RegisterEvent()
 {
     EventController.AddEventListener(ClientEventID.NET_CONNECTED_OPEN, OnGameEvent);
     EventController.AddEventListener(ClientEventID.NET_CONNECTED_CLOSE, OnGameEvent);
     EventController.AddEventListener(ClientEventID.SWITCH_PRESSURE, OnGameEvent);
 }
Esempio n. 19
0
 /// <summary>
 /// 上线
 /// </summary>
 public void OnEnter()
 {
     m_last_active_time     = Time.timeSinceStartup;
     m_is_send_check_online = false;
     EventController.TriggerEvent(EventID.PLAYER_ENTER_GAME, m_char_idx);
 }