package aima.agents; import java.util.*; import java.awt.Point; /** AgentThing is a simple implementation of Agent, as a Thing. */ public class AgentThing extends Thing implements Agent { public AgentThing(AgentProgram program) { this.program = program; location = new Point(1,1); heading = new Point(1,0); } // The Agent Interface public AgentProgram getProgram() { return program; } public Percept getPercept() { return percept; } public void setPercept(Percept p) { percept = p; } public Action getAction() { return action; } public void setAction(Action a) { action = a; } public float getScore() { return score; } public void setScore(float s) { score = s; } // Instance Variables private Percept percept = null; private Action action = null; private float score = 0; private AgentProgram program; }