본문으로 바로가기
반응형

## 게시글을 보기 전 확인 해주세요. ##

이번 게시글은 "BlockPlaceEvent"를 통한 블럭 설치 제한 플러그인을 포스팅 하겠습니다.

최종 결과물 파일 :  예제6.zip


만약, 위 결과물을 알카이브 파일로 추가를 못한다면 아래의 링크를 눌러주세요.

[Spring] 알카이브 파일 추가하기


우선 이클립스를 켜주세요.


이전 게시물을 통해 만들어둔 결과물을 바탕으로 진행을 하도록 하겠습니다.

만약, 파일이 없으신 분들은 아래의 링크를 눌러주세요.

[Minecraft]마인크래프트 개발을 위한 메이븐 프로젝트를 만들어보자.


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
     
        BukkitScheduler scheduler = Bukkit.getServer().getScheduler();
  
        scheduler.scheduleSyncRepeatingTask(thisnew Runnable() {

            public void run() {
             
                for(World world : Bukkit.getWorlds()) {
             
                    if(world.getTime() > 3000) {
                 
                        world.setTime(0);
                    }
          
                    if(world.hasStorm()) {
                
                        world.setStorm(false);
                    }
                }
            }
        
        }, 20 * 020 * 1);
cs
위 소스코드를 onEnable메소드에 넣어주세요.

소스코드를 넣은 결과 입니다.


## 소스코드 해석 ##

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
        //스케쥴 객체 선언
        BukkitScheduler scheduler = Bukkit.getServer().getScheduler();
        //this는 위체 JavaPlugin new Runnable로 인터페이스 생성
        scheduler.scheduleSyncRepeatingTask(thisnew Runnable() {
            //run 메소드 생성
            public void run() {
                //포이치문을 통해 모든 월드를 구한다.
                for(World world : Bukkit.getWorlds()) {
                    //월드의 시간이 3000초보다 많다면
                    if(world.getTime() > 3000) {
                        //월드의 시간을 0으로 지정한다.
                        world.setTime(0);
                    }
                    //월드의 날씨 변화가 있다면
                    if(world.hasStorm()) {
                        //날씨를 맑음(?)으로 바꾼다
                        world.setStorm(false);
                    }
                }
            }
            //시작 시간은 0초 반복 시간은 1초
        }, 20 * 020 * 1);
cs


## 실행 결과 ##



반응형