1.63 빛나팩 광도에 무한 용기 적용
컨텐츠 정보
- 505 조회
- 3 댓글
-
목록
본문
일단 저는 플밍 문외한이구요.
이동용 광전사의 도끼 착용시 무한용기까지 적용하고 싶어서
잼민아이, 클로드 4.6??무료버전 갈궈서 내뱉어준 코드인데
정상 작동할지 몰라서요..
기존 기능: db item_setoption 테이블 광도에 용기 효과 적용시, 용기 물약 막은것처럼 딱 한번만 적용 되고 두번다시 용기효과가 발동하지 않음.
원하는 기능: 광전사의 도끼 착용시 무한 용기까지 적용.
ItemInstance.java 파일 514줄 516줄
public void setEquipped(boolean equipped) {
this.equipped = equipped;
}
요 사이에 이 아래 코드 적용하고 컴파일 하면 된다고 하는데 정상작동여부나 지적사항 있으면 알려주시면 감사..
public void setEquipped(boolean equipped) {
this.equipped = equipped;
// 1. 아이템 정보와 착용 캐릭터(this.cha)가 존재하는지 확인
if (getItem() != null && this.cha != null) {
// 세트 옵션 정보 조회
lineage.bean.database.ItemSetoption setoption = lineage.database.ItemSetoptionDatabase.find(getItem().getSetId());
if (setoption != null) {
if (this.equipped) {
// [장착 시]
// 1. 헤이스트 처리 (43번)
if (setoption.isHaste()) {
lineage.bean.database.Skill s = lineage.database.SkillDatabase.find(43);
if (s != null) {
BuffController.append(this.cha, lineage.world.object.magic.Haste.clone(BuffController.getPool(lineage.world.object.magic.Haste.class), s, -1, false));
}
}
// 2. 용기 처리 (201번) - 무한(-1)
if (setoption.isBrave()) {
lineage.bean.database.Skill s = lineage.database.SkillDatabase.find(201);
if (s != null) {
BuffController.append(this.cha, lineage.world.object.magic.GreaterHaste.clone(BuffController.getPool(lineage.world.object.magic.GreaterHaste.class), s, -1, false));
// 용기는 속도 2단계로 강제 갱신 필요 (BuffController 내부 로직이 약할 경우 대비)
this.cha.setSpeed(2);
}
}
} else {
// [해제 시]
// 1. 헤이스트 제거
if (setoption.isHaste()) {
BuffController.remove(this.cha, lineage.world.object.magic.Haste.class);
}
// 2. 용기 제거
if (setoption.isBrave()) {
BuffController.remove(this.cha, lineage.world.object.magic.GreaterHaste.class);
// 클로드의 지적대로 setSpeed(0)은 삭제!
// BuffController가 다른 버프 유무를 판단해 알아서 속도를 재조정하도록 맡깁니다.
}
}
}
}
}
이동용 광전사의 도끼 착용시 무한용기까지 적용하고 싶어서
잼민아이, 클로드 4.6??무료버전 갈궈서 내뱉어준 코드인데
정상 작동할지 몰라서요..
기존 기능: db item_setoption 테이블 광도에 용기 효과 적용시, 용기 물약 막은것처럼 딱 한번만 적용 되고 두번다시 용기효과가 발동하지 않음.
원하는 기능: 광전사의 도끼 착용시 무한 용기까지 적용.
ItemInstance.java 파일 514줄 516줄
public void setEquipped(boolean equipped) {
this.equipped = equipped;
}
요 사이에 이 아래 코드 적용하고 컴파일 하면 된다고 하는데 정상작동여부나 지적사항 있으면 알려주시면 감사..
public void setEquipped(boolean equipped) {
this.equipped = equipped;
// 1. 아이템 정보와 착용 캐릭터(this.cha)가 존재하는지 확인
if (getItem() != null && this.cha != null) {
// 세트 옵션 정보 조회
lineage.bean.database.ItemSetoption setoption = lineage.database.ItemSetoptionDatabase.find(getItem().getSetId());
if (setoption != null) {
if (this.equipped) {
// [장착 시]
// 1. 헤이스트 처리 (43번)
if (setoption.isHaste()) {
lineage.bean.database.Skill s = lineage.database.SkillDatabase.find(43);
if (s != null) {
BuffController.append(this.cha, lineage.world.object.magic.Haste.clone(BuffController.getPool(lineage.world.object.magic.Haste.class), s, -1, false));
}
}
// 2. 용기 처리 (201번) - 무한(-1)
if (setoption.isBrave()) {
lineage.bean.database.Skill s = lineage.database.SkillDatabase.find(201);
if (s != null) {
BuffController.append(this.cha, lineage.world.object.magic.GreaterHaste.clone(BuffController.getPool(lineage.world.object.magic.GreaterHaste.class), s, -1, false));
// 용기는 속도 2단계로 강제 갱신 필요 (BuffController 내부 로직이 약할 경우 대비)
this.cha.setSpeed(2);
}
}
} else {
// [해제 시]
// 1. 헤이스트 제거
if (setoption.isHaste()) {
BuffController.remove(this.cha, lineage.world.object.magic.Haste.class);
}
// 2. 용기 제거
if (setoption.isBrave()) {
BuffController.remove(this.cha, lineage.world.object.magic.GreaterHaste.class);
// 클로드의 지적대로 setSpeed(0)은 삭제!
// BuffController가 다른 버프 유무를 판단해 알아서 속도를 재조정하도록 맡깁니다.
}
}
}
}
}
-
등록일 2026.02.19
-
등록일 2025.07.12
-
등록일 2025.05.17
-
등록일 2025.05.13
관련자료
댓글 3














