gpt4 book ai didi

java - 如何删除 Java 游戏中的对象

转载 作者:行者123 更新时间:2023-12-01 22:18:14 24 4
gpt4 key购买 nike

我的 java 游戏中有一个对象,它将是一枚硬币,目前它只是一个用

制成的矩形
g.setColor(Color.yellow);
g.fillRect(x, y, 16, 16);

我设置了碰撞,以便在玩家触摸它时给予玩家积分,这工作得很好,但如何让它在触摸后删除自己?因为积分一直在上升。

我唯一能想到的就是重新着色,让它看起来好像不存在,但这远非同一件事。

最佳答案

您应该有一个 Rectangle 类,或者更确切地说是一个 Coin 类,例如

public class Coin {
int xPos;
int yPos;
int width;
int height;

// For giving player points
int points;

// Constructors, etc
// e.g. public int getXPos(), public int getYPos()..
}

一开始,您将拥有类似于 CoinArrayList 的内容,例如

ArrayList<Coin> coins = new ArrayList<Coin>();

在您的绘图方法中,

for (Coin c : coins) {
g.fillOval(c.getXPos(), c.getYPos(), c.getWidth(), c.getHeight());
}

当玩家与Coin碰撞时,您只需将其从ArrayList中删除即可。

为了使其更具可扩展性,您甚至可以定义一个接口(interface) Collectible,并让所有可收集的游戏内对象(例如本例中的 Coin)实现 Collection 级界面。

关于java - 如何删除 Java 游戏中的对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30553098/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com