예제 #1
0
    public override void Enter(params object[] objs)
    {
        m_mono = App.my.uiRoot.GetComponentInChildren <UISelectHero>();
        if (null == m_mono)
        {
            Object     prefab = Resources.Load("Art/UI/Prefabs/UISelectHero");
            GameObject go     = GameObject.Instantiate(prefab) as GameObject;
            m_mono = go.GetComponent <UISelectHero>();
            m_mono.transform.SetParent(App.my.uiRoot);
            m_mono.transform.localPosition = Vector3.zero;
            m_mono.transform.localScale    = Vector3.one;
        }

        m_mono.gameObject.SetActive(true);
        m_mono.redHeroBtn.onClick.RemoveAllListeners();
        m_mono.redHeroBtn.onClick.AddListener(() => { this.OnClickBtn(true); });
        m_mono.blueHeroBtn.onClick.RemoveAllListeners();
        m_mono.blueHeroBtn.onClick.AddListener(() => { this.OnClickBtn(false); });
        string m_err_msg = string.Empty;

        m_red_hero_id  = 0;
        m_blue_hero_id = 0;
        this.UpdateUI();

        App.my.gameNetwork.Add <RspFreeHero>((int)ProtoId.PidRspFreeHero, this.RspFreeHero);
        App.my.gameNetwork.Add <SelectHeroRsp>((int)ProtoId.PidSelectHeroRsp, this.SelectHeroRsp);
        App.my.gameNetwork.Send((int)ProtoId.PidQueryFreeHero);
    }
예제 #2
0
 public override void Exit(params object[] objs)
 {
     if (null != m_mono)
     {
         GameObject.Destroy(m_mono.gameObject);
     }
     m_mono = null;
     App.my.gameNetwork.Remove((int)ProtoId.PidRspFreeHero);
     App.my.gameNetwork.Remove((int)ProtoId.PidSelectHeroRsp);
 }