any help would be great, I will post all my classes.
For my snake world its saying I need a return type, I don't see why.
import greenfoot.*; // (World, Actor, GreenfootImage, Greenfoot and MouseInfo)
import java.util.List;
public class SnakeWorld extends World
{
private static final int minSpeed = 20, maxSpeed = 50;
private int nextFood;
private Snake foot;
public Snakeworld()
{
super(15, 10, 40);
nextFood = Greenfoot.getRandomNumber(5);
addRocks(5);
addFood();
addFood();
foot = new Snakefoot();
addObject(foot, 7, 5);
}
public void act()
{
if(--nextFood <= 0)
{
addFood();
nextFood = Greenfoot.getRandomNumber(8+2*foot.getPoints());
}
}
private void addFood()
{
addActor(new Food());
}
private void addRocks(int count)
{
for(int i=0; i<count; i++)
{
addActor(new Rock());
}
}
private boolean addActor(Actor actor)
{
boolean done = false;
int tries = getWidth();
while(!done && tries > 0)
{
int x = Greenfoot.getRandomNumber(getWidth());
int y = Greenfoot.getRandomNumber(getHeight());
List objs = getObjectsAt(x,y,Actor.class);
if(objs == null || objs.size() == 0)
{
addObject(actor,x,y);
done = true;
}
tries--;
}
return done;
}
}
To make my rocks solid (also an abstract class is required for the project)
import greenfoot.*; // (World, Actor, GreenfootImage, Greenfoot and MouseInfo)
public abstract class Solid extends Actor
{
public void act()
{
}
}
Rock class
import greenfoot.*; // (World, Actor, GreenfootImage, Greenfoot and MouseInfo)
public class Rock extends Solid
{
public void act()
{
}
}
import greenfoot.*;
import java.util.List; // (World, Actor, GreenfootImage, Greenfoot and MouseInfo)
public class Snake extends Actor
{
private int dx = 1, dy = 0;
private int points = 0;
public void act()
{
String key = Greenfoot.getKey();
if(key != null)
{
if(key.equals("up") && dy != 1)
{
dx = 0;
dy = -1;
setRotation(-90);
}
else if(key.equals("down") && dy != -1)
{
dx = 0;
dy = 1;
setRotation(90);
}
else if(key.equals("left") && dx != 1)
{
dx = -1;
dy = 0;
setRotation(180);
}
else if(key.equals("right") && dx != -1)
{
dx = 1;
dy = 0;
setRotation(0);
}
}
List objs = getObjectsAtOffset(0,0,Solid.class);
if(objs!= null && objs.size() > 0){
boolean stillThere = false;
getWorld().removeObject(this);
//System.out.println(points+" points");
Greenfoot.stop();
}
else
{
List foods = getWorld().getObjectsAt(getX(), getY(), Food.class);
if(foods != null && foods.size() > 0){
Food food = (Food)foods.get(0);
getWorld().removeObject(food);
addPoints(food.getPoints());
}
}
}
public int getPoints()
{
return points;
}
private void addPoints(int add)
{
points += add;
}
}
Finally the food class
import greenfoot.*; // (World, Actor, GreenfootImage, Greenfoot and MouseInfo)
public class Food extends Actor
{
public Food()
{
}
public void act()
{
}
public int getPoints()
{
return 1;
}
}
If you don't know what greenfoot is then http://greenfoot.org/
Again Thanks, a Reply would be great!

New Topic/Question
Reply




MultiQuote




|