public override void ProcessMessage(ReturnSys sys, string data)
 {
     DisposeDataSyncMove(sys, () =>
     {
         if (MainGameSys.instance.isCity)
         {
             string[] strArry  = data.Split('*');
             int id            = int.Parse(strArry[0]);
             float positionX   = float.Parse(strArry[1]);
             float positionY   = float.Parse(strArry[2]);
             float positionZ   = float.Parse(strArry[3]);
             float RotationX   = float.Parse(strArry[4]);
             float RotationY   = float.Parse(strArry[5]);
             float RotationZ   = float.Parse(strArry[6]);
             GameObject player = MainGameSys.instance.GetPlayerGameObject(id);
             if (player == null)
             {
                 return;
             }
             player.GetComponent <CharacterController>().enabled = true;
             player.transform.position = new Vector3(positionX, positionY, positionZ);
             player.GetComponent <PlayerController>().SetBlend(1);
             player.transform.eulerAngles = new Vector3(RotationX, RotationY, RotationZ);
         }
     });
 }
Пример #2
0
 public override void ProcessMessage(ReturnSys sys, string data)
 {
     DisposeData(sys, () =>
     {
         string[] strArry = data.Split('-');
         int lv           = int.Parse(strArry[0]);
         int exp          = int.Parse(strArry[1]);
         int currentExp   = int.Parse(strArry[2]);
         int guideID      = int.Parse(strArry[3]);
         int coin         = int.Parse(strArry[4]);
         int crytal       = int.Parse(strArry[5]);
         GameRoot.ShowHint("<color=#14FF00>" + "经验值 + " + (currentExp - MainGameSys.instance.mCurrentRole.currentExp).ToString() + "</color>");
         GameRoot.ShowHint("<color=#FBEE48>" + "金币 + " + (coin - MainGameSys.instance.mCurrentRole.coin).ToString() + "</color>");
         MainGameSys.instance.mCurrentRole.lv         = lv;
         MainGameSys.instance.mCurrentRole.exp        = exp;
         MainGameSys.instance.mCurrentRole.currentExp = currentExp;
         MainGameSys.instance.mCurrentRole.guideID    = guideID;
         MainGameSys.instance.mCurrentRole.coin       = coin;
         MainGameSys.instance.mCurrentRole.crystal    = crytal;
         if (MainGameSys.instance.isCity)
         {
             MainGameSys.instance.UpdateMainCatyInfo();
         }
         else if (CombatSys.instance.isCombat)
         {
             MainGameSys.instance.UpdateCombatInfo();
         }
     });
 }
 public override void ProcessMessage(ReturnSys sys, string data)
 {
     DisposeData(sys, () =>
     {
         GameRoot.ShowHint("用户名密码不正确");
     });
 }
Пример #4
0
 public override void ProcessMessage(ReturnSys sys, string data)
 {
     DisposeData(sys, () =>
     {
         Debug.Log(data);
         string[] strArray   = data.Split('-');
         int strength        = int.Parse(strArray[0]);
         int intelligence    = int.Parse(strArray[1]);
         int physicalPower   = int.Parse(strArray[2]);
         int agility         = int.Parse(strArray[3]);
         int attackNum       = int.Parse(strArray[4]);
         int coin            = int.Parse(strArray[5]);
         int cryal           = int.Parse(strArray[6]);
         string[] equipLvStr = strArray[7].Split('#');
         int hp        = int.Parse(strArray[8]);
         int[] equipLv = new int[6];
         for (int i = 0; i < 6; i++)
         {
             equipLv[i] = int.Parse(equipLvStr[i]);
         }
         GameRoot.ShowHint("升级成功");
         MainGameSys.instance.SetIntensifyTask(true);
         MainGameSys.instance.UpdateIntensify(strength, intelligence, physicalPower, agility, attackNum, coin, cryal, equipLv, hp);
         if (MainGameSys.instance.mCurrentRole.intensifyNum < 5)
         {
             MainGameSys.instance.mCurrentRole.intensifyNum++;
             string Senddata = string.Format("{0}-{1}-{2}-{3}-{4}", MainGameSys.instance.mCurrentRole.combartNum.ToString()
                                             , MainGameSys.instance.mCurrentRole.intensifyNum.ToString()
                                             , MainGameSys.instance.mCurrentRole.killMOBSNum.ToString()
                                             , MainGameSys.instance.mCurrentRole.worldTalkNum.ToString()
                                             , MainGameSys.instance.mCurrentRole.killBossNum.ToString());
             NetSvc.instance.SendSys(GameSys.任务, MethodController.DailyTask, Senddata);
         }
     });
 }
