public static void PerformAction(GameObject gameObject, AbstractEventData eventData = null)
        {
            if (gameObject == null)
            {
                throw new NullGameObjectException();
            }

            eventData ??= new PointerEventData(EventSystem.current);

            var components = gameObject.GetComponents <T>();

            if (components.Length == 0)
            {
                throw new InteractionNotFoundException(typeof(T));
            }

            var methodInfos = typeof(T).GetMethods();

            foreach (var component in components)
            {
                foreach (var method in methodInfos)
                {
                    method.Invoke(component, new object[] { eventData });
                }
            }
        }
예제 #2
0
 public void InvokeHandle(GameObject sender, AbstractEventData args)
 {
     if (null != m_eventHandle)
     {
         m_eventHandle(sender, args, m_extras);
     }
 }
        public static void PerformAction(string gameObjectName,
                                         AbstractEventData eventData = null)
        {
            var gameObject = GameObject.Find(gameObjectName);

            if (gameObject == null)
            {
                throw new GameObjectNotFoundException(gameObjectName);
            }

            PerformAction(gameObject, eventData);
        }
예제 #4
0
    public static int get_used(IntPtr l)
    {
        int result;

        try
        {
            AbstractEventData abstractEventData = (AbstractEventData)LuaObject.checkSelf(l);
            LuaObject.pushValue(l, true);
            LuaObject.pushValue(l, abstractEventData.used);
            result = 2;
        }
        catch (Exception e)
        {
            result = LuaObject.error(l, e);
        }
        return(result);
    }