Get() public static method

public static Get ( GameObject go ) : UIEventTrigger,
go GameObject
return UIEventTrigger,
Beispiel #1
0
 /// <summary>
 /// 移除UI控件的所有监听器
 /// </summary>
 /// <param name="target"></param>
 public void RemoveUIClickListeners(UIBehaviour target)
 {
     if (target != null)
     {
         if (UIEventTrigger.HasExistOn(target.transform))
         {
             UIEventTrigger.Get(target).onClick = null;
         }
     }
 }
Beispiel #2
0
    // Use this for initialization
    void Awake()
    {
        nameInputField = transform.Find("Name/InputField").GetComponent <InputField>();
        transform.Find("ButtonOk").GetComponent <Button>().onClick.AddListener(ClickOk);
        transform.Find("ButtonRandom").GetComponent <Button>().onClick.AddListener(ClickRandomName);

        //拿到人物引用
        role = transform.Find("Camera/Role");
        UIEventTrigger.Get(transform.Find("RawImage").gameObject).onPointerDown += RotateRole;
    }
    // Use this for initialization
    void Start()
    {
        playerCon = GameObject.FindGameObjectWithTag("Player").GetComponent <PlayerController> ();

        //技能
        skillIcon[0].GetComponent <UISKillCD>().Init(0, playerCon);
        skillIcon[1].GetComponent <UISKillCD>().Init(1, playerCon);
        skillIcon[2].GetComponent <UISKillCD>().Init(2, playerCon);
        //普通攻击
        UIEventTrigger.Get(attackIcon).onPointerDown = OnDownAttack;
    }
Beispiel #4
0
    // Use this for initialization
    void Start()
    {
        Transform misc = GameObject.FindGameObjectWithTag("Misc").transform;

        for (int i = 0; i < buttonGrid.childCount; i++)
        {
            var btn = buttonGrid.GetChild(i);
            UIEventTrigger.Get(btn.gameObject).onPointerClick += OnClickOpenPanel;
            var follow = btn.gameObject.AddComponent <UIFollow> ();
            follow.worldPoint = misc.Find(btn.name);
        }
    }
Beispiel #5
0
    public int strength;               //战力


    // Use this for initialization
    void Awake()
    {
        //1.给三个标签页绑定事件
        for (int i = 1; i <= 3; i++)
        {
            Toggle toggle = transform.Find("Group/Toggle" + i).GetComponent <Toggle>();
            //标签文字显示效果事件绑定
            toggle.onValueChanged.AddListener(delegate(bool isOn)
            {
                toggle.transform.Find("Background/0/Text").gameObject.SetActive(isOn);
            });
            //面板切换事件绑定
            toggle.onValueChanged.AddListener(delegate(bool isOn)
            {
                toggle.transform.Find("Panel").gameObject.SetActive(isOn);
            });
        }

        //2.给按钮绑定事件 关闭,切换
        transform.Find("ButtonClose").GetComponent <Button>().onClick.AddListener(delegate()
        {
            SoundController.Instance.PlayAudio("audio");
            Destroy(gameObject);
        });
        transform.Find("ButtonClearUp").GetComponent <Button>().onClick.AddListener(delegate()
        {
            SoundController.Instance.PlayAudio("audio");
            ClearUp();
        });

        //3.初始化 数据
        panel1 = transform.Find("Group/Toggle1/Panel");
        panel2 = transform.Find("Group/Toggle2/Panel");
        panel3 = transform.Find("Group/Toggle3/Panel");


        //拿到人物引用
        role = transform.Find("Camera/tongren");
        //绑定角色旋转事件
        UIEventTrigger.Get(transform.Find("RawImage").gameObject).onPointerDown += RotateRole;
        //绑定角色切换事件
        UIEventTrigger.Get(transform.Find("ButtonBack").gameObject).onPointerDown  += CutRole;
        UIEventTrigger.Get(transform.Find("ButtonBack1").gameObject).onPointerDown += CutRole1;
        //绑定显示装备事件
        UIEventTrigger.Get(transform.Find("RawImage/Button").gameObject).onPointerDown += ShowEquip;


        //初始化
        playerName = transform.Find("Role/Name/Text").GetComponent <Text>();
        grade      = GameController.Instance.playerData.Level;    //获取等级
        strength   = GameController.Instance.playerData.Strength; //获取战力
    }
