2016-06-24 7 views
0

Wie würde ich eine zufällige Belohnung aus dieser Liste auswählen?Zufallsartikel aus der Liste auswählen (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"); 
      } 
     } 

Antwort

0

Sie würden ein zufälliges Element aus dem Array wie folgt erhalten:

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

Dank, das funktioniert. Ich schätze es! – CameronOfoluwa

+0

Wenn das hilfreich war, bitte überabwägen oder die Antwort als Lösung akzeptieren :-) –

0

// Ihre Funktion erstellen, die Zufallszahl erzeugen

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

Verwendung diesen Index aus Zufall Belohnung zu erhalten . Hinweis: Sie können die gleiche Belohnung immer wieder als zufällig erhalten.

0

Es gibt mehrere Möglichkeiten:

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

oder

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

dann tun

Material item = superLucky[index];