public class WorldModel extends Object implements ParsedDataObserver, Serializable
Modifier and Type | Field and Description |
---|---|
private AgentModel |
agentModel |
private DynamicObject |
ball |
private static WorldModel |
instance |
private Map<Integer,Player> |
opponentPlayers |
private static long |
serialVersionUID |
private Map<Integer,Player> |
teamPlayers |
Constructor and Description |
---|
WorldModel(AgentModel model) |
Modifier and Type | Method and Description |
---|---|
DynamicObject |
ballAfterAction(Annotation annotation)
Returns ball as dynamic object with new values
based on specified Annotation execution saying how object changes after
Annotation execution.
|
void |
calculateBallPosition(ParsedData data)
Calculates ball's position from specified parsed data.
|
private void |
calculatePlayers(List<PlayerData> players,
double timeSeen) |
AgentModel |
getAgentModel() |
DynamicObject |
getBall()
Returns ball as dynamic object.
|
static WorldModel |
getInstance()
Returns WorldModel static instance to work with it.
|
ArrayList<Player> |
getOpponentPlayers()
Returns list of oppontent players - players with same team as agent's team is.
|
List<Player> |
getTeamPlayers()
Returns list of team mates - players with same team as agent's team is.
|
void |
isInRange(Player player)
Checks if agent can kick to goal and sets this value for specified player.
|
void |
processNewServerMessage(ParsedData data) |
void |
returnBallRelativePosition(Vector3D ballRelativePosition,
double simulationTime)
Returns ball's relative position, relative to agents position.
|
void |
setAgentModel(AgentModel agent)
Sets AgentModel to compute with.
|
private void |
updateOpponentTeam(PlayerData playerdata,
double timeSeen) |
private void |
updateOurTeam(PlayerData playerdata,
double timeSeen) |
private void |
updatePlayer(Player player,
PlayerData playerdata,
double timeSeen) |
private static final long serialVersionUID
private DynamicObject ball
private AgentModel agentModel
private static WorldModel instance
public WorldModel(AgentModel model)
public static WorldModel getInstance()
public void processNewServerMessage(ParsedData data)
processNewServerMessage
in interface ParsedDataObserver
private void calculatePlayers(List<PlayerData> players, double timeSeen)
private void updateOurTeam(PlayerData playerdata, double timeSeen)
private void updateOpponentTeam(PlayerData playerdata, double timeSeen)
private void updatePlayer(Player player, PlayerData playerdata, double timeSeen)
public void calculateBallPosition(ParsedData data)
data
- public void returnBallRelativePosition(Vector3D ballRelativePosition, double simulationTime)
ballRelativePosition
- simulationTime
- public DynamicObject getBall()
public void setAgentModel(AgentModel agent)
agent
- public AgentModel getAgentModel()
public List<Player> getTeamPlayers()
public ArrayList<Player> getOpponentPlayers()
public DynamicObject ballAfterAction(Annotation annotation)
annotation
- public void isInRange(Player player)