Beispiel #6
0
 public void Start()
 {
     UIEventTrigger.Get(toggleAuto).onClick = () => {
         if (onSelectAuto != null)
         {
             onSelectAuto(toggleAuto.isOn);
         }
     };
     UIEventTrigger.Get(btnQuit).onClick = () => {
         if (onClickQuit != null)
         {
             onClickQuit();
         }
     };
 }
Beispiel #7
0
    // Use this for initialization
    void Start()
    {
        handler = transform.Find("Handler");

        //绑定事件
        UIEventTrigger listener = UIEventTrigger.Get(gameObject);

        if (Application.platform == RuntimePlatform.WindowsEditor)//如果是PC平台
        {
            listener.onPointerDown += OnDownJoystickOnPC;
        }
        else if (Application.platform == RuntimePlatform.Android)//如果是安卓平台
        {
            listener.onPointerDown += OnDownJoystickOnMobile;
        }
    }
Beispiel #8
0
    /// <summary>
    /// 移除UI控件的监听器
    /// </summary>
    /// <param name="controlName"></param>
    /// <param name="listener"></param>
    public void RemoveUIClickListener(string controlName, Action <string> listener)
    {
        Transform target = transform.Find(controlName);

        if (target != null)
        {
            if (UIEventTrigger.HasExistOn(target))
            {
                UIEventTrigger.Get(target).onClickWithName -= listener;
            }
        }
        else
        {
            Debug.LogError("未找到UI控件:" + controlName);
        }
    }
    //生成奖励
    void InitReward()
    {
        //随机奖励
        var itemDatas = GameController.Instance.ItemDatas;
        int amount    = Random.Range(1, 6);

        for (int i = 0; i < amount; i++)
        {
            //Clone
            var item = itemDatas [Random.Range(0, itemDatas.Count)].Clone();
            //数量随机
            item.Amount = Random.Range(1, item.AmountMax + 1);

            rewardItems.Add(item);
        }

        //显示UI
        foreach (var item in rewardItems)
        {
            var ui = Instantiate(itemTemp);
            ui.SetParent(itemGrid);
            //替换图片
            ui.Find("Icon").GetComponent <Image>().sprite =
                Resources.Load <Sprite>("Item/" + item.Icon);
            //数量
            ui.Find("Amount").GetComponent <Text>().text = "" + item.Amount;
            //设置名称为id
            ui.name = "" + item.Id;
            //事件绑定
            UIEventTrigger.Get(ui.gameObject).onPointerDown += OnDownItem;
            UIEventTrigger.Get(ui.gameObject).onPointerUp   += OnUpItem;
        }


        //加入玩家背包

        GameController.Instance.playerItems.AddRange(rewardItems);

        //更新 任务数据
        foreach (var reward in rewardItems)
        {
            GameController.Instance.UpdateQuestProgress(QuestType.Collection, reward.Id, reward.Amount);
        }
    }
Beispiel #10
0
    // Use this for initialization
    void Start()
    {
        //创建24个关卡
        for (int i = 1; i <= 24; i++)
        {
            var btn = Instantiate(ButtonLevel);
            btn.SetParent(grid);
            //为关卡信息赋值
            if (i <= GameController.Instance.UnLockedLevel)
            {
                btn.Find("Lock").gameObject.SetActive(false);
                btn.Find("Text").GetComponent <Text> ().text = i.ToString();
            }

            UIEventTrigger.Get(btn.gameObject).onPointerClick += ClickLevelButton;
        }


        //事件的绑定
        UIEventTrigger.Get(scrollRect.gameObject).onBeginDrag += OnBeginDrag;
        UIEventTrigger.Get(scrollRect.gameObject).onEndDrag   += OnEndDrag;
    }
