무궁화꽃이 피었습니다를 개발하고싶은데
랜덤시간으로 텍스트를 하나씩 나오게하려고합니다
랜덤시간을 어떻게 다뤄야할지 감이안와서 질문합니다 ㅠㅠ
자바에서 난수를 생성하는 방법은 두가지가 있어요.
첫번째, Math.random() 함수를 이용하는것. Math.random() 함수는 0.0에서 1.0 중 랜덤한 한 값을 가져와요. 이 값을 받아와서 곱하고 더하고 해서 원하는 범위의 난수를 얻을 수 있어요.
이 방식으로 최솟값에서 최댓값 사이의 난수를 얻으려면,
int rand = (int) ((Math.random() * (최댓값 - 최솟값)) + 최솟값 );
이렇게 하시면 돼요.
두번째, Random 클래스를 이용하는것. Random 클래스는 new Random()으로 바로 사용할 수 있고, 변수로 저장해 놓았다가 random.nextInt(최댓값) 같은 방식으로 랜덤 값을 가져올 수 있어요.
Random random = new Random();
int rand = random.nextInt(최댓값 + 1 - 최솟값 ) + 최솟값
난수를 생성한 뒤, 일정 기간동안 기다리는건 runTaskLater를 이용하면 돼요.
Bukkit.getScheduler().runTaskLater(JavaPlugin.getPlugin(메인클래스.class), () -> {
실행하게 할 구문들
}, 기다릴 시간);
주의할점은, 기다릴 시간은 0.05초를 기준으로 해요. 즉 저기에 20을 쓰면 1초가 되는거에요.
해결했습니다 감사합니다 !
레드스톤
노트블럭전문가
2024-04-18
0
2024-04-12
2024-04-11
1
2024-04-10
Sonttukk
2024-04-09
4
서재형
2021.10.05자바에서 난수를 생성하는 방법은 두가지가 있어요.
첫번째, Math.random() 함수를 이용하는것. Math.random() 함수는 0.0에서 1.0 중 랜덤한 한 값을 가져와요. 이 값을 받아와서 곱하고 더하고 해서 원하는 범위의 난수를 얻을 수 있어요.
이 방식으로 최솟값에서 최댓값 사이의 난수를 얻으려면,
int rand = (int) ((Math.random() * (최댓값 - 최솟값)) + 최솟값 );
이렇게 하시면 돼요.
두번째, Random 클래스를 이용하는것. Random 클래스는 new Random()으로 바로 사용할 수 있고, 변수로 저장해 놓았다가 random.nextInt(최댓값) 같은 방식으로 랜덤 값을 가져올 수 있어요.
이 방식으로 최솟값에서 최댓값 사이의 난수를 얻으려면,
Random random = new Random();
int rand = random.nextInt(최댓값 + 1 - 최솟값 ) + 최솟값
이렇게 하시면 돼요.
난수를 생성한 뒤, 일정 기간동안 기다리는건 runTaskLater를 이용하면 돼요.
Bukkit.getScheduler().runTaskLater(JavaPlugin.getPlugin(메인클래스.class), () -> {
실행하게 할 구문들
}, 기다릴 시간);
주의할점은, 기다릴 시간은 0.05초를 기준으로 해요. 즉 저기에 20을 쓰면 1초가 되는거에요.
차치치
2021.10.05해결했습니다 감사합니다 !