学校で新しいタスクを取得して、スネークゲームを最初からコーディングし、スネークヘッドが食べ物を食べるときに配列を使用して新しいスネークボディパーツを追加する必要があります。最初は、スネークに1つのヘッドと2つのボディパーツが必要です。これを行う方法を考えてください..そこにいる誰かが正しい方向に私を助けることができますか..どのように始めるのですか?これまでの私のコードは次のとおりです。
世界:
public class WorldofSnake extends World
{
/**
* Constructor for objects of class WorldofSnake.
*
*/
public WorldofSnake()
{
super(600, 400, 1);
addObject ( new Snake(),70 , 50);
addObject ( new Food(), Greenfoot.getRandomNumber(600), Greenfoot.getRandomNumber(400));
}
}
クラススネーク:
import greenfoot.*; // (World, Actor, GreenfootImage, Greenfoot and MouseInfo)
/**
* Write a description of class Snake here.
*
* @author (your name)
* @version (a version number or a date)
*/
public class Snake extends Actor
{
private int foodEaten;
public Snake()
{
foodEaten = 0;
}
public void act()
{
checkKeypress();
lookForFood();
}
public void checkKeypress()
{ if(Greenfoot.isKeyDown("left")){
setLocation(getX() - 2,(getY()));
}
if(Greenfoot.isKeyDown("right")){
setLocation(getX() + 2,(getY()));
}
if(Greenfoot.isKeyDown("up")){
setLocation(getX() ,(getY() - 2));
}
if(Greenfoot.isKeyDown("down")){
setLocation(getX() ,(getY() + 2));
}
}
public void lookForFood()
{
Actor a = getOneIntersectingObject(Food.class);
if (a !=null)
{
getWorld().removeObject(a);
getWorld().addObject ( new Food(), Greenfoot.getRandomNumber(600), Greenfoot.getRandomNumber(400));
foodEaten = foodEaten + 1;
}
}
}