예제 #1
0
        public static Callback Acquire <U, V, W, T>(Action <U, V, W, T> action, U arg1, V arg2, W arg3, T arg4)
        {
            Callback4 <U, V, W, T> callback = ObjectPools.Instance.Acquire <Callback4 <U, V, W, T> >();

            callback.Handler = action;
            callback.Arg1    = arg1;
            callback.Arg2    = arg2;
            callback.Arg3    = arg3;
            callback.Arg4    = arg4;
            return(callback);
        }
예제 #2
0
        public int AddTimer <T, U, V, W>(int start, int interval, Action <T, U, V> handler, T arg1, U arg2, V arg3, W arg4)
        {
            Callback4 <T, U, V, W> callback = ObjectPools.Instance.Acquire <Callback4 <T, U, V, W> >();

            callback.Arg1    = arg1;
            callback.Arg2    = arg2;
            callback.Arg3    = arg3;
            callback.Arg4    = arg4;
            callback.Handler = handler;
            TimerTask p = GetTimerData(callback, start, interval);

            return(AddTimer(p));
        }
예제 #3
0
        public static BehaviourCallback LocalScaleTo(this Transform trans, Vector3 end)
        {
            Callback4 <Transform, Vector3, Vector3, BehaviourCallback> callback = new Callback4 <Transform, Vector3, Vector3, BehaviourCallback>();

            callback.Arg1    = trans;
            callback.Arg2    = trans.localScale;
            callback.Arg3    = end;
            callback.Handler = (Action <Transform, Vector3, Vector3, BehaviourCallback>)LocalScaleTo;
            BehaviourCallback beh = new BehaviourCallback(callback, callback, callback);

            callback.Arg4 = beh;
            return(beh);
        }
예제 #4
0
        public static BehaviourCallback FillAmount(this Image img, float startV, float endV)
        {
            Callback4 <Image, float, float, BehaviourCallback> callback = new Callback4 <Image, float, float, BehaviourCallback>();

            callback.Arg1    = img;
            callback.Arg2    = startV;
            callback.Arg3    = endV;
            callback.Handler = (Action <Image, float, float, BehaviourCallback>)FillAmount;
            BehaviourCallback beh = new BehaviourCallback(callback, callback, callback);

            callback.Arg4 = beh;
            return(beh);
        }
예제 #5
0
        public static BehaviourCallback ColorTo(this Material mat, Color startV, Color endV)
        {
            Callback4 <Material, Color, Color, BehaviourCallback> callback = new Callback4 <Material, Color, Color, BehaviourCallback>();

            callback.Arg1    = mat;
            callback.Arg2    = startV;
            callback.Arg3    = endV;
            callback.Handler = (Action <Material, Color, Color, BehaviourCallback>)ColorTo;
            BehaviourCallback beh = new BehaviourCallback(callback, callback, callback);

            callback.Arg4 = beh;
            return(beh);
        }
예제 #6
0
        public static BehaviourCallback RotateTo(this Transform trans, Quaternion end)
        {
            Callback4 <Transform, Quaternion, Quaternion, BehaviourCallback> callback = new Callback4 <Transform, Quaternion, Quaternion, BehaviourCallback>();

            callback.Arg1    = trans;
            callback.Arg2    = trans.rotation;
            callback.Arg3    = end;
            callback.Handler = (Action <Transform, Quaternion, Quaternion, BehaviourCallback>)RotateTo;
            BehaviourCallback beh = new BehaviourCallback(callback, callback, callback);

            callback.Arg4 = beh;
            return(beh);
        }