## 게시글을 보기 전 확인 해주세요. ##
완성본 파일 다운받기 : 에제2.zip
만약, 위 결과물을 알카이브 파일로 추가를 못한다면 아래의 링크를 눌러주세요.
이번에 게시글의 이벤트는 PlayerJoinEvent, PlayerQuitEvent 입니다.
PlayerJoinEvent 는 플레이어가 접속을 했을때 PlayerQuitEvent 는 플레이어가 퇴장을 했을때 실행되는 메소드 입니다.
이벤트의 디폴트값 변경법 및 이벤트 사용법에 대해서 알아봅시다.
우선 이클립스 IDE를 실행시켜주세요.
이전 게시물을 통해 만들어둔 결과물을 바탕으로 진행을 하도록 하겠습니다.
만약, 파일이 없으신 분들은 아래의 링크를 눌러주세요.
[Minecraft]마인크래프트 개발을 위한 메이븐 프로젝트를 만들어보자.
Main.java의 파일을 여시면 위와 이미지와 같은 기존의 결과물이 있습니다.
1 2 3 4 5 6 7 8 9 | @EventHandler public void PlayerJoinEvent (PlayerJoinEvent e) { } @EventHandler public void PlayerQuitEvent (PlayerQuitEvent e) { } | cs |
위의 코드를 14번쨰줄에 넣어 주세요.
위 이미지는 소스코드를 넣고 난 결과 화면 입니다.
그런뒤 @EventHandler를 작동을 하기 위해서 12번쨰줄에 아래의 코드를 삽입 해주세요.
1 | getServer().getPluginManager().registerEvents(this, this); | cs |
위 이미지는 코드를 삽입한 결과 입니다.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 | package org.alpreah.main; import org.bukkit.event.EventHandler; import org.bukkit.event.Listener; import org.bukkit.event.player.PlayerJoinEvent; import org.bukkit.event.player.PlayerQuitEvent; import org.bukkit.plugin.java.JavaPlugin; public class Main extends JavaPlugin implements Listener { public void onEnable() { getLogger().info("onEnable 메소드가 호출이 되었고 정상적으로 작동 되었습니다."); getServer().getPluginManager().registerEvents(this, this); } public void onDisable() { getLogger().info("onDisable 메소드가 호출이 되었고 정상적으로 작동 되었습니다."); } @EventHandler public void PlayerJoinEvent (PlayerJoinEvent e) { } @EventHandler public void PlayerQuitEvent (PlayerQuitEvent e) { } } | cs |
위 소스코드는 위 과정을 통해 완성된 소스코드 입니다.
참고 바랍니다.
이제, 이벤트 설정도 마무리가 되었으니 이벤트를 간단하게 사용을 하도록 하겠습니다.
위 이미지와 같이 접속을 하게 되면 위와같은 메시지가 출력이 되는데 이 메시지를 변경을 하겠습니다.
1 2 3 4 5 6 7 8 9 | @EventHandler public void PlayerJoinEvent (PlayerJoinEvent e) { //플레이어라는 자료형의 변수명을 player로 지정을 하고 이벤트를 통해 접속을 한 플레이어를 구해온다. //(Player)는 자료형을 변환해주는 역활 Player player = (Player) e.getPlayer(); //플레이어 접속가 접속을 했을때 메시리를 변경을 한다. //player.getDisplayName()플레이어의 이름을 구한다. e.setJoinMessage(player.getDisplayName() + "님이 입장을 하셨습니다."); } | cs |
위와 같은 소스를 PlayerJoinEvent 메소드에 블록에 넣어주세요.
위 소스코드를 추가한 결과값 입니다.
마인크래프트 인게임 내 실행 화면
1 2 3 4 5 | @EventHandler public void PlayerQuitEvent (PlayerQuitEvent e) { Player player = (Player) e.getPlayer(); e.setQuitMessage(player.getDisplayName() + "님이 퇴장 하셨습니다."); } | cs |
위와 같은 소스를 PlayerQuitEvent 메소드에 블록에 넣어주세요.
위 소스코드를 추가한 결과값 입니다.
서버에 퇴장하니까 필자가 확인이 불가능해서 cmd창으로 확인한것을 보여
## 서버 내에 플러그인을 적용하자 ! ##
자신이 만든 프로젝트 우클릭 하고 "EXPORT"를 눌러주세요.
검색하는 칸에 jar를 검색하고 "jar file"을 누르신뒤 Next를 눌러주세요.
"EXPORT ALL OUTPUT FOLDERS FOR CHECKED PROJECTS"를 클릭해주세요.
이제 서버를 키시고 사용 하시면 됩니다.
## 결과 영상 ##
'마인크래프트 > 플러그인 강의 (구)' 카테고리의 다른 글
[Minecraft]마인크래프트 블록 설치를 제한두자. (2) | 2018.11.30 |
---|---|
[Minecraft]마인크래프트 명령어를 통해 아이템을 지급하자! (0) | 2018.11.30 |
[Minecraft]마인크래프트 개발을 위한 메이븐 프로젝트를 만들어보자. (0) | 2018.11.30 |
[Minecraft]마인크래프트 개발환경을 구축하자 -2 (eclipse ide 설치) (0) | 2018.11.29 |
[Minecraft]마인크래프트 개발환경을 구축하자 -1 (자바 설치 및 환경변수 설정) (0) | 2018.11.29 |