Не могу понять, для каждой комнаты это типо если выполнится первое условие, где будет всего одна комната, которую мы и будем вертеть во всех остальных методах и main?
Можете дать подсказки по реализации вот этих пунктов:
1. Метод checkPirates должен возвращать true, если при сканировании в комнате обнаружены объекты которые отсутствуют в памяти ИИ.
2. В методе main нужно вызвать метод checkPirates для каждой комнаты корабля.
3. В методе main нужно вызвать метод openFloodgates для тех комнат у которых метод checkPirates вернул true.
package com.javarush.task.pro.task09.task0920;
import java.util.Random;
public class RoomScanner {
private static final Random random = new Random();
private static final String[] pirates = {"pirate", "yunga", "kok", "skipper", "bosun", "parrot"};
public static String[] scanRoom(String roomName) {
System.out.printf("Сканируется %s...\n", roomName);
String[] room = NimrodAi.getRoomByName(roomName);
if (room == null || random.nextBoolean()) {
return room;
}
int itemsToRemoveNumber = room.length % (random.nextInt(3) + 1);
int piratesNumber = random.nextInt(4);
int resultSize = room.length - itemsToRemoveNumber + piratesNumber;
String[] result = new String[resultSize];
System.arraycopy(room, 0, result, 0, room.length - itemsToRemoveNumber);
for (int i = 0; i < piratesNumber; i++) {
result[resultSize - 1 - i] = pirates[random.nextInt(pirates.length)];
}
return result;
}
}