Package com.starpoints.animation
Class AnimationInfo
- java.lang.Object
-
- com.starpoints.animation.AnimationInfo
-
- All Implemented Interfaces:
java.io.Serializable
- Direct Known Subclasses:
EmptyAnimationInfo
public class AnimationInfo extends java.lang.Object implements java.io.SerializableContainer for all animations during one round segment. The AnimationInfo is copied each phase to keep all contained animation that have not reached the end of its lifecycle. It is passed to all relevant methods during game that manipulate the game state to add animation information e.g. for rockets, regeneration or shield fx. During GameState creation, the AnimationInfo content is partly aggregated for display relevant state changes.- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description protected java.util.Hashtable<java.lang.Object,Animation>additionalAnimationsMap of additional Animations.static AnimationInfoEMPTYEmpty Animaton singleton.protected java.util.Hashtable<Figure,FigureAnimation>figureAnimationsMap of FigureAnimations.protected java.util.Hashtable<Item,ItemAnimation>itemAnimationsMap of ItemAnimations.protected java.util.Hashtable<Point,PointAnimation>pointAnimationsMap of PointAnimations.
-
Constructor Summary
Constructors Constructor Description AnimationInfo(int index)Creates a new AnimationInfo with the given index.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaddAdditionalAnimation(java.lang.Object o, Animation a)Adds an additional AnimationFigureAnimationaddFigureMoveAnimation(Figure f, Point srcPoint, Point targetPoint)Adds a figure move animation.FigureAnimationaddFigureRamAnimation(Figure f, boolean isRamming, int ramPower, Direction ramDir, Thing ramTarget)Adds a figure ram animation for a figure standing on a rammers target point.FigureAnimationaddFigureRamAnimation(Figure f, Point srcPoint, Point targetPoint, boolean isRamming, int ramPower, Direction ramDir, Thing ramTarget)Adds a figure ram animation.FigureAnimationaddFigureRamAnimation(Figure f, Point srcPoint, Point targetPoint, boolean isRamming, int ramPower, Direction ramDir, Thing ramTarget, boolean isBlocked)Adds a figure ram animation.FigureAnimationaddFigureShieldAnimation(Figure f, ShieldType type, int power)Adds a shield animation for the figure.ItemAnimationaddItemMoveAnimation(Item i, Point srcPoint, Point targetPoint, int duration)Adds an item-move animationPointAnimationaddPointChainExplodeAnimation(Point p, Point target)Adds a Chain explosion animationPointAnimationaddPointColorAnimation(Point p, int color, int oldColor)Adds a Color animation caused by no swirl.PointAnimationaddPointColorAnimation(Point p, int color, int oldColor, boolean causedBySwirl)Adds a Color animationvoidclear()Clears all animations.booleancontainsAdditionalAnimation(java.lang.Object o)Checks, if an additional animation is contained for the key.booleancontainsFigureAnimation(Figure f)Checks, if an animation for the given figure is contained.booleancontainsFigureMoveAnimation(Figure f)Checks, if a move animation for the given figure is contained.booleancontainsItemAnimation(Item i)Checks, if an animation is contained for the given item.booleancontainsPointAnimation(Point p)Checks, if an animation for the given point exist.PointAnimationcreateOrGetPointAnimation(Point p)Gets or creates an Animation for the given Point.AnimationgetAdditionalAnimation(java.lang.Object o)Gets an additional animation for the given object.java.util.Set<java.lang.Object>getAdditionalAnimationKeys()Gets a set of additional animation keys.AnimationInfogetCopyForNextAnimation(int newIndex)Gets a copy for the next AnimationInfo.FigureAnimationgetFigureAnimation(Figure f)Gets a FigureAnimation for the given figure.java.lang.StringgetFigureAnimationString()Returns a string representation of the figure animations.intgetIndex()Gets the Index of this AnimationInfo.ItemAnimationgetItemAnimation(Item i)Gets an Animation for the given item.java.lang.StringtoString()Returns a string representation.
-
-
-
Field Detail
-
EMPTY
public static final AnimationInfo EMPTY
Empty Animaton singleton.
-
figureAnimations
protected java.util.Hashtable<Figure,FigureAnimation> figureAnimations
Map of FigureAnimations.
-
pointAnimations
protected java.util.Hashtable<Point,PointAnimation> pointAnimations
Map of PointAnimations.
-
itemAnimations
protected java.util.Hashtable<Item,ItemAnimation> itemAnimations
Map of ItemAnimations.
-
additionalAnimations
protected java.util.Hashtable<java.lang.Object,Animation> additionalAnimations
Map of additional Animations.
-
-
Method Detail
-
getFigureAnimation
public FigureAnimation getFigureAnimation(Figure f)
Gets a FigureAnimation for the given figure.- Parameters:
f- The Figure.- Returns:
- The FigureAnimation.
-
containsFigureAnimation
public boolean containsFigureAnimation(Figure f)
Checks, if an animation for the given figure is contained.- Parameters:
f- The figure.- Returns:
- true, if an animation for the given figure is contained.
-
containsFigureMoveAnimation
public boolean containsFigureMoveAnimation(Figure f)
Checks, if a move animation for the given figure is contained.- Parameters:
f- The figure.- Returns:
- true, if an animation for the given figure is contained.
-
addFigureMoveAnimation
public FigureAnimation addFigureMoveAnimation(Figure f, Point srcPoint, Point targetPoint)
Adds a figure move animation.- Parameters:
f- The figure.srcPoint- The source point.targetPoint- The target point.- Returns:
- The FigureAniamtion.
-
addFigureRamAnimation
public FigureAnimation addFigureRamAnimation(Figure f, Point srcPoint, Point targetPoint, boolean isRamming, int ramPower, Direction ramDir, Thing ramTarget)
Adds a figure ram animation.- Parameters:
f- The figure.srcPoint- The source point.targetPoint- The target point.isRamming- Flag, if figure is actively ramming.ramPower- The ram power.ramDir- The ram direction.ramTarget- The ram taerget.- Returns:
- The FigureAnimation.
-
addFigureRamAnimation
public FigureAnimation addFigureRamAnimation(Figure f, boolean isRamming, int ramPower, Direction ramDir, Thing ramTarget)
Adds a figure ram animation for a figure standing on a rammers target point.- Parameters:
f- The figure.isRamming- Flag, if figure is actively ramming.ramPower- The ram power.ramDir- The ram direction.ramTarget- The ram taerget.- Returns:
- The FigureAnimation.
-
addFigureRamAnimation
public FigureAnimation addFigureRamAnimation(Figure f, Point srcPoint, Point targetPoint, boolean isRamming, int ramPower, Direction ramDir, Thing ramTarget, boolean isBlocked)
Adds a figure ram animation.- Parameters:
f- The figure.srcPoint- The source point.targetPoint- The target point.isRamming- Flag, if figure is actively ramming.ramPower- The ram power.ramDir- The ram direction.ramTarget- The ram taerget.isBlocked- Flag, if target is blocked.- Returns:
- The FigureAnimation.
-
addFigureShieldAnimation
public FigureAnimation addFigureShieldAnimation(Figure f, ShieldType type, int power)
Adds a shield animation for the figure.- Parameters:
f- The figure.type- The shield type.power- The shield power.- Returns:
- the FigureAnimation.
-
getItemAnimation
public ItemAnimation getItemAnimation(Item i)
Gets an Animation for the given item.- Parameters:
i- The item.- Returns:
- An Animation for the item.
-
addItemMoveAnimation
public ItemAnimation addItemMoveAnimation(Item i, Point srcPoint, Point targetPoint, int duration)
Adds an item-move animation- Parameters:
i- The item.srcPoint- The source point.targetPoint- The target point.duration- Duration of animation.- Returns:
- The ItemAnimation.
-
containsItemAnimation
public boolean containsItemAnimation(Item i)
Checks, if an animation is contained for the given item.- Parameters:
i- The item.- Returns:
- true, if an animation is contained for the given item.
-
createOrGetPointAnimation
public PointAnimation createOrGetPointAnimation(Point p)
Gets or creates an Animation for the given Point.- Parameters:
p- The Point.- Returns:
- A PointAnnimation.
-
addPointColorAnimation
public PointAnimation addPointColorAnimation(Point p, int color, int oldColor)
Adds a Color animation caused by no swirl.- Parameters:
p- The pointcolor- The coloroldColor- the old color- Returns:
- The created or existing PointAnimation
-
addPointColorAnimation
public PointAnimation addPointColorAnimation(Point p, int color, int oldColor, boolean causedBySwirl)
Adds a Color animation- Parameters:
p- The pointcolor- The coloroldColor- the old colorcausedBySwirl- Flag, if caused by swirl effect.- Returns:
- The created or existing PointAnimation
-
addPointChainExplodeAnimation
public PointAnimation addPointChainExplodeAnimation(Point p, Point target)
Adds a Chain explosion animation- Parameters:
p- The source pointtarget- the target point.- Returns:
- The created or existing PointAnimation
-
containsPointAnimation
public boolean containsPointAnimation(Point p)
Checks, if an animation for the given point exist.- Parameters:
p- The point.- Returns:
- true, if an animation for the given point exist.
-
containsAdditionalAnimation
public boolean containsAdditionalAnimation(java.lang.Object o)
Checks, if an additional animation is contained for the key.- Parameters:
o- The key.- Returns:
- true, if a Animation exists.
-
getAdditionalAnimation
public Animation getAdditionalAnimation(java.lang.Object o)
Gets an additional animation for the given object.- Parameters:
o- The key.- Returns:
- The Animation or null, if none exists for the key.
-
addAdditionalAnimation
public void addAdditionalAnimation(java.lang.Object o, Animation a)Adds an additional Animation- Parameters:
o- The keya- The animation.
-
getAdditionalAnimationKeys
public java.util.Set<java.lang.Object> getAdditionalAnimationKeys()
Gets a set of additional animation keys.- Returns:
- Set of additional animation keys.
-
getIndex
public int getIndex()
Gets the Index of this AnimationInfo.- Returns:
- The index.
-
toString
public java.lang.String toString()
Returns a string representation.- Overrides:
toStringin classjava.lang.Object- Returns:
- A string representation.
-
getFigureAnimationString
public java.lang.String getFigureAnimationString()
Returns a string representation of the figure animations.- Returns:
- A string representation.
-
getCopyForNextAnimation
public AnimationInfo getCopyForNextAnimation(int newIndex)
Gets a copy for the next AnimationInfo.- Parameters:
newIndex- The next animations index.- Returns:
- This instance with a reduced duration or null, if end of lifecyle is reached.
-
clear
public void clear()
Clears all animations.
-
-