3일동안 안보기

apo 서버

 주소apo2073.feathermc.gg

버전: 1.20.4

플러그인 강좌 2편(코틀린)

페이지 정보

profile_image
작성자 아포칼립스
댓글 2건 조회 11,729회 작성일 24-01-28 17:20

본문

 전편과 이어집니다.

스크린샷 2024-01-28 143358.png

첫 시작은 클래스를 하나 만들어줍니다.

org.(이름).(플러그인이름) 이 쓰여있는 폴더 아이코을 우클릭하고

새로만들기 > Kotlin 프로젝트를 선택해줍니다.

스크린샷 2024-01-28 143411.png

그리고 이름을 정해줍니다.

저는 Listener로 하겠습니다.

스크린샷 2024-01-28 143418.png

Listener라는 코틀린 클래스가 생기면 가장 먼저 해줘야 할 일이 있습니다.

스크린샷 2024-01-28 143434.png

이렇게 : Listener를 적어주는겁니다.

이건 플러그인이 서버에서 이벤트를 듣겠다는 말입니다.

그리고 메인 클래스로 가줍니다.

스크린샷 2024-01-28 143516.png

 그리고 onEnable에 저 문장을 써줍니다.

이건 서버에게 저 코틀린 클래스가 이벤트를 듣겠다고 전해주는 코드입니다.

이제 본격적으로 코딩을 해보겠습니다.

 

스크린샷 2024-01-28 165846.png

위 코드는 보면, fun은 클래스를 만들때 사용됩니다.
fun (클래스 이름) (e: (이벤트 이름)) {} 이렇게 해서 새로운 이벤트 클래스를 만들수 있습니다.

      
@EventHandler
fun Studyy(e:PlayerJoinEvent) {
val p=e.player
e.joinMessage="§a${p.name} §d환영합니다!"
}

(+@EventHandler를 꼭 붙이셔야합니다. 사진에서는 실수로 안붙였네요..)

val 은 변수를 선언 할때 사용됩니다. java로 치면 String, int, long같은거죠.

이제 저 플러그인을 스크린샷 2024-01-28 165856.png빌드버튼을 눌러 빌드 한뒤

(프로젝트 경로)/build/libs 로 가서 플러그인 파일을 얻을 수 있습니다.

 

플러그인 테스트를 위해

플러그인을 적용한뒤 서버에 적용한뒤 서버를 실행해줍니다.

서버에 접속하면 서버로그에

  Could not pass event PlayerJoinEvent to (플러그인이름) v1.0-SNAPSHOT

java.lang.NoClassDefFoundError: kotlin/jvm/internal/Intrinsics

라고 뜨는데요.  이 오류는 서버에서 코틀린을 못 알아 들어서 그런겁니다.

다시 인텔리 제이로 돌아가서

왼쪽 디렉토리 칸에서 reosources파일안의 plugin.yml 파일을 봐줍니다.

그리고 그곳에 

 

libraries:
- org.jetbrains.kotlin:kotlin-stdlib-jdk8:(자신이 설치한 코틀린 버전)

 을 추가해줍니다.

그리고 다시 빌드한뒤 서버에 적용시키고

서버를 리로드 시켜주면 됩니다.

스크린샷 2024-01-28 171926.png

이렇게 적용이 됩니다.

 

추천2 비추천0

댓글목록

profile_image

lime님의 댓글

lime 작성일

그러면 코틀린 말고도 다른것도 된다는 말이네요?

profile_image

아포칼립스님의 댓글의 댓글

아포칼립스 작성일

코틀린 아니면 자바만 마인크래프트 플러그인을 만들 수 있습니다.

Total 29건 1 페이지
apo 서버 목록
번호 제목 글쓴이 조회 추천 비추천 날짜
공지
아포칼립스 01-11 0 0 11459
아포칼립스 11459 0 0 01-11
공지
아포칼립스 01-11 0 0 1576
아포칼립스 1576 0 0 01-11
27
아포칼립스 10-27 0 0 190
아포칼립스 190 0 0 10-27
26
아포칼립스 10-10 0 0 397
아포칼립스 397 0 0 10-10
25
아포칼립스 10-10 0 0 385
아포칼립스 385 0 0 10-10
24
아포칼립스 06-01 0 0 940
아포칼립스 940 0 0 06-01
23
아포칼립스 05-05 1 0 4917
아포칼립스 4917 1 0 05-05
22
아포칼립스 04-23 1 0 1349
아포칼립스 1349 1 0 04-23
21
아포칼립스 03-22 0 0 1326
아포칼립스 1326 0 0 03-22
20
아포칼립스 03-21 0 0 1295
아포칼립스 1295 0 0 03-21
19
아포칼립스 03-21 0 0 1307
아포칼립스 1307 0 0 03-21
18
아포칼립스 03-21 0 0 1322
아포칼립스 1322 0 0 03-21
17
아포칼립스 03-21 0 0 1358
아포칼립스 1358 0 0 03-21
16
아포칼립스 03-19 0 0 1316
아포칼립스 1316 0 0 03-19
15
아포칼립스 02-27 0 0 1449
아포칼립스 1449 0 0 02-27

검색

회원 로그인

SNS

포인트랭킹

1 lime 3,650점
2 Jake 2,230점
3 하루 1,500점
4 지누 1,205점
5 ghoots 1,115점
6 물범 1,100점
7 WaveDEV 1,100점
8 김민준 1,100점

접속자집계

오늘
906
어제
1,304
최대
5,025
전체
433,054