마인크래프트 데미지 계산 방식 바꾸기 (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
순수의시대 책 명언 명대사 인상깊은 구절 글귀 문장순수의시대순수의 시대는 1921년...
-
경기보기 잘했다 ㅜㅜㅜㅜ
-
어싸 난이도 0
올해 어싸 난이도가 객관적으로 어느정도인가요? 어떤분이 어싸가 31번 32번급 문제...
-
의대생들이 ㅈㄴ 후려친다는 소문이 있던데 사실임?
-
강민철 생일 4
-
아 김과외도 0
의뱃 줘 왜 의대생들만 과외시켜주냐 ㅅㅂ
-
성대 추합인데 0
아직 직배 안떴는데 이거 비정상임?? 정시 추합이긴함
-
끝나면 수강신청 교육한다는데 기차표 없어서 어카지
-
공부법 알려주신다는대 어떤가요? 살까요?
-
학종의대질문 14
고의도 학종에서 내신보다 생기부를 봄? 연대 한양대 경희대 중앙대 이대 이정도가...
-
!
-
힘을 몰랐을까 싶네요 지방 한의대 갈 수 있었는데 변호사도 워라벨이 매우 안 좋은거...
-
성북구 거주하는 고3중에서 함께 공부할 스터디 메이트 찾아요!쪽지주세요
-
무슨 애플펜슬로 난타를 조지고 있음. 아니 지금 노캔 이어폰 끼고 있는데 애플펜슬로...
-
의대 가고 싶어 6
응응
-
으아파서할복할뻔 3
어제 아웃컨츠 뚫은거에 머리카락 걸려서 고통스러유ㅠ서할복할뻔함 이제 피어싱 안 해 아파ㅜㅠㅠ
-
참고.. 마감 거의 30분전에 붙으심
-
아 왜 울려요
-
수능보고나서 수능채점할때임 근데 저는 당일채점을 못하겠던데 여러분들은 채점 언제하시나요...??
-
거짓말하지 마!!!!!!!!!!!!!!!세요
-
1칸합 ㅊㅊ 0
12월부터 오늘까지 3개월의 재?수를 끝내고 합격했네요ㅋㅋ
-
벌써부터 떨어질거같다
-
약사 진짜 1
돈 욕심 없으면 좋은듯 럭키 편돌이라 놀리는데 인생 편하고 좋을듯 인식도 괜찮고...
-
합격 인증 10
성불이요~
-
가보자 새르비.
-
겜끝나면 개평주는데 입시는 예비1번 그냥 안붙여주냐..? 진짜 끝인거야..?
-
응응
-
외대 합격 1
-
삼수생 성불합니다
-
*이력 -24수능 물1 3등급 -25수능 물1 3등급
-
씨발 ㅋㅋ 아니 왜 수2만 어려움
-
Hi guys 5
생존신고 정신은 멀쩡한데 몸이 반템포 느리네 타자는 멀쩡하쥬? 오랜만에 친구만나니까 재미썽
-
ㅈㄱㄴ 4인 1조 이런 식으로 소규모 팀과외하면 얼마 받음?? 한명당 시간당 얼마..?
-
공대 기준으로.. 전공 독학할 때 노베가 봐도 도움됨?
-
삼반수 1
삼반수 하시는분들 언제부터 시작하시나요
-
언제쯤 하나요???
-
영어월간지 0
고3 이고 영어 2등급 중반정도 나오는데 월간지 어떤게 좋을까요? 메가패스 이투스 패스 있습니다
-
재수생 새벽공부 3
비추?추?고추?
-
물1+물2 0
물2 공부해본 적은 없는데요. 물1+물2 로 지원 불가능한 대학이 있나요? 그냥...
-
왜... 0
Kold 헷지용으로 산 boil이 더 오르냐구 ㅠㅠ
-
컴온..!!
-
웰컴 투 더 쇼~~
-
그게 나야 바 둠바 두비두밥~ ^^
-
다 절판이라~~ 구할수가 없네요ㅠㅠ 가지고 계신분 있으시다면 구매하고 싶어요
-
ㅠㅠㅠ
-
요새 누군가가 자꾸 경제 영업을 시도하시는 것 같습니다 13
자꾸 이러시면 저도 3일동안 물2 공부를 시작할 수밖에 없습니다..
-
의치한버리고 1
설공가는사람들 있음? 계획이 어떻게 됨??
-
그래 올해는 연애에 집중해보자!
-
한마디만 할게요 2
물2화2 파티 절찬 모집중 너만 오면 고
논문을 쓰셨네 읽기귀찮으니까 지피티한테 3줄요약시켜도 ㄱㅊ?
저 공부하려고 쓴거라 상관없읍니다. . .