//import java.util.Random; //import java.awt.Color; abstract public class MobileSimObject extends SimObject { // OVERVIEW: A MobileSimObject is a simulator object that can move. // Note: its still an abstract class since we didn't implement executeTurn. public void setLocation (int newrow, int newcol) // REQUIRES: The square in the grid at newrow, newcol is empty. //@requires isInitialized // MODIFIES: this // EFFECTS: sets this SimObject's location to newrow, newcol. { if (grid.getObjectAt (newrow, newcol) != null) { throw new RuntimeException ("BUG: SimObject.setLocation - row: " + newrow + " col: " + newcol + " already occupied."); } // Empty location, move to it. mrow = newrow; mcol = newcol; } //@nowarn Exception // Don't warn about the unexpected Runtime exception. }