package net.sf.bloodball.fit;
import java.awt.Point;
import java.util.List;
import fit.RowFixture;
import net.sf.bloodball.fit.system.TestSystem;
import net.sf.bloodball.model.player.IPlayer;
public class PlayersOnField extends RowFixture {
public static class PlayerOnField {
public String team;
public int number;
public int x;
public int y;
}
public Object[] query() throws Exception {
List players = TestSystem.getPlayersOnField();
Object[] playerObjects = new PlayerOnField[players.size()];
for (int index = 0; index < playerObjects.length; index++) {
IPlayer player = (IPlayer) players.get(index);
playerObjects[index] = createPlayerOnField(player);
}
return playerObjects;
}
private PlayerOnField createPlayerOnField(IPlayer player) {
PlayersOnField.PlayerOnField playerOnField = new PlayersOnField.PlayerOnField();
playerOnField.team = player.getTeam().getTeam().getName();
playerOnField.number = player.getTeam().getPlayerNumber(player);
Point position = TestSystem.getPlayerPosition(player);
playerOnField.x = position.x;
playerOnField.y = position.y;
return playerOnField;
}
public Class getTargetClass() {
return PlayerOnField.class;
}
}