마인크래프트 데미지 계산 방식 바꾸기 (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를 선물하세요.
-
걍 소름이 쫙끼쳣음 개잘부름
-
고벳 떼겠습니다 7
고대 괘씸하거든요
-
서울 밤거릴 달리고잇어
-
힘들겠죠..? 몇점까지 붙었는지 알 수 있을까요?
-
성적표는 나오긴할텐데 흠
-
어짜피 공짜니까
-
진학사 점공으로 바로 내 앞 사람까지 추합이던데.. 6시까지 전화가 올까ㅠ...제발
-
뭐 국수영경 완성에 힘을 쓰자 저거 완성 되면 하루 5시간은 나머지탐구에 쏟을수 있을듯
-
불합격이라고 나왔는데 붙음
-
이대로 끝난다면 배치표상 '메이저 의대' 랑 같은라인에 있게됨 엌ㅋㅋㅋㅋ
-
4×연계교재≈1×시대북스..
-
물리 무서우면 산공이겠죠? 근데 일단 과만 보고 골라주세여
-
카나토미 0
카나토미는 스블 완강하고 해도 문제 없나요 ??
-
메일 보내고 반려를 너무 많이 당했는데 다들 쿨하게 수험번호 다 까고 원본으로...
-
저 남붕이에요 11
-
가군 연세 가톨릭 한양 가천 나군 서울 성균관 고려 울산 경희 아주 다군 중앙 인하...
-
오리비고기 6
-
고전소설 << 2
ㅈㄴ 암덩어린데 어카지.. 독서,현대시보다 더 빡셈
-
나도 안간힘을 쓰는중임
-
고3의 마음가짐 0
상대평가 과목 확통미적 1받기 ㅈㅂ
-
내일 전추는 1
내일은 전추는 안돌죠? 등록만 가능한 거죠? 오늘 모든 학교가 6시까지 전추 마감이죠?
-
세번째로 올리는 시대재종 무물 댓글로 물어보시면 다 알려드립니다
-
9명만 빠져주세요 ㅎㅎ..
-
진짜 알약 엄청 못 먹어서 어릴때 엄마랑 이것 땜에 싸우기도 했는데 어느날...
-
이전에 올렸던 글이 파일 수정할때마다 추가하는게 귀찮아서 드라이브 링크로...
-
입시 어렵네
-
반수생 자취 1
반수할건데 기숙사랑 자취중에 어떤게 더 나을까요?
-
그래서 차를 따로 안샀음 저희는 보험가입도 회사껄로 되어있는듯
-
나 알약 못 먹음 16
이거 어떻게 마스터 가능? 하…
-
얼버기 4
그래도 12시에 일어나서 밥 먹고 스카와서 오르비 킨 거임 암튼 얼버기라고 아 ㅋㅋㅋㅋ
-
미디어휴먼라이프 새로 합쳐져서 전년도 대비 알 수 없음 23명 뽑고 20 -> 7...
-
최종합...과연 할 수 있을까??
-
연대 기계공학과 0
전화추합 몇번까지 돌았나요? 간절합니다..
-
강대 위업 0
급식 혼밥하는 분위긴가요? 친목 하기 싫은데 친목 많다는 얘기도 들어서 버스로...
-
인설의 라인이 영어를 너무안보네 내년에 한양은 또 내신반영도 있고 차라리 국어하는게 이득인가?
-
재수끝~
-
이거 써볼라하는데 어캐 하는거?
-
풎
-
상대는 평가원이야 니 N년을 삭제시킨 평가원이야
-
중대로 슈웃
-
차가 좋아요 1
냉간 할때마다 도는 이 도파민
-
19-13-9–2였는데 6명중에 누구라도 빠져줘ㅠㅠㅠ
-
연고의 연 포지션이죠?
-
https://orbi.kr/00072083439/%EC%B9%BC%EB%9F%BC)...
-
새터가 내일이라 오늘 미리 서울에 올라가려고 하는데 혼자서 가볼만한곳 추천받아요!!...
-
ㄷㅅ 시대인재 갤분이 문의한 결과 이렇게 3명만 쓴다는데; 말이 되는건가요..?...
-
그것도모르고 기다리고있었네
-
줄여서 고추학대
-
가천 vs 경기 10
가천, 화공생명배터리 / 경기, 융합과학대학(생명과학과, 식품생물공학과) 거리는...
논문을 쓰셨네 읽기귀찮으니까 지피티한테 3줄요약시켜도 ㄱㅊ?
저 공부하려고 쓴거라 상관없읍니다. . .