OSDN Git Service

Added time scale action.
authorNathanSweet <nathan.sweet@gmail.com>
Sat, 6 Apr 2013 12:25:12 +0000 (14:25 +0200)
committerNathanSweet <nathan.sweet@gmail.com>
Sat, 6 Apr 2013 12:25:12 +0000 (14:25 +0200)
gdx/src/com/badlogic/gdx/scenes/scene2d/actions/Actions.java
gdx/src/com/badlogic/gdx/scenes/scene2d/actions/TimeScaleAction.java [new file with mode: 0644]

index 57431f7..effe117 100644 (file)
@@ -307,6 +307,13 @@ public class Actions {
                return action;\r
        }\r
 \r
+       static public TimeScaleAction timeScale (float scale, Action scaledAction) {\r
+               TimeScaleAction action = action(TimeScaleAction.class);\r
+               action.setScale(scale);\r
+               action.setAction(scaledAction);\r
+               return action;\r
+       }\r
+\r
        static public SequenceAction sequence (Action action1) {\r
                SequenceAction action = action(SequenceAction.class);\r
                action.addAction(action1);\r
diff --git a/gdx/src/com/badlogic/gdx/scenes/scene2d/actions/TimeScaleAction.java b/gdx/src/com/badlogic/gdx/scenes/scene2d/actions/TimeScaleAction.java
new file mode 100644 (file)
index 0000000..fd40240
--- /dev/null
@@ -0,0 +1,36 @@
+/*******************************************************************************
+ * Copyright 2011 See AUTHORS file.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ ******************************************************************************/
+
+package com.badlogic.gdx.scenes.scene2d.actions;
+
+/** Multiplies the delta of an action.
+ * @author Nathan Sweet */
+public class TimeScaleAction extends DelegateAction {
+       private float scale;
+
+       public boolean act (float delta) {
+               if (action == null) return true;
+               return action.act(delta * scale);
+       }
+
+       public float getScale () {
+               return scale;
+       }
+
+       public void setScale (float scale) {
+               this.scale = scale;
+       }
+}