Пример #5
0
 public override void ProcessMessage(ReturnSys sys, string data)
 {
     DisposeData(sys, () =>
     {
         string[] talk = data.Split('*');
         MainGameSys.instance.UpdateWorldTalk(talk[0]);
     });
 }
Пример #6
0
        public void Register(Client client, string data)
        {
            string[] userData = data.Split(',');
            Console.WriteLine("新注册用户");
            Console.WriteLine("用户:" + userData[0] + "||" + "密码:" + userData[1]);
            ReturnSys sys = MySqlTool.instance.AddUser(userData[0], userData[1]);

            client.SendMassageSys(sys, "");
        }
Пример #7
0
 public void DisposeDataSyncMove(ReturnSys sys, Action action)
 {
     if (mCurrentReturnSys == sys)
     {
         GameRoot.instance.mSyncMoveAction = action;
     }
     else
     {
         Debug.LogError("返回类型不匹配!当前控制器:" + mCurrentReturnSys + "传递控制器:" + sys);
     }
 }
Пример #8
0
 /// <summary>
 /// 执行事件
 /// </summary>
 /// <param name="sys"></param>
 /// <param name="action"></param>
 public void DisposeData(ReturnSys sys, Action action)
 {
     if (mCurrentReturnSys == sys)
     {
         Debug.Log(sys.ToString());
         GameRoot.instance.mRetrueAction = action;
     }
     else
     {
         Debug.LogError("返回类型不匹配!当前控制器:" + mCurrentReturnSys + "传递控制器:" + sys);
     }
 }
Пример #9
0
 public override void ProcessMessage(ReturnSys sys, string data)
 {
     DisposeData(sys, () =>
     {
         string[] strArry  = data.Split('-');
         int lv            = int.Parse(strArry[0]);
         int exp           = int.Parse(strArry[1]);
         int currentExp    = int.Parse(strArry[2]);
         int guideID       = int.Parse(strArry[3]);
         int strength      = int.Parse(strArry[4]);
         int intelligence  = int.Parse(strArry[5]);
         int physicalPower = int.Parse(strArry[6]);
         int agility       = int.Parse(strArry[7]);
         int attackNum     = int.Parse(strArry[8]);
         int coin          = int.Parse(strArry[9]);
         int crytal        = int.Parse(strArry[10]);
         int hp            = int.Parse(strArry[11]);
         Debug.Log(hp);
         Debug.Log(physicalPower);
         if (coin != MainGameSys.instance.mCurrentRole.coin)
         {
             GameRoot.ShowHint("<color=#14FF00>" + "经验值 + " + (currentExp + MainGameSys.instance.mCurrentRole.exp - MainGameSys.instance.mCurrentRole.currentExp).ToString() + "</color>");
             GameRoot.ShowHint("<color=#FBEE48>" + "金币 + " + (coin - MainGameSys.instance.mCurrentRole.coin).ToString() + "</color>");
         }
         else
         {
             GameRoot.ShowHint("<color=#FFFF00>" + "经验值 + " + (currentExp - MainGameSys.instance.mCurrentRole.currentExp).ToString() + "</color>");
         }
         GameRoot.ShowHint("<color=#14FF00>等级提升</color>");
         AudioSvc.instance.PlayButClip(GameConstant.RoleUp);
         MainGameSys.instance.mCurrentRole.lv            = lv;
         MainGameSys.instance.mCurrentRole.exp           = exp;
         MainGameSys.instance.mCurrentRole.currentExp    = currentExp;
         MainGameSys.instance.mCurrentRole.guideID       = guideID;
         MainGameSys.instance.mCurrentRole.strength      = strength;
         MainGameSys.instance.mCurrentRole.intelligence  = intelligence;
         MainGameSys.instance.mCurrentRole.physicalPower = physicalPower;
         MainGameSys.instance.mCurrentRole.agility       = agility;
         MainGameSys.instance.mCurrentRole.attackNum     = attackNum;
         MainGameSys.instance.mCurrentRole.coin          = coin;
         MainGameSys.instance.mCurrentRole.crystal       = crytal;
         MainGameSys.instance.mCurrentRole.hp            = hp;
         if (MainGameSys.instance.isCity)
         {
             MainGameSys.instance.UpdateMainCatyInfo();
         }
         else if (CombatSys.instance.isCombat)
         {
             MainGameSys.instance.UpdateCombatInfo();
             MainGameSys.instance.TheCombatUpLvevel();
         }
     });
 }
