-2
Я хочу игроку получить случайный предмет в Int []Random в Int []
public boolean onCommand(CommandSender sender, Command cmd, String commandLabel, String[] args) {
Player player = (Player) sender;
if(commandLabel.equalsIgnoreCase("surprise")){
Random random = new Random();
PlayerInventory inventory = player.getInventory();
int ItensIds[] = {274, 313, 314, 315, 316};
ItemStack item = new ItemStack(Material.AIR);
for(int Ids : ItensIds){
int randomNumber = random.nextInt(300);
do{
randomNumber = random.nextInt(300);
item.setTypeId(Ids);
inventory.addItem(item);
} while(randomNumber == Ids);
break;
}
}
Im пытаясь понять, как он работает, но заканчивается сбой сервера или не работает вообще.
Im действительно новый в этом коде, пожалуйста, поймите, если я сделал что-то действительно не так.
когда он падает, что является исключением? почему вы генерируете случайное число дважды? какова точка цикла 'for', так как вы его нарушаете в любом случае после первой итерации. –
. В чем смысл' do {...} while (randomNumber == Ids); '? – August
Я не очень много кодирования, если я сделал что-то действительно не так, пожалуйста, исправьте меня – BlackDereker