[펌] 단테스 버프 거리추가
분홍색 - 파일명
빨간색 - 추가
보라색 - 경계부분(신경안써두됨)
L1SkillId.java
--------------------------------------------------------------------------------------------------------------
public static final int BUFF_DANTES = 4900; //번호는 안겹치는번호 아무거나;
--------------------------------------------------------------------------------------------------------------
L1SkillUse.java
--------------------------------------------------------------------------------------------------------------
case BUFF_DANTES:
if (cha instanceof L1PcInstance) {
L1PcInstance pc = (L1PcInstance) cha;
pc.addDmgup(2);
pc.addBowDmgup(2);
pc.getAbility().addSp(1);
pc.addMpr(2);
pc.sendPackets(new S_SPMR(pc));
}
break;
--------------------------------------------------------------------------------------------------------------
L1SkillTimer.java
--------------------------------------------------------------------------------------------------------------
case BUFF_DANTES:
if (cha instanceof L1PcInstance) {
L1PcInstance pc = (L1PcInstance) cha;
pc.addDmgup(-2);
pc.addBowDmgup(-2);
pc.getAbility().addSp(-1);
pc.addMpr(-2);
pc.sendPackets(new S_SPMR(pc));
}
break;
--------------------------------------------------------------------------------------------------------------
DantebuffController.java 이건 만드세요(파일도올려놧어요)
--------------------------------------------------------------------------------------------------------------
package server.controller.pc;
import java.util.Collection;
import java.util.logging.Level;
import java.util.logging.Logger;
import l1j.server.server.GeneralThreadPool;
import l1j.server.server.model.L1World;
import l1j.server.server.model.Instance.L1PcInstance;
import l1j.server.server.model.skill.L1SkillId;
import l1j.server.server.model.skill.L1SkillUse;
public class DantebuffController implements Runnable {
private static Logger _log = Logger.getLogger(DantebuffController.class
.getName());
private static DantebuffController _instance;
public static synchronized DantebuffController getInstance() {
if (_instance == null) {
_instance = new DantebuffController();
}
return _instance;
}
private DantebuffController() {
GeneralThreadPool.getInstance().execute(this);
}
private Collection<L1PcInstance> list = null;
public void run() {
while (true) {
try {
list = L1World.getInstance().getAllPlayers();
for (L1PcInstance pc : list) {
if (pc == null || pc.getNetConnection() == null
|| pc.isPrivateShop()||pc.noPlayerCK) {
continue;
} else {
if (!pc.isDantesBuff()) {
Dantes(pc);
}else if(pc.getMapId() == 479 && !(pc.getX() >= 32769 && pc.getX() <=32881
&& pc.getY() >= 32741 && pc.getY() <=32840)
&& pc.isDantesBuff()){
pc.setDantesBuff(false);
if (pc.getSkillEffectTimerSet().hasSkillEffect(L1SkillId.BUFF_DANTES)){
pc.getSkillEffectTimerSet().removeSkillEffect(L1SkillId.BUFF_DANTES);
}
}else if (pc.getMapId() != 479 && pc.isDantesBuff()) {
pc.setDantesBuff(false);
if (pc.getSkillEffectTimerSet().hasSkillEffect(L1SkillId.BUFF_DANTES)){
pc.getSkillEffectTimerSet().removeSkillEffect(L1SkillId.BUFF_DANTES);
}
}
}
}
} catch (Exception e) {
_log.log(Level.SEVERE, e.getLocalizedMessage(), e);
} finally {
try {
list = null;
Thread.sleep(500);
} catch (Exception e) {
}
}
}
}
private void Dantes(L1PcInstance pc) {
if(pc.getMapId() == 479){
if(pc.getX() >= 32769 && pc.getX() <=32881
&& pc.getY() >= 32741 && pc.getY() <=32840){
pc.setDantesBuff(true);
if (!pc.getSkillEffectTimerSet().hasSkillEffect(L1SkillId.BUFF_DANTES)){
new L1SkillUse().handleCommands(pc, L1SkillId.BUFF_DANTES, pc.getId(), pc.getX(), pc.getY(), null, 0, L1SkillUse.TYPE_GMBUFF);
}
}
}
}
}
[출처] 단테스버프... 안하신분들하세용; (비공개 카페)

안약 님의 최근 댓글
천화님 두 명이서만 로봇켜고 놀려고 하는데 그래도 i5에 램8GB 정도로 사양 되어야 할까요? 2016 11.13