Пример #10
0
 public override void ProcessMessage(ReturnSys sys, string data)
 {
     Debug.Log("执行这里了吗???");
     DisposeData(sys, () =>
     {
         Debug.Log("到这里了");
         string[] strArry      = data.Split(',');
         int id                = int.Parse(strArry[0]);
         Profession profession = (Profession)(int.Parse(strArry[1]));
         MainGameSys.instance.GamersDic[id].gameObject.SetActive(false);
         MainGameSys.instance.GamersDic.Remove(id);
     });
 }
Пример #11
0
 public override void ProcessMessage(ReturnSys sys, string data)
 {
     DisposeDataSyncMove(sys, () =>
     {
         string[] strArry  = data.Split(',');
         int id            = int.Parse(strArry[0]);
         GameObject player = MainGameSys.instance.GetPlayerGameObject(id);
         if (player == null)
         {
             return;
         }
         player.GetComponent <PlayerController>().SetBlend(0);
     });
 }
Пример #12
0
    /// <summary>
    /// 选择控制器
    /// </summary>
    /// <param name="sys"></param>
    /// <param name="data"></param>
    public void SelectController(ReturnSys sys, string data)
    {
        BaseController currentController = null;

        if (ServerMassageController.ContainsKey(sys))
        {
            currentController = ServerMassageController[sys];
            currentController.ProcessMessage(sys, data);
        }
        else
        {
            Debug.Log("选择的控制器不存在" + currentController);
        }
    }
Пример #13
0
 public override void ProcessMessage(ReturnSys sys, string data)
 {
     DisposeData(sys, () =>
     {
         Debug.Log(data);
         string[] strArry = data.Split('-');
         MainGameSys.instance.mCurrentRole.combartNum   = int.Parse(strArry[0]);
         MainGameSys.instance.mCurrentRole.intensifyNum = int.Parse(strArry[1]);
         MainGameSys.instance.mCurrentRole.killMOBSNum  = int.Parse(strArry[2]);
         MainGameSys.instance.mCurrentRole.worldTalkNum = int.Parse(strArry[3]);
         MainGameSys.instance.mCurrentRole.killBossNum  = int.Parse(strArry[4]);
         MainGameSys.instance.UpdateTaskWin();
     });
 }
Пример #14
0
 public void SendAllClient(Client client, string data, ReturnSys sys)
 {
     foreach (var Client in ClientList)
     {
         if (Client == client)
         {
             Console.WriteLine("自己客户端不发送消息");
         }
         else
         {
             Console.WriteLine("发送给所有客户端命令" + sys.ToString());
             Client.SendMassageSys(sys, data);
         }
     }
 }
Пример #15
0
    public override void ProcessMessage(ReturnSys sys, string data)
    {
        Debug.Log(data.Length);
        DisposeData(sys, () =>
        {
            //设置用户id
            Console.WriteLine(data, "1");
            string[] strArry = data.Split(',');
            int id           = int.Parse(strArry[0]);
            string userid    = strArry[1];
            Console.WriteLine(id + "--" + userid);
            GameRoot.instance.mUser = new UserDAO(id, userid);

            LogonSys.instance.SelectRole();
        });
    }
Пример #16
0
        public void LogonGame(Client client, string data)
        {
            string[] userData = data.Split(',');
            Console.WriteLine("用户:" + userData[0] + "登录游戏");
            ReturnSys sys = MySqlTool.instance.FindUser(client.Server, client, userData[0], userData[1]);

            if (client.User == null)
            {
                client.SendMassageSys(sys, "");
            }
            else
            {
                string Retrundata = string.Format("{0},{1}", client.User.id.ToString(), client.User.userid);
                client.SendMassageSys(sys, Retrundata);
            }
        }
