Как нажать, чтобы удалить объекты из списка массивов при обработке - PullRequest
0 голосов
/ 29 января 2019

Я пытаюсь создать игру, в которой вы нажимаете на объект, чтобы удалить его.Приведенный ниже код является тем, что у меня есть для этого раздела игры, но выдает следующую ошибку:

"Невозможно вызвать remove (int) для массива типа mouseClick.Enemy []"

Вот мой код:

void mousePressed() {
    for(int i = 0; i < enemies.length; i++){
        float distance = dist(mouseX, mouseY, enemies[i].x, enemies[i].y); 

        if(distance < enemies[i].radius + 10) {
            enemies.remove(i);
        }
    }
}

Есть ли какие-либо другие методы / функции, которые я мог бы использовать, чтобы внедрить это в свою игру?

1 Ответ

0 голосов
/ 29 января 2019

Как сказал azurefrog: функция удаления не может использоваться для массивов.Однако вы можете использовать эту функцию с arrayLists.Вы можете создать новый ArrayList следующим образом:

ArrayList<Enemy> yourList = new ArrayList<Enemy>();

Конечно, «yourList» - это просто имя, которое вы можете выбрать.Так же, как и Враг, я предполагаю, что вы используете.Если вы хотите получить объект из этого списка, вам также придется использовать

yourList.get(i); 

вместо

yourList[i];

Надеюсь, это поможет!

...