我有一个叫做“ Handler”的类,里面有很多getter和setter,并且其中包含添加和删除对象的代码,如下所示:
public void addObject (GameObject object) {
this.object.add(object);
}
public void removeObject (GameObject object) {
this.object.remove(object);
}
(GameObject是一个类)
在“处理程序”中,我创建一个对象:
if(red==255 && green==255 && blue==255) addObject(new Block(xx*32,yy*24,0, ObjectId.Block));
if(red==128 && green==128 && blue==128) addObject(new Block(xx*32,yy*24,1, ObjectId.Block));
if(red==0 && green==0 && blue==255) addObject(new Player(xx*32,yy*32,this, cam, ObjectId.Player));
if(red==255 && green==216 && blue==0) addObject(new Flag(xx*32,yy*32,ObjectId.Flag));
if(red==255 && green==0 && blue==0) addObject(new Enemy(xx*32,yy*32,ObjectId.Enemy));
每个对象都有自己的类,我想在子弹(也有自己的类)碰到它时移走敌人。所以我在“子弹”类中输入以下代码:
public void tick(LinkedList<GameObject> object) {
x+=VelX;
Collision(object);
}
private void Collision(LinkedList<GameObject> objects){
for (int i=0;i<handler.object.size();i++ ){
GameObject tempObject= handler.object.get(i);
if(tempObject.getId()==ObjectId.Enemy){
}
}
}
但是我根本不明白,如果我应该在最后粘贴什么。 我已经尝试使用过:
handler.removeObject(Enemy);
但没有结果