3일동안 안보기

apo 서버

 주소apo2073.feathermc.gg

버전: 1.20.4

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

페이지 정보

profile_image
작성자 아포칼립스
댓글 2건 조회 12,514회 작성일 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 141건 9 페이지
apo 서버 목록
번호 제목 글쓴이 조회 추천 비추천 날짜
21
아포칼립스 03-22 0 0 1435
아포칼립스 1435 0 0 03-22
20
아포칼립스 03-21 0 0 1397
아포칼립스 1397 0 0 03-21
19
아포칼립스 03-21 0 0 1399
아포칼립스 1399 0 0 03-21
18
아포칼립스 03-21 0 0 1411
아포칼립스 1411 0 0 03-21
17
아포칼립스 03-21 0 0 1449
아포칼립스 1449 0 0 03-21
16
아포칼립스 03-19 0 0 1401
아포칼립스 1401 0 0 03-19
15
아포칼립스 02-27 0 0 1567
아포칼립스 1567 0 0 02-27
14
아포칼립스 02-27 0 0 1613
아포칼립스 1613 0 0 02-27
13
아포칼립스 02-18 0 0 1580
아포칼립스 1580 0 0 02-18
12
아포칼립스 02-18 0 0 1605
아포칼립스 1605 0 0 02-18
11
아포칼립스 02-16 0 0 1543
아포칼립스 1543 0 0 02-16
10
아포칼립스 02-03 1 0 1970
아포칼립스 1970 1 0 02-03
열람중
아포칼립스 01-28 2 0 12515
아포칼립스 12515 2 0 01-28
8
아포칼립스 01-28 2 0 8779
아포칼립스 8779 2 0 01-28
7
아포칼립스 01-13 3 0 10033
아포칼립스 10033 3 0 01-13

검색

회원 로그인

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점

접속자집계

오늘
1,499
어제
1,906
최대
5,025
전체
448,788