- java.lang.Object
-
- be.yildizgames.shared.ia.goal.Goal<T>
-
- All Implemented Interfaces:
Comparable<Goal<T>>
public final class Goal<T> extends Object implements Comparable<Goal<T>>
A goal represent something an entity is trying to achieve, it combines an action with a level of desirability to complete this action.- Author:
- Grégory Van den Borre
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
Goal.Desirability
Possible desirability for a given goal.
-
Method Summary
Modifier and Type Method Description int
compareTo(Goal o)
boolean
equals(Object obj)
T
getAction()
Goal.Desirability
getDesirability()
int
hashCode()
void
setDesirability(Goal.Desirability desirability)
void
setUndesirable()
Shortcut method to set this goal to no desirability.
-
-
-
Constructor Detail
-
Goal
public Goal(T action)
Build a new goal.- Parameters:
action
- Goal type.
-
-
Method Detail
-
getAction
public final T getAction()
-
getDesirability
public final Goal.Desirability getDesirability()
-
setDesirability
public final void setDesirability(Goal.Desirability desirability)
-
setUndesirable
public final void setUndesirable()
Shortcut method to set this goal to no desirability.
-
compareTo
public final int compareTo(Goal o)
- Specified by:
compareTo
in interfaceComparable<T>
-
-