import info.gridworld.actor.Bug; public class DancingBug extends Bug { private int steps; private int[] lengths; public DancingBug(int[] length) { steps = 0; lengths = length; } public void act() { if (canMove()) { if(steps >= lengths.length) { steps = 0; } setDirection(getDirection() + lengths[steps] * 45); steps++; super.act(); } } } //main import info.gridworld.actor.ActorWorld; import info.gridworld.grid.Location; import java.awt.Color; public class DancingBugRunner { public static void main(String[] args) { ActorWorld world = new ActorWorld(); int[] bugArray = {5,2,345,765,2}; DancingBug chung = new DancingBug(bugArray); chung.setColor(Color.YELLOW); world.add(new Location(7, 8), chung); world.show(); } }