package org.flixel.plugin.tweens; import org.flixel.FlxPoint; import aurelienribon.tweenengine.TweenAccessor; /** * The tween accessor for FlxPoint. Don't call any methods from this class. If * you got other variables that needs to be tweened, you can override this * class. You'll need to register your TweenAccessor with the your own sprite * class and tween accessor. * * @author Claudio Ficara */ public class TweenPoint implements TweenAccessor<FlxPoint> { /** * The x-position from FlxObject. */ public static final int X = 1; /** * The y-position from FlxObject. */ public static final int Y = 2; /** * The x- and y-position from FlxObject. */ public static final int XY = 3; @Override public int getValues(FlxPoint Target, int TweenType, float[] ReturnValues) { switch(TweenType) { case X: ReturnValues[0] = Target.x; return 1; case Y: ReturnValues[0] = Target.y; return 1; case XY: ReturnValues[0] = Target.x; ReturnValues[1] = Target.y; return 2; default: assert false; return -1; } } @Override public void setValues(FlxPoint Target, int TweenType, float[] NewValues) { switch(TweenType) { case X: Target.x = NewValues[0]; break; case Y: Target.y = NewValues[0]; break; case XY: Target.x = NewValues[0]; Target.y = NewValues[1]; break; default: assert false; break; } } }