【问题标题】:Java remove objectsJava 移除对象
【发布时间】:2018-12-05 14:08:18
【问题描述】:

我有一个 GameScreen(20 个对象)的世界,它按预期放置所有对象。但是,当我得到 GameOver 时,我想成为一个只有背景和一些新对象(几个对象)的空白画布,但是 GameScreen 中的所有现有对象都保留了下来,我不知道如何停止它或删除它们游戏结束画面

public class GameScreen extends World
{
    public GameScreen()
    {
      super(600, 400, 1); 
      prepare();
    }

    private void prepare()
    {
      addObjects.......
    }
}


public class GameLost extends GameScreen
{  
    public GameLost()
    {
      removeObjects(GameScreen);
      prepare();
    }

    private void prepare()
    {
      addObjects...
     }

【问题讨论】:

  • 这个问题太笼统了,什么要删除,什么要保留?
  • @stephan-hogenboom 我改写了这个问题。我想删除从 GameScreen 转移到 GameOver 的对象。我只希望 GameOver 保持相同的背景,而不是任何对象。

标签: java class object greenfoot


【解决方案1】:

我很确定你不想要GameLost extends GameScreen

class GameLost {
   private Background bg;
   public void paint() {
       paint(bg);
   }
}
class GameScreen {
   private Background bg;
   private List<GameObjects>...
   public void paint() {
       paint(bg);
       gameObjects.forEach(go -> paint(go));
   }
}

这使得在没有游戏对象的情况下可以轻松地在游戏屏幕之间移动背景。

【讨论】:

    猜你喜欢
    • 2021-09-09
    • 2016-06-19
    • 2013-02-18
    • 1970-01-01
    • 2016-12-11
    • 2014-09-08
    • 1970-01-01
    • 1970-01-01
    • 2019-11-20
    相关资源
    最近更新 更多