Я работаю на простом Марио бокового скроллер, и когда я пытаюсь вызвать прокрутки() метода Объектов Scrolling, я получаю Не могу найти символ - метод прокрутку () ошибка брошенный. Пожалуйста помоги!
Вот файл SubworldНе может найти символ - метод прокрутку()
import greenfoot.*;
import java.util.ArrayList;
/**
* Write a description of class MarioWorld here.
*
* @author (your name)
* @version (a version number or a
public class MarioWorld extends World
{
ArrayList<MovingActor> moving = new ArrayList<MovingActor>();
ArrayList<Actor> things = new ArrayList<Actor>();
Message messagebox = new Message("");
/**
* Constructor for objects of class MarioWorld.
*
*/
public MarioWorld()
{
super(800, 600, 1);
for(int i = 0; i < 40; i++)
{
things.add(new GreenApple());
things.add(new Shamrock());
}
for(int i = 0; i<8;i++)
things.add(new Brick());
moving.add(new Mario());
for(int r = 0;r < things.size();r++)
{
addObject(things.get(r),Greenfoot.getRandomNumber(800),Greenfoot.getRandomNumber(600));
}
}
public void act()
{
for(int i = 0;i < things.size();i++)
{
things.get(i).scroll();
}
addObject(moving.get(0),15,300);
moving.get(0).worldact();
}
}
`
Вот один из 3-х классов прокрутки (они идентичны по названию/изображений, кроме
import greenfoot.*;
public class Shamrock extends Actor implements Scrollable
{
/**
* Act - do whatever the Shamrock wants to do. This method is called whenever
* the 'Act' or 'Run' button gets pressed in the environment.
*/
public Actor worldact()
{
scroll();
return this;
}
public void scroll()
{
int x = getX();
int y = getY();
if(x <= 0)
x = 800;
x -= 6;
setLocation(x,y);
}
}
Вот интерфейс 'SCROLLABLE'
import greenfoot.*;
public interface Scrollable
{
public void scroll();
}
Я не буду пытаться ответить, но я думаю, что вы, возможно, придется явно литые, например '((Shamrock) things.get (i)). Scroll();' –
- это актер класса tht, реализующий прокручиваемый? –