2016-06-24 4 views
0

Как выбрать случайную награду из этого списка?Выбор случайного элемента из списка (Bukkit)

Material[] superLucky = { Material.RECORD_10, Material.RECORD_9, Material.RECORD_8 }; 

      for(Material m : superLucky) { 
      if(m == Material.RECORD_10) { 
       player.sendMessage(ChatColor.GRAY + "- Enchanted Skull Sword"); 
      } 
      if(m == Material.RECORD_9) { 
       player.sendMessage(ChatColor.GRAY + "- Enchanted Skull Helmet"); 
      } 
      if(m == Material.RECORD_8) { 
       player.sendMessage(ChatColor.GRAY + "- Enchanted Skull Pickaxe"); 
      } 
     } 

ответ

0

Вы бы получить случайный элемент из массива, как это:

int idx = new Random().nextInt(superLucky.length); 
Material randomItem = superLucky[idx]; 
+0

Спасибо, это работает. Я ценю это! – CameronOfoluwa

+0

Если это было полезно, подумайте о том, чтобы принять участие в голосовании или принять ответ в качестве решения :-) –

0

// создать функцию, которая генерирует случайное число

int rrec = (customRandomNumber())%superLucky.length; 

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

0

Есть несколько способов:

// Math.random() returns a double in the range of 0.0 excluding 1.0 
int index = (int)(Math.random() * superLucky.length); 

или

// Random.nextInt() returns an integer in the range of 0.0 excluding the specified number 
int index = new Random().nextInt(superLucky.length); 

затем сделать

Material item = superLucky[index]; 
Смежные вопросы