마인크래프트 데미지 계산 방식 바꾸기 (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를 선물하세요.
-
많이 어려움?
-
?? 일단 올해는 해볼라고 나올지도 모르니까
-
연대 합격까지 남은 날짜
-
3월 되기 전까지 뭘 하는게 좋을까 흠...
-
수학 백분위 80-85 왔다갔다하는 수준이 들을만한 쌤 추천해주세요. 수1 :...
-
구라가아니라진짜adhd걸린건가 아니면 난독증인가 내가글자를쳐다보고있는데...
-
대본도 거의 없는 상테에서 겨우겨우 하느라 죽는줄... 으아아아 여름에 꼭 전출각이다
-
올해는 진짜 안된다..
-
롤 킬때마다 버벅거리면서 수락창 뜰때 푸쾅~ 소리 나는데 수락창은 1초뒤에...
-
연컴 핵 빵 4
올해도 예측 성 공 ㅎ ㅎ
-
강남대성 선생님 변경 내일 학원 가면 바로 가능한가요
-
수특 수1 풀고 있는 현역인데 레벨 3이 수능 기준 어느정도 난이도인지 궁금합니다....
-
경제 세력이다 0
조심해라 6 9월에 개미털기 들어간다
-
나 정법 6
6모 3 9모 2 수능 1 찍음 칭찬해죠~~~뇨뇨뇨
-
강사로 가나요??
-
피곤하지?
-
댓글에 ssg 언급이 더 많아 올해는 ssg를 응원 하겠습니다 SSG 삼성 두산...
-
밥을먹고 3
이를닦고
-
개때잡
-
경영과 경제 6
어디를 추천하시나요?? 잘 몰라서 질문드립니다
-
개인적인 명가사 0
(의역 多) 「어때 지금까지 반평생의 현 평가는? 소망, 이상 조금이라도 이뤘니?」...
-
근데 나만 5
오르비에서보다 찐친들 단톡방에서 더 ㅈㄹ하나? 난 모르겠네~~
-
한심한 나 0
두심한 나 고두심
-
다른 과목 듣다보면 오지훈의 친절하고 내가 ㅂㅅ임을 가정하고 찍는 강의가 그리워짐
-
국어빼고요
-
분명 내가알기로 사1과1로도 충분한데 옆에서 사문하면 못간다는 소리 하고 앉아서
-
안녕하세요, 동의대학교 한의과대학 제39대 윤슬 예과 학생회입니다. 저는 현재...
-
큰일입니다.
-
혜자과목이라 1타는 따로 없음???
-
그정도 지능이어야 함
-
김현우T 공통 3
좋아요? 미적은 엄청 좋던데
-
많은가
-
변태임
-
랄로 방송보는데 1
챗지피티가 롤 솔랭 챌보다 정시의대가 더 어렵다네요
-
미기확 2
심심
-
사람이 도비처럼 생겨서 호감임 수학풀어주는 집요정같음 BtK는 다들 꽤 듣는거같던데
-
똥싸고싶다 0
똥
-
살려주세요 1
조별딱은 싫어요!!!다메데스요!!!
-
고등학교 2년 내내 ㅈ반고때메 공부도 못하다가 이제야 공부라는걸 해서 미래가...
-
이번에 수시최저용으로 공부 거의 안하고 망...했는데 수도권 하위권에 추가합격...
-
과탐 노베가 과탐 생명1,지구1 개념기출 3개월동안 했으면 몇등급이에요? 11
3개월동안 과탐만 햇다면요
-
작수는 낮2받았고 작수 끝나고서는 대가리 깨지는 n제가 의미있다고 생각해서...
-
반배정같은것도 안알랴주고 걍 선택과목 맞게 교과서받고 싸인하고 가라함 ㅅㅂ.......
-
방귀끼고싶다 0
뿡
-
이기상 커리 0
이기상 커리 타긴 할건데 굳이 안들어도 된다 싶은 커리 잇나요?
-
소...솔직히 4
경제 웨 함?(진짜 모름)
-
공부도잘하고커뮤도잘하는데 인생도 일찍 폇네
-
검정고시 서울대 1
서울대때매 검고 만점받아야하는데 검정고시 재응시할 때 이미 100점인 건...
논문을 쓰셨네 읽기귀찮으니까 지피티한테 3줄요약시켜도 ㄱㅊ?
저 공부하려고 쓴거라 상관없읍니다. . .