마인크래프트 데미지 계산 방식 바꾸기 (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
수학 기출 책 추천 받습니다 강의든 시중 책이든 상관 업슴
-
난 가렸지롱
-
23수능 백분위 2
78 71 2 92 76 이었는데 이거 갈 수 있는 대학 라인이 어느정도였나요
-
국어 시간에 코피 콸콸 터진 건에 대하여
-
지방메디컬 가시는분들 13
명문대 애들이 서울라이프 즐기는 거 보면 현타 안오나요 전 좀 오네요...
-
풀떼기 ㅇㅈ 0
-
07년생 마지막 기말 수학 5후반 떴는데 미적분 선택했습니다. 호되게 혼나겠습니다....
-
일주일만 한과목 찍먹해보고 작수 풀어보고싶은데
-
25점 광탈 (4등급)
-
본인이 취업을 중시하는지 위치를 중요시하는지 고시를 중요시하는지 등등 에따라 본인...
-
누가더 저능함?
-
아이고 7
왜 장바구니에 안담기는거지 머리아프네
-
김정은 "남조선 헌재, 반미세력 장악 지원해야… 중국동포 적극이용 검토하라" 2015년 지령이었다 2
김정은은 그냥 천재다 2014년 12월 통합진보당이 헌법재판소에서 위헌정당으로...
-
이 시험이 내 인생을 바꾼다라는 접근보다는 시발 이거 틀리면 쪽팔리지 않냐/ 이거...
-
강대 스투 6야 0
92 96 1 94 97 인문인데 반수반 들어갈수 있나요ㅠㅠ?? 정규시즌엔 k반이던데ㅠ
-
조선시대 신분제와 양반 미생물학 입문 흥미로운 생리학 일반화학1 먹거리산업...
-
오늘의 상식 2
항문주름은 100개가 넘는다
-
ㅇㅈ 9
장발 전
-
이영수 파운데이션 7만원이나 하길래 e북으로 사려는데 뭐 안되네요 이거 종이책...
-
끼얏호우!!!!! 은행에 카드 신청한거 찾으러가야해서 하루는 무조건 늦게갔어야했는데 그게 내일임
-
ㅋㅋ
-
이유가 뭐임요? 말만으로도 충분해서? 귀찮아서?
-
근데 원래 1
수능 끝나면 바보가 되나요? 심지어 난 수능 끝난지 한참 됐는데 아직도 바보야...
-
솔직히 답변 내가 봐도 잘하는듯
-
(서울대 합격 / 합격자인증)(스누라이프) 서울대 25학번을 찾습니다. 0
안녕하세요. 서울대 커뮤니티 SNULife 오픈챗 준비팀입니다. 서울대 25학번...
-
큐브특 0
내 문제 첫번째로 가져간 사람이 거의 대부분 같은 사람임 근데 그분은 항상 내 문제...
-
기분좃가타짐.. 3
갑자기 우울 ㅠㅠ
-
날마다 돌아오는 8
질문 타임
-
사문 작수 1 1
사문 작수 1떴는데 하나도 기억 안나는데 개념강의는 듣기 싫은데 뭐부터 하면...
-
"몇점 나오는지 보고 실믈리에짓 해야겠노" 이 마인드로 쳐야지 뭔가 시험보다는...
-
탈북민 강제북송, 두 눈은 안대로 가려졌고 두 팔은 포승줄로 묶여있었다 3
http://www.newsagora.co.kr/news/articleView.htm...
-
커뮤는 하면 할 수록 병신되는 거 같네
-
나도 못푸는 주제에 누굴가르쳐
-
내일 가고만다
-
공부 잘하는건가요
-
날마다 오는 무물보 24
없으면 원신하러 갈게요
-
누가 더 잘한다고 보심?
-
30번 공도 오답률 100%
-
아
-
사문 노베 이제 시작하려는데 불후의 명강 개념완성이랑 명불허전 기출분석 다 사야되나요?
-
지1 필수 문제집 점 알려주세염
-
작년 주간지 0
올해 박선쌤 커리 쭉 탈 생각인데 현강을 못가서 그런데 올해 주간지는 딱히 못구할거...
-
무물보 19
선넘도 이해해줌
-
ㅈㄱㄴ
-
재종life 시작한지 얼마 안됐는데 벌써부터 예민해지네 8
마스터이 W 켜야겠다
-
문해전 시즌1 1
난이도 어느정도인가여?? 입문n제로는 너무 어렵나
논문을 쓰셨네 읽기귀찮으니까 지피티한테 3줄요약시켜도 ㄱㅊ?
저 공부하려고 쓴거라 상관없읍니다. . .