2016-06-24 3 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]; 
관련 문제