package net.sf.bloodball.fit;

import java.awt.Point;

import fit.ColumnFixture;

import net.sf.bloodball.fit.system.TestSystem;
import net.sf.bloodball.model.player.IPlayer;

public class PlayerPosition extends ColumnFixture {

  public int number;
  public String team;

  private IPlayer getPlayer() {
    return TestSystem.getFormation(team).getPlayerByNumber(number);
  }

  private Point getPlayerPosition() {
    return TestSystem.getPlayerPosition(getPlayer());
  }

  public boolean onField() {
    return getPlayerPosition() != null;
  }

  public int x() {
    Point position = getPlayerPosition();
    return position == null ? -1 : position.x;
  }

  public int y() {
    Point position = getPlayerPosition();
    return position == null ? -1 : position.y;
  }
  
  public String state() {
    String state = getPlayer().getHealth().getDescription();
    return state.length() == 0 ? "OK" : state; //$NON-NLS-1$
  }

}