마인크래프트 데미지 계산 방식 바꾸기 (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를 선물하세요.
-
ㅇㅂㄱ 1
-
졸리네 0
자야지
-
수특보다가눈물이 다 나네 왜 이렇게까지 해야되지 몇달동안 숙제 제대로 해간적도 없고...
-
기차지나간당 2
부지런행
-
초특급 얼버기 0
-
읽을지 안 읽을지 알수없지만 오르비에선 제가 답변 드릴 수 있는 몇 안 되는...
-
이 중에 ‘그나마’ 표점이 괜찮은 것은? 즉 매 시험마다 표점이 조금씩 다르고...
-
달달박박장난하나
-
재수고뭐고 그만두고싶다 내가왜이렇개살아야돼
-
있나여 갑자기 평가바ㅡ고싶음 ㅋ,,
-
서울대를다녔음 0
한 3일?
-
수특이나 나나 0
둘중하나 4시간내로 창문을통해 밖에나간다 시발 네시간남았어 잠안자도 네시간이야 시발시발시발
-
진짜싫어 국어 0
책찢고 창문밖으로 다 던져버리고싶다
-
배고프군아 2
밤만 되면 커비모드가됨
-
숙제 하기싫어서 지금까지 미룸 국어 죽어 넌 최악의과목이야
-
테슬라드디어탈출씨발 아돈깊어뻑 인생머있노공부하고섹스하고대학가고섹스하고
-
이제 진짜 자야지
-
ㅅㅂ 1
잠안와
-
이제 자료 제작 다 하고 자려고 하는데 천둥 때문에 잠이 오지 않네요. 여러분들이...
-
야동 많이보면 2
지능 낮아진다던데 ㅇㄱㅈㅉㅇㅇ???
-
로맨스면 더욱
-
의대에서 반수해서 11
성공하는사람 얼마나될까요
-
약사의 미래 2
https://youtu.be/UxVQBotDB28 진짜 이분 영상 예전부어 봤지만...
-
외롭다
-
과탐 사탐 고민중인데 7모때 생명3 지구6(아직 개념 한바퀴도 못돌림)뜸 목표는...
-
학교가기싫다 8
귀찮다..
-
저런느낌의 문제 많이잇는 n제 ㅊㅊ해주세여 선택은 아직안풀엇어요 허수라ㅜ
-
감정 1
정식쌤이 작년에 하신 말씀 중에 "감정은 사라지고 결과만 남아요."라는 말이 있다....
-
딱밤으로 파리 죽여봄
-
시간대는 좋은데 교수님 강의평이 그닥인 과목 (ㅍㅎㅌㅊ?) vs 교수님 강의평은...
-
가격대 어느정도까지 해야하나..
-
벌써 3시네 18
오우
-
찬우쌤 말이 맞다. 본인답게 사는 거, 본인한테 맞는 길만 걷는 것만으로도 힘들다는...
-
오늘도 번개치네 1
어제도 그러더니 오늘도 번쩍번쩍하는군
-
전 생활패턴 망했네여
-
마라탕에 들어가는 푸주?처럼 생김 아님 짧탱한 츄러스
-
오공완 4
학교 다녀와서 얼마 못했네요.. 내일부터 전력
-
$WAGMI 0
We're All Gonna Make It
-
의대생들 흔히들 하는말이 정부가 자기들한테 뭘 해줬냐 인데 솔직히 경제규모 비슷한...
-
인생 ㅅㅂ 4
맛있는 독약 캡슐 있었으면 바로 먹었다
-
통계학과나 자연계열 상향으로 써볼만 한가요
-
원룸에 혼자 잇는데 천둥번개 치니까 야악간 엄마 보고 싶어짐
-
소설책 개꿀잼
-
룸메 코골이랑 천둥이랑 구분 안가는게 진짜 무서워....
-
안 자는 사람?
-
머지다노 지금시간대면 활발했었는데
-
12명이 이렇게나 안모이네
-
아기현 진짜.. 0
본인 원래 정승제쌤 강의 듣고 있었는데 뭔가 정리가 안되는 느낌이라 기현쌤으로...
-
안녕하세요 과중학교 과중반에 다니고 있는 고3입니다. 이제 슬슬 대학 어디갈지를...
논문을 쓰셨네 읽기귀찮으니까 지피티한테 3줄요약시켜도 ㄱㅊ?
저 공부하려고 쓴거라 상관없읍니다. . .