/// <summary>
        /// クリックイベントを設定
        /// </summary>
        internal virtual void AddClickEvent(bool isPolygon, StringGridRow row, UnityAction <BaseEventData> action)
        {
            GameObject       go        = CurrentObject;
            List <Component> colliders = AddEventColliders(go, isPolygon);

            //イベントトリガーの追加
            foreach (var item in colliders)
            {
                EventTrigger eventTrigger = item.gameObject.AddComponent <EventTrigger>();
                UtageToolKit.AddEventTriggerEntry(eventTrigger, (eventData) => OnClick(eventData, row, action), EventTriggerType.PointerClick);
                eventTriggers.Add(eventTrigger);
            }
        }
Exemplo n.º 2
0
        IEnumerator CoAddClickEvent(bool isPolygon, UnityAction <BaseEventData> action)
        {
            while (CurrentSprite.IsLoading)
            {
                yield return(0);
            }
//			yield return new WaitForEndOfFrame();

            GameObject go = CurrentSprite.gameObject;

            //コライダーの追加
            if (isPolygon)
            {
                if (!go.GetComponent <PolygonCollider2D>())
                {
                    go.AddComponent <PolygonCollider2D>();
                }
            }
            else
            {
                if (!go.GetComponent <Collider2D>())
                {
                    go.AddComponent <Collider2D>();
                }
            }


            //イベントトリガーの追加
            EventTrigger eventTrigger = go.GetComponent <EventTrigger>();

            if (!eventTrigger)
            {
                eventTrigger = go.AddComponent <EventTrigger>();
            }

            UtageToolKit.AddEventTriggerEntry(eventTrigger, action, EventTriggerType.PointerClick);
        }