Beispiel #11
0
    public void Init()
    {
        scrollRect = transform.Find("Scroll View").GetComponent <ScrollRect>();
        //scrollRect.horizontalNormalizedPosition
        //float 范围 0 - 1

        //给toggle绑定事件

        for (int i = 1; i <= 3; i++)
        {
            UIEventTrigger listener = UIEventTrigger.Get(transform.Find("Group/Toggle" + i).gameObject);
            listener.onPointerClick += delegate(PointerEventData data)
            {
                if (data.pointerEnter.transform.parent.parent.GetComponent <Toggle>().isOn)
                {
                    //return;
                }
                //Debug.Log(data.pointerEnter.transform.parent.parent.name);
                float endValue = float.Parse(data.pointerEnter.name);
                StopAllCoroutines();
                StartCoroutine(ScrollMov(endValue));
            };
        }


        // 之前代码
        //transform.Find("Group/Toggle3").GetComponent<Toggle>().onValueChanged.AddListener(delegate (bool isOn)
        //{
        //    if (isOn == true)
        //    {
        //        StopAllCoroutines();
        //        StartCoroutine(ScrollMov(1f));
        //    }

        //});

        buttonPrefab = transform.Find("Button").gameObject;
        contentGrid  = transform.Find("Scroll View/Viewport/Content");

        //1.生成 24个按钮
        for (int i = 1; i <= 24; i++)
        {
            Transform buttonClone = Instantiate(buttonPrefab).transform;
            buttonClone.SetParent(contentGrid);
            buttonClone.localScale = Vector3.one;
            buttonClone.name       = i.ToString();                //改名字
            //2.根据解锁情况,修改按钮的显示内容
            if (i > GameController.Instance.playerData.LevelPlan) //未解锁
            {
                buttonClone.Find("Button").gameObject.SetActive(false);
                buttonClone.Find("Button_Lock").gameObject.SetActive(true);
                //3.给按钮绑定事件
                buttonClone.Find("Button_Lock").GetComponent <Button>().onClick.AddListener(ClickLockButton);
            }
            else//解锁
            {
                buttonClone.Find("Button").gameObject.SetActive(true);
                buttonClone.Find("Button/Text").GetComponent <Text>().text = "" + i;
                buttonClone.Find("Button_Lock").gameObject.SetActive(false);
                //3.给按钮绑定事件
                //手动绑定
            }
        }
    }
Beispiel #12
0
    // Use this for initialization
    void Start()
    {
        Init();
        //1.绑定返回按钮事件
        transform.Find("ButtonBack").GetComponent <Button>().onClick.AddListener(delegate()
        {
            GameController.Instance.uiController.DestroyAllPanel();
            UIPanelLoad.Instance.Init("MainCity", delegate()
            {
                GameController.Instance.uiController.CreatePanel("PanelMainCity");
            });
        });
        //2.生成奖励物品

        //2.1 得到奖励物品的数据
        List <Item> rewardList   = new List <Item>();
        List <Item> itemDataList = GameController.Instance.gameData.itemDataList;
        int         rewardCount  = Random.Range(2, 6);//奖励物品个数,随机

        for (int i = 0; i < rewardCount; i++)
        {
            //奖励物品,随机
            Item item = itemDataList[Random.Range(0, itemDataList.Count)].Clone();
            item.Amount = Random.Range(1, item.AmountMax);//奖励物品的数量,随机
            rewardList.Add(item);
        }
        //2.2 显示
        GameObject itemPrefab = transform.Find("ItemPrefab").gameObject;

        for (int i = 0; i < rewardList.Count; i++)
        {
            //生成
            Transform clone = Instantiate(itemPrefab).transform;
            clone.SetParent(transform.Find("Item/Grid"));
            clone.localScale = Vector3.one;
            //显示图片
            clone.Find("Icon").GetComponent <Image>().sprite =
                Resources.Load <Sprite>("Item/" + rewardList[i].Icon);
            //显示数量
            clone.Find("Text").GetComponent <Text>().text = "" + rewardList[i].Amount;

            //绑定事件
            //改名子
            clone.name = rewardList[i].Id.ToString();
            UIEventTrigger listener = UIEventTrigger.Get(clone.gameObject);
            listener.onPointerDown += delegate(PointerEventData data)
            {
                //将点击物体的name 转为 物品id,
                if (data.pointerEnter == null)
                {
                    return;
                }
                int id = int.Parse(data.pointerEnter.name);
                //通过id拿到数据
                for (int k = 0; k < rewardList.Count; k++)
                {
                    if (rewardList[k].Id == id)
                    {
                        //数据拿到了
                        //1 显示 tip
                        transform.Find("Tip").gameObject.SetActive(true);
                        //设置Tip显示位置
                        transform.Find("Tip").position = data.pointerEnter.transform.position;
                        //2 显示UI
                        //显示图片
                        transform.Find("Tip/Icon").GetComponent <Image>().sprite =
                            Resources.Load <Sprite>("Item/" + rewardList[k].Icon);
                        //显示名称
                        transform.Find("Tip/Name").GetComponent <Text>().text = "" + rewardList[k].Name;
                        //显示描述
                        transform.Find("Tip/Desc").GetComponent <Text>().text = "描述:" + rewardList[k].Desc;
                    }
                }
            };
            listener.onPointerUp += delegate(PointerEventData data)
            {
                transform.Find("Tip").gameObject.SetActive(false);
            };
        }

        //2.3 添加到玩家的背包
        GameController.Instance.playerData.AddItem(rewardList);

        //3. 更新 玩家 关卡解锁进度
        if (GameController.Instance.currentLevel == GameController.Instance.playerData.LevelPlan)
        {
            GameController.Instance.playerData.LevelPlan++;//通关了,解锁进度+1
        }
    }
