반응형
## 게시글을 보기 전 확인 해주세요. ##
이번 게시글은 "BlockPlaceEvent"를 통한 블럭 설치 제한 플러그인을 포스팅 하겠습니다.
최종 결과물 파일 : 예제5.zip
만약, 위 결과물을 알카이브 파일로 추가를 못한다면 아래의 링크를 눌러주세요.
우선 이클립스를 켜주세요.
이전 게시물을 통해 만들어둔 결과물을 바탕으로 진행을 하도록 하겠습니다.
만약, 파일이 없으신 분들은 아래의 링크를 눌러주세요.
[Minecraft]마인크래프트 개발을 위한 메이븐 프로젝트를 만들어보자.
위 소스코드를 Main.java에 넣어주세요.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | @SuppressWarnings("deprecation") @EventHandler public void CraftItemEvent(CraftItemEvent e) { Player player = (Player) e.getWhoClicked(); int Ban_Item_Code[] = {58}; for(int i : Ban_Item_Code) { if(e.getRecipe().getResult().getType().getId() == i) { player.sendMessage(e.getRecipe().getResult().getType() + "아이템은 제작이 불가능 합니다."); e.setCancelled(true); } } } | cs |
위 소스코드를 삽입한 결과 입니다.
## 아래는 소스코드에 대한 해석 입니다. ##
cs |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | @SuppressWarnings("deprecation") @EventHandler public void CraftItemEvent(CraftItemEvent e) { //이벤트를 통해 player 변수에 플레이어를 담는다. Player player = (Player) e.getWhoClicked(); //자신이 금지하고 싶은 아이템 코드를 배열에 담아준다. int Ban_Item_Code[] = {58}; //포이치문을 통해 폴문을 돌려준다. for(int i : Ban_Item_Code) { //제작된 아이템의 아이디를 구한뒤 i와 대조 if(e.getRecipe().getResult().getType().getId() == i) { player.sendMessage(e.getRecipe().getResult().getType() + "아이템은 제작이 불가능 합니다."); //해당하는 이벤트를 취소시킨다. e.setCancelled(true); } } } | cs |
## 실행 결과 ##
반응형
'마인크래프트 > 플러그인 강의 (구)' 카테고리의 다른 글
[Minecraft] 마인크래프트 데이터베이스 연동하기 (3) | 2018.12.03 |
---|---|
[Minecraft]마인크래프트 타이머를 사용해 시간과 날씨를 관리하자! (0) | 2018.11.30 |
[Minecraft]마인크래프트 블록 설치를 제한두자. (2) | 2018.11.30 |
[Minecraft]마인크래프트 명령어를 통해 아이템을 지급하자! (0) | 2018.11.30 |
[Minecraft]마인크래프트 이벤트를 사용해보자! (1) | 2018.11.30 |