Пример #17
0
    /// <summary>
    /// 异步接受消息
    /// </summary>
    /// <param name="ar"></param>
    private void AsyncReceive(IAsyncResult ar)
    {
        Socket clinet    = ar.AsyncState as Socket;
        int    DataCount = clinet.EndReceive(ar);

        Debug.Log(DataCount);
        if (DataCount > 0)
        {
            string str = Encoding.UTF8.GetString(data, 6, DataCount);
            Debug.Log(str);
            string[]  strArry  = str.Split('|');
            ReturnSys LogonSys = (ReturnSys)(int.Parse(strArry[0]));
            ControllerManage.instance.SelectController(LogonSys, strArry[1]);
        }
        clinet.BeginReceive(data, 0, data.Length, SocketFlags.None, AsyncReceive, clinet);
    }
Пример #18
0
 public override void ProcessMessage(ReturnSys sys, string data)
 {
     DisposeData(sys, () =>
     {
         try
         {
             Debug.Log(data);
             string[] strArry  = data.Split('-');
             int roleid        = int.Parse(strArry[0]);
             int lv            = int.Parse(strArry[3]);
             string playerName = strArry[1];
             int exp           = int.Parse(strArry[4]);
             int strength      = int.Parse(strArry[5]);
             int intelligence  = int.Parse(strArry[6]);
             int physicalPower = int.Parse(strArry[7]);
             int agility       = int.Parse(strArry[8]);
             int tired         = int.Parse(strArry[9]);
             int currentExp    = int.Parse(strArry[10]);
             int currentTired  = int.Parse(strArry[11]);
             int attackNum     = int.Parse(strArry[12]);
             int guideID       = int.Parse(strArry[13]);
             int coin          = int.Parse(strArry[14]);
             int hp            = int.Parse(strArry[15]);
             Debug.Log(hp);
             int crystal         = int.Parse(strArry[16]);
             string[] equipLvStr = strArry[17].Split('#');
             int[] equipLv       = new int[6];
             for (int i = 0; i < 6; i++)
             {
                 equipLv[i] = int.Parse(equipLvStr[i]);
             }
             Profession profession = (Profession)int.Parse(strArry[2]);
             RoleDAO role          = new RoleDAO(GameRoot.instance.mUser.name, roleid, profession, lv, playerName, exp, strength, intelligence, physicalPower, agility, tired, currentExp, currentTired, attackNum, guideID, coin, hp, crystal, equipLv);
             GameRoot.instance.mRoleList.Add(role);
             GameRoot.ShowHint("创建成功");
             LogonSys.instance.mFoundWin.isShow(false);
             LogonSys.instance.mSelectRoleWin.isShow();
         }
         catch (Exception e)
         {
             Debug.Log(e);
         }
     });
 }
Пример #19
0
 public override void ProcessMessage(ReturnSys sys, string data)
 {
     Debug.Log("执行这里了吗???");
     DisposeData(sys, () =>
     {
         Debug.Log("到这里了");
         string[] strArry            = data.Split(',');
         int id                      = int.Parse(strArry[0]);
         Profession profession       = (Profession)(int.Parse(strArry[1]));
         string[] strVector3         = strArry[2].Split('*');
         float x                     = float.Parse(strVector3[0]);
         float y                     = float.Parse(strVector3[1]);
         float z                     = float.Parse(strVector3[2]);
         GameObject player           = ResSvc.intance.LoadGameObjcet(profession, false);
         player.transform.position   = new Vector3(x, y, z);
         player.transform.localScale = new Vector3(1.5f, 1.5f, 1.5f);
         MainGameSys.instance.GamersDic.Add(id, player);
     });
 }
