This is my actors coding so far.
import greenfoot.*; // (World, Actor, GreenfootImage, Greenfoot and MouseInfo)
/**
* Write a description of class Dom here.
*
* @author (your name)
* @version (a version number or a date)
*/
public class Dom extends Mover
{
private int speed=5;
public Dom()
{
}
public void act()
{
checkKeys();
}
private void checkKeys(){
if(Greenfoot.isKeyDown("left")&&!CaveLeft()){
moveLeft();
}
if(Greenfoot.isKeyDown("right")&&!CaveRight()){
moveRight();
}
if(Greenfoot.isKeyDown("up")&&!CaveUp()){
moveUp();
}
if(Greenfoot.isKeyDown("down")&&!CaveDown()){
moveDown();
}
} public void moveRight(){
setLocation(getX()+speed,getY());
}
public void moveLeft(){
setLocation(getX()-speed,getY());
}
public void moveUp(){
setLocation(getX(),getY() -speed);
}
public void moveDown(){
setLocation(getX(),getY() +speed);
}
public boolean canSee(Class clss){
Actor actor = getOneIntersectingObject(clss);
return actor != null;
}
public boolean CaveRight(){
Cave a = (Cave) getOneObjectAtOffset(20,-25,Cave.class);
return a !=null;
}
public boolean CaveLeft(){
Cave a = (Cave) getOneObjectAtOffset(-25,20,Cave.class);
return a !=null;
}
public boolean CaveUp(){
Cave a = (Cave) getOneObjectAtOffset(25,-20,Cave.class);
return a !=null;
}
public boolean CaveDown(){
Cave a = (Cave) getOneObjectAtOffset(-20,25,Cave.class);
return a !=null;
}
}

