Exemple #1
0
    public bool Logined(Protomsg.MsgBase d1)
    {
        Google.Protobuf.IMessage IMperson = new Protomsg.SC_Logined();
        Protomsg.SC_Logined      p1       = (Protomsg.SC_Logined)IMperson.Descriptor.Parser.ParseFrom(d1.Datas);
        UID = p1.Uid;
        if (p1.Code != 1)
        {
            Debug.Log("login fail");
        }
        else
        {
            Protomsg.CS_SelectCharacter msg1 = new Protomsg.CS_SelectCharacter();
            msg1.SelectCharacter = new Protomsg.CharacterBaseDatas();
            Debug.Log("Logined:" + p1.Characters);
            initOpenHeros(p1.Characters);
            showSelectHero();
        }

        return(false); //中断解析数据
    }
Exemple #2
0
    //显示选择英雄界面
    public void showSelectHero()
    {
        SelectLayer = UIPackage.CreateObject("Package1", "SelectHero").asCom;
        GRoot.inst.AddChildAt(SelectLayer, 0);
        Vector2 screenPos      = new Vector2(Screen.width / 2, Screen.height / 2);
        Vector2 logicScreenPos = GRoot.inst.GlobalToLocal(screenPos);

        SelectLayer.xy = logicScreenPos;

        //---设置默认选择英雄
        if (SaveDataManager.sData.SelectHeroTypeID <= 0)
        {
            SaveDataManager.sData.SelectHeroTypeID = openherotypeids1[0];
        }

        freshSelectHero();

        SelectLayer.GetChild("startbtn").asButton.onClick.Add(() => {
            if (SelectHeroMsg.Name.Length <= 0)
            {
                //输入名字
                var inputnamecom = UIPackage.CreateObject("Package1", "InputName").asCom;
                GRoot.inst.AddChild(inputnamecom);
                inputnamecom.xy = logicScreenPos;

                inputnamecom.GetChild("ok").asButton.onClick.Add(() =>
                {
                    var txt = inputnamecom.GetChild("input").asTextInput.text;
                    if (txt.Length <= 0)
                    {
                        Tool.NoticeWords("请输入名字!", null);
                        return;
                    }
                    if (Tool.IsChineseOrNumberOrWord(txt) == false)
                    {
                        Tool.NoticeWords("名字不含有中文,字母,数字以外的其他字符!", null);
                        return;
                    }
                    SelectHeroMsg.Name = txt;
                    Debug.Log("name:" + txt);


                    Protomsg.CS_SelectCharacter msg1 = new Protomsg.CS_SelectCharacter();
                    msg1.SelectCharacter             = SelectHeroMsg;
                    MyKcp.Instance.SendMsg("Login", "CS_SelectCharacter", msg1);

                    SelectHeroMsg.Name = "";    //清空名字
                    inputnamecom.Dispose();
                });

                inputnamecom.GetChild("input").asTextInput.onKeyDown.Add((EventContext context) =>
                {
                    if (context.inputEvent.keyCode == KeyCode.Return)
                    {
                        inputnamecom.GetChild("ok").asButton.onClick.Call();
                    }
                });
            }
            else
            {
                Protomsg.CS_SelectCharacter msg1 = new Protomsg.CS_SelectCharacter();
                msg1.SelectCharacter             = SelectHeroMsg;
                MyKcp.Instance.SendMsg("Login", "CS_SelectCharacter", msg1);
            }
        });
    }