public override void init()
        {
            alain();
            inText();
            this.transform.SetAsFirstSibling();

            goMapcon = getGameObjectByPath("panel_map");
            goP      = getGameObjectByPath("panel_map/p");


            TeammateCon = this.transform.FindChild("panel_map/icon_Teammate");
            enemyCon    = this.transform.FindChild("panel_map/icon_enemy");
            TeamObj     = this.transform.FindChild("panel_map/signal1").gameObject;
            EnemyObj    = this.transform.FindChild("panel_map/signal0").gameObject;
            BaseButton btn_close = new BaseButton(transform.FindChild("close"));

            btn_close.onClick = onCloseMap;
            btns = this.transform.FindChild("panel_map/btns");

            for (int i = 0; i < btns.childCount; i++)
            {
                new BaseButton(btns.GetChild(i)).onClick = (GameObject go) => {
                    Vector3 vec = SceneCamera.getPosOnMiniMap(curMiniMap.mapScale);
                    vec = mapRotation * vec;
                    int x = (int)vec.x;
                    int y = (int)vec.y;

                    A3_cityOfWarProxy.getInstance().send_signal(uint.Parse(go.name), x, y);
                };
            }
            mapRotation = Quaternion.Euler(0f, 0f, 0f);
        }
        public void refreshPos()
        {
            goP.SetActive(mapid == GRMap.instance.m_nCurMapID || mapid == 0);
            if (curMiniMap == null || goP.active == false)
            {
                return;
            }
            Vector3 vec = SceneCamera.getPosOnMiniMap(curMiniMap.mapScale);

            vec = mapRotation * vec;
            goP.transform.localPosition = vec;

            vec   = SelfRole._inst.m_curModel.eulerAngles;
            vec.y = -vec.y;
            goP.transform.localEulerAngles = new Vector3(0f, 0f, 180f - SelfRole._inst.m_curModel.eulerAngles.y + mapRotation.eulerAngles.z);
        }