마인크래프트 데미지 계산 방식 바꾸기 (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를 선물하세요.
-
그래야할텐데.. 선택권이 없엇서요..
-
가입하자마자 팔로우 한 걸 다들 지금 보나보네요.
-
이제 내 적금은 0
인버스다
-
실시간 옯붕이 엄마 앞에서 노래부르고 보컬트레이닝 받는중 5
엄마가 노래 못부른다고 극딜하네
-
수학 공부량 줄여서 3만 확보해두고, 국영탐 1 노리려는데요 ~3월 : 공통 뉴분감...
-
??? 2
-
미칠거가태 4
내일도 10시출근이야 으악
-
반갑습니다. 2
-
본인의 목표가 SKY거나, 혹은 사탐 고정 1등급이 목표거나, 주식을 1년 이상...
-
서울과고?하나고?민사고?한과영?휘문고?좀비고?
-
강의가 그냥 ㅈㄴ 재밌음 특히 지문설명하다가 00이란 학자가 이런 말을 했죠 하면서...
-
재수생 고민 0
대치에서 단과다니면서 독서실 다니기 아마 단과는 러셀단과 기현쌤이랑 최적쌤 듣고...
-
국 수 높 3이면 경외시 간다는 글이 많이 보이는데ㅠㅠ 제가 이번에 국 수 77...
-
어떻게사람이 F5를 진성으로 올리지 원래 프로세카 별생각없이했는데 이런노래를 왜...
-
지역인재는 사라지지는 않을꺼고 경기도 사는 입장에서는 의대 뚫기가 더...
-
ㅇㅇ
-
오르비 docs pdf 제본 2권 끝 인강교재는 제본한번도 안함
-
입시 안하니까 3
피부 개좋아지네 ㄹㅇ 스트레스가 만악의 근원인가봐
-
...아니지 옯붕아...?
-
어차피 밀릴거 직감했어서 스블 살때부터 작년 n제 쌓아두고 처리하는중이라 ㅋㅋㅋㅋ...
-
강대기숙 0
강대기숙에서 유빈아카이브 파일 못뽑아서씀????????????? 교재 다 구매해야하는건가요????
-
이왜진
-
사실 작년에 재수하면서 성격 INFJ에서 ENFP로 바꼈는데 질의응답 들어가서...
-
동아리 다시 공장 온이니까 ㄱㄱ
-
여기까지 국어공부조차 하기 벅차면 그날은 거기까지라는거임
-
물리는 수업때 자습 수행평가 지필평가 있는 날만 안씼으면 될 거같고 생2는 그냥...
-
아니 우리랑 스크림 했다고 알려진 팀들은 다 왜 그래?
-
도함수 3
어케 이런걸 생각햇지 나같은 범부는 오백년을 살아도 생각 모달거 같은데
-
윽건 신격화는 4
할 말이 없다 그냥 강의가 나쁘다는 아니지만 억까 좀 나왔다고 억빠가 넘치는 건ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ
-
음…………… 넘비싸
-
공부습관 잡기가 쉽지는 않네 가끔씩 취미로 일본어 공부만 하다가 요새 본격적으로 공부 시작함
-
오사카나 도쿄 같은 데는 진짜 한국인들밖에 없음? 일본 현지 느낌 느끼고 싶으면...
-
지금은 2025 설맞이 풀고이ㅛ는데 거의 다 풀었음 공통은 지인선n제 풀거임뇨
-
수1 문제 풀때 덧셈정리 같은거 써도 됨?
-
강민철 강은양 국어 강기원 수학 강준호 화1화2 설의는 동일 12과목이슈로 ㅂㄱㄴ
-
일단 작수 수능 오늘 다시 풀어봤는데 3점은 다 풀리고 9,10,11번까지는...
-
개추~개형추론
-
촌동네 특 4
동네에 맥날 이런 거 없고 중경외시 낮과도 플래카드 걸리고 서울대 가면 동네에서...
-
이름 개멋있노
-
5분마다 조회수 100개가늘어...
-
가까운 맥도날드가 1시간이상걸려야 깡촌이란다..
-
연고티비에 옛날에 나온분 중에 닮은거 같은데 누구였지?
-
입시커뮤인척하네 갑자기
-
그냥 커뮤에서 강사갖고 저울질 할 시간에 메가패스 딱 끊어서 국수영 각각 강민철...
-
뉴런 아이디어 0
현제 미적 쎈발점 끝내고 뉴런이나 아이디어 할까 고민인데 뭘할까요ㅜㅜ 공통 뉴런은...
-
학생설계전공 하고 싶음 철학이랑 국문학이랑 심리학이랑 미학 다 배워보고 싶음 7수를...
-
뉴런이 좋든 나쁘든 13
요즘은 그냥 고2때 끝내고 올라오는 바이블 느낌
-
오늘도 안 마시면 사흘째 진짜 절주해야지. 일주일에 한 번만 마실 거임
-
2타 다시 뺏자잉 너무 좋다 미적분
-
아니 한살 더 먹엇다고 17
잼민이들한테 늙은이 취급 당하네 맞아 그래서 요즘 힘이 없구나 늙어버린거야 이럴수가..
논문을 쓰셨네 읽기귀찮으니까 지피티한테 3줄요약시켜도 ㄱㅊ?
저 공부하려고 쓴거라 상관없읍니다. . .