Пример #20
0
 public override void ProcessMessage(ReturnSys sys, string data)
 {
     DisposeData(sys, () =>
     {
         Debug.Log(data);
         string[] strArry = data.Split(',');
         int count        = int.Parse(strArry[0]);
         for (int i = 1; i <= count; i++)
         {
             string[] playerPos          = strArry[i].Split('*');
             int id                      = int.Parse(playerPos[0]);
             float x                     = float.Parse(playerPos[1]);
             float y                     = float.Parse(playerPos[2]);
             float z                     = float.Parse(playerPos[3]);
             Profession profession       = (Profession)(int.Parse(playerPos[4]));
             GameObject player           = ResSvc.intance.LoadGameObjcet(profession, false);
             player.transform.position   = new Vector3(x, y, z);
             player.transform.localScale = new Vector3(1.5f, 1.5f, 1.5f);
             Debug.Log("添加id了++++++++++++++++++++++++++++++++++++++++++");
             MainGameSys.instance.GamersDic.Add(id, player);
         }
     });
 }
Пример #21
0
 /// <summary>
 /// 返回登录命令
 /// </summary>
 /// <param name="RetSys"></param>
 /// <param name="str"></param>
 public void SendMassageSys(ReturnSys RetSys, string str)
 {
     //string Returndata = string.Format("{0}|{1}", ((int)RetSys).ToString(), str);
     byte[] data = Message.PackData(RetSys, str);
     MainClient.BeginSend(data, 0, data.Length, SocketFlags.None, ClientAsyncSend, MainClient);
 }
Пример #22
0
 /// <summary>
 /// 处理服务器的消息
 /// </summary>
 public virtual void ProcessMessage(ReturnSys sys, string data)
 {
 }
Пример #23
0
 public override void ProcessMessage(ReturnSys sys, string data)
 {
     DisposeData(sys, () =>
     {
         try
         {
             if (data == "没有角色")
             {
                 //进入选择角色面板
                 Debug.Log("这里执行了吗");
                 LogonSys.instance.mSelectRoleWin.isShow();
             }
             else
             {
                 Debug.Log("这里也执行了");
                 string[] strArry = data.Split('/');
                 int roleCount    = int.Parse(strArry[0]);
                 Debug.Log(roleCount);
                 for (int i = 1; i <= roleCount; i++)
                 {
                     string[] roleStr = strArry[i].Split('-');
                     Debug.Log(roleStr.Length);
                     int roleid            = int.Parse(roleStr[0]);
                     int lv                = int.Parse(roleStr[3]);
                     string playerName     = roleStr[1];
                     int exp               = int.Parse(roleStr[4]);
                     int strength          = int.Parse(roleStr[5]);
                     int intelligence      = int.Parse(roleStr[6]);
                     int physicalPower     = int.Parse(roleStr[7]);
                     int agility           = int.Parse(roleStr[8]);
                     int tired             = int.Parse(roleStr[9]);
                     int currentExp        = int.Parse(roleStr[10]);
                     int currentTired      = int.Parse(roleStr[11]);
                     int attackNum         = int.Parse(roleStr[12]);
                     int guideID           = int.Parse(roleStr[13]);
                     int coin              = int.Parse(roleStr[14]);
                     Profession profession = (Profession)int.Parse(roleStr[2]);
                     int hp                = int.Parse(roleStr[15]);
                     int crystal           = int.Parse(roleStr[16]);
                     string[] equipLvStr   = roleStr[17].Split('#');
                     int[] equipLv         = new int[6];
                     for (int j = 0; j < 6; j++)
                     {
                         equipLv[j] = int.Parse(equipLvStr[j]);
                         Debug.Log("元素" + equipLv[j]);
                     }
                     int combartNum   = int.Parse(roleStr[18]);
                     int intensifyNum = int.Parse(roleStr[19]);
                     int killMOBSNum  = int.Parse(roleStr[20]);
                     int worldTalkNum = int.Parse(roleStr[21]);
                     int killBossNum  = int.Parse(roleStr[22]);
                     RoleDAO role     = new RoleDAO(GameRoot.instance.mUser.name, roleid, profession, lv, playerName, exp, strength, intelligence, physicalPower, agility, tired, currentExp, currentTired, attackNum, guideID, coin, hp, crystal, equipLv
                                                    , combartNum, intensifyNum, killMOBSNum, worldTalkNum, killBossNum);
                     GameRoot.instance.mRoleList.Add(role);
                 }
                 //进入选择角色面板
                 LogonSys.instance.mSelectRoleWin.isShow();
             }
         }catch (Exception e)
         {
             Debug.Log(e);
             LogonSys.instance.mSelectRoleWin.isShow();
         }
     });
 }