마인크래프트 데미지 계산 방식 바꾸기 (1)
게시글 주소: https://orbi.kr/00072035357
마인크래프트의 데미지 계산은 아주 복잡하다.
(DA: 실제 피해, D: 들어오는 피해, A: 방어, T: 방어 강도)
여기에 인챈트까지 고려하면 정말 머리가 아프다.
나무위키 피셜 다이아풀셋은 80% 정도 데미지를 막아준다고 함.
마인크래프트의 데미지 계산을 좀 더 RPG스럽게 바꿔보자
public class CustomDamagePlugin extends JavaPlugin {
private static CustomDamagePlugin instance;
CustomDamagePlugin 클래스를 만들고 JavaPlugin을 상속받는다.
private static -> 다른 클래스에서 접근 불가능하고 한번만 생성되는
CustomDamagePlugin 자료형을 가진 instance라는 이름으로 만든다.
여기서 CustomDamagePlugin의 자료형이란건 그냥 이 클래스 자체를 말한다.
@Override
public void onEnable()
여기서 override는 부모 클래스에 이미 존재하는 메서드를 재정의할 때 쓴다.
앞에서 "CustomDamagePlugin 클래스를 만들고 JavaPlugin을 상속받는다."라고 설명했다.
마인크래프트에서 Bukkit api를 사용하는 모든 플러그인은 JavaPlugin을 상속받아야 한다.
상속이란 단어의 뜻처럼 부모가 가진걸 모두 가져오는 것이다.
즉, JavaPlugin이라는 클래스는 이미 틀이 잡혀있는 상태이다. 거기에는 당연히 onEnable()이라는 메서드 (c언어의 함수와 비슷)
가 이미 정의되어 있다. 우리는 그 함수를 다시 정의하겠다는 것이다.
onEnable()이라는 이름처럼 플러그인이 활성화 됐을 때 아래의 구문이 실행된다.
instance = this;
saveDefaultConfig();
instance는 아까 선언한 변수이다. 그리고 자료형은 이 플러그인 클래스 자체를 의미한다고 말했다. 그 자료형을 가진 변수안에 이 클래스의 인스턴스를 넣는다. 뭔가 말이 굉장히 헷갈린다. 그냥 앞으로 instance는 실행중이 이 플러그인 자체를 의미한다고 보면된다.
saveDefaultConfig()도 아까 onEnable()과 같이 JavaPlugin의 메서드이다. 자세한건 나중에 설명하겠다.
damageConfig = new DamageConfig(this);
Bukkit.getPluginManager().registerEvents(new DamageListener(damageConfig), this);
getLogger().info("CustomDamagePlugin has been enabled!");
damageConfig = new DamageConfig(this) 이 부분도 나중에 다시 설명하겠지만 config 파일을 불러오는 클래스이다.
Bukkit.getPluginManager().registerEvents(new DamageListener(damageConfig), this) 이 부분이 핵심적인 부분이다. 플러그인 매니저에서 이밴트를 등록하는데 DamageListner에 아까 불러온 Config값과 현재 실행중인 플러그인을 넣고 실행시킨다
마지막줄은 정상적으로 플러그인이 실행됐다고 서버에 로그를 띄우는 문장이다.
lck를 봐야하는 관계로 여기까지 쓰고
다음에는 DamageListener 클래스가 어떻게 구성되어 있는지 살펴보도록 하겠다.
0 XDK (+0)
유익한 글을 읽었다면 작성자에게 XDK를 선물하세요.
-
ㅋㅋ ㅋㅋㅋㅋ 왠지암? ㅋㅋ ㅋㅋ ㅋ ㅋㅋㅋ ㅋㅋ 풉 푸흐흐흐흐흫...
-
수특 문학을 끝내는데 오래 걸려도 괜찮을까요? 생노베 수준인데 수특 문학 책에서...
-
Top1 전국서바 1회 전국서바답게 빡빡한 준킬러에다가 웬만한 킬러의 수준을...
-
아님 걍 정병호만 들을까
-
역시 4칸은 안정
-
ㅜㅠㅠ
-
푼다면 공부법 좀 알려주시면 감사하겠습니다
-
동국대 붙엇어요 18
마지막 전화추합 왓다!!
-
과탐 선행은 해본적 없는데 물 화 생 지 전부 자습서+학교수업으로 따라가긴 힘들까요?
-
6시까지면 충분히 돌리고도 남을 듯요. 0명 등록 예상이니 뭐니 수험생 커뮤니티에...
-
음. 아무래도 미필 사수가 낫겠군
-
오늘 전추 받았는데 등록한다고 말햇거든요 근데 지금 3지망 합격한 대학한테 등록...
-
와 진짜 ㅈ됐다 13
-
2년 연속 공부 안하고 88이면 기본 베이스가 좋은건가요
-
ㅋㅋㅋㅋㅋㅋㅋ... 물리도 전화로 붙었는데 전자 컴공썻음 진즉 붙었네
-
동국대 전추받았는데 홈페이지에서는 불합격으로 뜨는거 맞나여? 2
전화와서 등록하겠다했는데 홈페이지로 합격자조회해보니 불합격으로 떠요 원래 이런건가요?
-
제가 2023년 12월 28일(이었나…)에 그걸 당했습니다 포만한이었나…...
-
저눈 홍대 가렵니다 붙으실분 미리 축하드립니다
-
4규,빅포텐 시즌1중에 어떤게 더 어렵나요?
-
시발... 3떨이 코앞이라니. 추합권이라며 개새끼들.
-
심심 0
공부하기싫어ㅓ어억
-
수정)실모딸해도 됩니다 16
-
외대 질문 받아요 3 18
어문(영중일독불서노) / 경제 이중 전공학점 4.4x 동아리 몇 개 해봄 대학영어,...
-
맞춘거 다시푸는게 더 힘들다.. 애매하게 푼것들 곧바로 피드백해야되든데 그냥 풀고...
-
아 제발 0
예비3번인데 전화좀 줘라 진짜
-
혼자 독서실에서 책보는 게 간지나보여서 남들 다 축구 농구할때 혼자 안끼고 독서실로...
-
ㅠㅠ
-
그냥 풍차였음
-
방금 전화 받았네요 등록 포기 바로 했으니까 다음 분 축하드려요!!
-
a랑 b랑 충돌한다 쳣을때 a의 시점에선 a는 정지해잇다 b가 속력 v로...
-
학교 이름 풀네임으로 안 치고 앞에 두 글자 정도만 검색하면 종합대학보다 전문대관련...
-
칼럼도 잘 써줌
-
초인적이네
-
아니 인하대 기계 제발 8분만 좀 빠져주세요 ㅠㅠ 다른 대학 합격하셨다면 빨리...
-
로블록스할사람 6
로블록스할사람?로블록스 로블록스할사람
-
경희 vs 외대 5
둘다 낮은과라.. 경희는 관광쪽이거 외대는 메이저어문 이건 취향차이일까요
-
한시간전에 전화오ㅑㅆ어요ㅠㅠ
-
정시 마감 2
오늘 6시가 끝임묘?
-
무난히 뚫고 지나가네요
-
실모딸 상관없음 1
호머식도 별로 상관없다고봄 그게 진짜 자기점수가 아니라는것만 잘 인지하면...
-
재종 질문있음 0
평일에 재종수업 복습하고(컨풀면서), 주말에 인강 필요한거만 몰아듣기 아니면 주말에...
-
어떻게 해야할까요
-
등록 포기함뇨
-
와 이걸 진짜 이 운영으로 해내냐 미치겠다ㅋㅋ 476등분도 추합이라곤 하는데...
-
안녕하세요 방학이 거의 다 가서 쌍사 시작하게 된 고3 노베 현역인데요 이다지쌤...
-
실모딸 진짜 하지마세요 28
전 저거하다가 망함
-
ㅈㄱㄴ
-
시청앞에서 포퀘리아 컬럼나리스 팔고 오하누 가서 야생 윈저리 데려오고 카페빈둥 가서...
-
그 내용이 ㅈㄴ 괴랄했던 게 학점 기준 이하로 빠가나면 등록금 추가 입금조치 학고...
논문을 쓰셨네 읽기귀찮으니까 지피티한테 3줄요약시켜도 ㄱㅊ?
저 공부하려고 쓴거라 상관없읍니다. . .