Beispiel #13
0
    /// <summary>
    /// 初始化面板
    /// </summary>
    /// <param name="panel">面板</param>
    /// <param name="type">道具类型</param>
    public void InitPanelGrid(Transform panel, ItemType type)
    {
        //1.生成20个格子
        GameObject itemPrefab = transform.Find("ItemPrefab").gameObject;

        for (int i = 0; i < 20; i++)
        {
            //生成格子
            Transform clone = Instantiate(itemPrefab).transform;
            clone.SetParent(panel.Find("Grid"));
            clone.Find("Icon").gameObject.SetActive(false);
        }
        //2.将玩家背包数据,分别显示到不同面板中

        //2.1 将符合type的物品拿出来,放到一个list中
        List <Item> list = new List <Item>();


        for (int i = 0; i < playerItemList.Count; i++)
        {
            if (playerItemList[i].Type == type)
            {
                list.Add(playerItemList[i]);
            }
        }
        //2.2 显示UI
        for (int i = 0; i < list.Count; i++)
        {
            //生成
            Transform clone = panel.Find("Grid").GetChild(i);

            //显示图片
            clone.Find("Icon").GetComponent <Image>().sprite =
                Resources.Load <Sprite>("Item/" + list[i].Icon);
            clone.Find("Icon").gameObject.SetActive(true);
            //显示数量
            clone.Find("Count").GetComponent <Text>().text = "" + list[i].Amount;


            //改名称
            clone.name = list[i].Id.ToString();                             //把格子名称更换为链表中相应数据的ID字段
            ItemList.Add(clone, list[i]);
            UIEventTrigger listener = UIEventTrigger.Get(clone.gameObject); //点击事件

            listener.onPointerDown += delegate(PointerEventData data)       //弹提示的按压时间
            {
                //将点击物体的name 转为 物品id,
                if (data.pointerEnter == null)
                {
                    return;
                }
                PointerDown();
                int id = int.Parse(data.pointerEnter.name);
                //通过id拿到数据
                for (int k = 0; k < list.Count; k++)
                {
                    if (list[k].Id == id)
                    {
                        //数据拿到了
                        //1 显示 tip
                        transform.Find("Tip").gameObject.SetActive(true);
                        //设置Tip显示位置
                        Vector3 pos = data.pointerEnter.transform.position;
                        if (pos.y > transform.Find("TipClamp").position.y)
                        {
                            pos.y = transform.Find("TipClamp").position.y;
                        }
                        transform.Find("Tip").position = pos;
                        //2 显示UI
                        //显示图片
                        transform.Find("Tip/Icon").GetComponent <Image>().sprite =
                            Resources.Load <Sprite>("Item/" + list[k].Icon);
                        //显示名称
                        transform.Find("Tip/Name").GetComponent <Text>().text = "" + list[k].Name;
                        //显示描述
                        transform.Find("Tip/Desc").GetComponent <Text>().text = "描述:" + list[k].Desc;
                    }
                }
            };
            listener.onPointerUp += delegate(PointerEventData data) //判断松开后提示框消失
            {
                transform.Find("Tip").gameObject.SetActive(false);
            };
            listener.onPointerClick += delegate(PointerEventData data)
            {
                if (data.pointerEnter == null)
                {
                    return;
                }
                Transform date = data.pointerEnter.transform;
                StopCoroutine(TimeCor); //关停 按压计时协成
                if (PressTime < 0.1f)   //鼠标抬起拿到鼠标按压的时间并判断
                {
                    UIPanelTip.Instance.Init("使用物品");
                    int count = int.Parse(date.Find("Count").GetComponent <Text>().text); //把 转换为int类型
                    if (count > 0)
                    {
                        ItemList[date].Amount--;
                        count--;
                        if (count > 0)
                        {
                            date.Find("Count").GetComponent <Text>().text = count.ToString();
                        }
                        else
                        {
                            date.Find("Icon").gameObject.SetActive(false);
                            date.Find("Count").gameObject.SetActive(false);
                            Destroy(date.GetComponent <UIEventTrigger>());
                            //字典删除相应的物品数据
                            playerItemList.Remove(ItemList[date]);
                        }
                    }
                    GameController.Instance.playerData.ItemList = playerItemList;
                    OutInit();
                    StartCoroutine(UpdataItem());

                    //出现是否使用点击物品的提示框
                    //UIPanelNotice.Instance.Init("是否使用该物体", delegate ()
                    //{
                    //    Debug.Log(date.name);
                    //    int count = int.Parse(date.Find("Count").GetComponent<Text>().text);//把 转换为int类型
                    //    if (count > 0)
                    //    {
                    //        ItemList[date].Amount--;
                    //        count--;
                    //        if (count > 0)
                    //        {
                    //            date.Find("Count").GetComponent<Text>().text = count.ToString();
                    //        }
                    //        else
                    //        {
                    //            date.Find("Icon").gameObject.SetActive(false);
                    //            date.Find("Count").gameObject.SetActive(false);
                    //            Destroy(date.GetComponent<UIEventTrigger>());
                    //            //字典删除相应的物品数据
                    //            playerItemList.Remove(ItemList[date]);
                    //        }
                    //    }
                    //    GameController.Instance.playerData.ItemList = playerItemList;
                    //    OutInit();
                    //    StartCoroutine(UpdataItem());
                    //});
                }
                if (PressTime >= 0.1f)
                {
                    //物品属性展示面板隐藏
                    Debug.LogError("物品属性展示面板");
                }
            };
        }
        //2.3 显示数量
        panel.Find("Image/Text").GetComponent <Text>().text = list.Count + "/20";
    }
Beispiel #14
0
 // Use this for initialization
 void Start()
 {
     //设置按压事件
     UIEventTrigger.Get(joystickLeft.gameObject).onPointerDown += OnDownJoystick;
 }
Beispiel #15
0
 protected override void BindEvents()
 {
     base.BindEvents();
     UIEventTrigger.Get(m_cBtnStart.gameObject).AddListener(EventTriggerType.PointerClick, OnClickStart);
     UIEventTrigger.Get(m_cBtnExit.gameObject).AddListener(EventTriggerType.PointerClick, OnClickExit);
 }
Beispiel #16
0
 protected override void BindEvents()
 {
     base.BindEvents();
     UIEventTrigger.Get(m_cBtnExit.gameObject).AddListener(UnityEngine.EventSystems.EventTriggerType.PointerClick, OnClickExit);
 }