사이트 로그인
2016.06.29 11:54
대다수의 팩에선 텔레포트 할 때 마다 드진이 풀리기 때문에 Teleportation.java에서 텔 할때마다 다시 패킷을 쏴서 재부여 하는 방식으로 하고 있죠.
우선 Teleportation.java 에서 기존 부분 제거
if (pc.getSkillEffectTimerSet().hasSkillEffect(L1SkillId.STATUS_DRAGONPERL)) {
int reminingtime = pc.getSkillEffectTimerSet().getSkillEffectTimeSec(L1SkillId.STATUS_DRAGONPERL);
pc.sendPackets(new S_PacketBox(S_PacketBox.DRAGONPERL,8,(reminingtime /4) -2));
pc.sendPackets(new S_DRAGONPERL(pc.getId(), 8 ));
Broadcaster.broadcastPacket(pc, new S_DRAGONPERL(pc.getId(), 8 ));
pc.setPerlSpeed(1);
}
보통 저런식으로 되어있을겁니다.
S_OwnCharPacks, S_OtherCharPacks 수정
if (pc.getSkillEffectTimerSet().hasSkillEffect(STATUS_DRAGONPERL)) {
writeC(0x08);
} else {
writeC(0);
}
writeC(0); // PC = 0, Mon = Lv
writeC(0); //
writeC(0xFF);
writeC(0xFF);
퍼런 색 부분 - 검색
빨간 색 부분 - 변경
아마 기존에는 빨간색 부분을
writeC(0); // 타르쿡크 거리(대로)
이런식으로 해놨을겁니다~
[출처] 텔레포트시 드래곤의 진주 재부여 (비공개 카페)