사이트 로그인
2016.06.29 12:03
검은색 = 자바
빨간색 = 추가
녹색 = 검색
파란색 = 음...
l1skillid.java
public static final int CLANBUFF_YES = 7789; //혈맹버프
l1pcinstance.java
/**혈맹버프**/
private boolean _clanbuff = false;
public boolean isClanBuff() {
return _clanbuff;
}
public void setClanBuff(boolean c) {
_clanbuff = c;
}
/**혈맹버프**/
hpmpregencontroller.java
// HP 부문 먼저 쳐리
pc.updateLevel();
pc.addHpregenPoint(pc.getHpcurPoint());
pc.setHpcurPoint(4);
if (pc.getHpregenMax() <= pc.getHpregenPoint()) {
pc.setHpregenPoint(0);
regenHp(pc);
}
pc.addMpregenPoint(pc.getMpcurPoint());
pc.setMpcurPoint(4);
if (64 <= pc.getMpregenPoint()) {
pc.setMpregenPoint(0);
regenMp(pc);
}
}
/**혈맹버프**/
clanbuff(pc);
/**혈맹버프**/
}
} catch (Exception e) {
_log.log(Level.SEVERE, e.getLocalizedMessage(), e);
} finally {
밑에 쭉내려서 메소드추가
private void clanbuff(L1PcInstance pc) {
String clanName = pc.getClanname();
L1Clan clan = L1World.getInstance().getClan(clanName);
if (pc.getClanid() != 0 && clan.getOnlineClanMember().length >= 2 && !pc.isClanBuff()) { //인원수는 여러분들 재량에..시작
pc.getSkillEffectTimerSet().setSkillEffect(L1SkillId.CLANBUFF_YES, 0);
pc.sendPackets(new S_PacketBox(S_PacketBox. UNLIMITED_ICON, 91, true));
pc.setClanBuff(true);
pc.sendPackets(new S_SystemMessage("혈맹 : 혈맹의 가호 를 받습니다."));
} else if (pc.getClanid() != 0 && clan.getOnlineClanMember().length < 2 && pc.isClanBuff()) { //인원수는 여러분들 재량에...끝
pc.getSkillEffectTimerSet().killSkillEffectTimer(L1SkillId.CLANBUFF_YES);
pc.sendPackets(new S_PacketBox(S_PacketBox. UNLIMITED_ICON, 91, false));
pc.setClanBuff(false);
pc.sendPackets(new S_SystemMessage("혈맹 : 혈맹의 가호가 해제 됩니다."));
}
}
private boolean isUnderwater(L1PcInstance pc) { // 전 여기위에다 했습니다 ^^
c_leaveclan.java
private void leaveClanMember(L1Clan clan, L1PcInstance player)
throws Exception {
String player_name = player.getName();
String clan_name = player.getClanname();
L1PcInstance clanMember[] = clan.getOnlineClanMember();
for (int i = 0; i < clanMember.length; i++) {
clanMember[i].sendPackets(new S_ServerMessage(
ServerMessage.LEAVE_CLAN, player_name, clan_name)); // \f1%0이
// %1혈맹을
// 탈퇴했습니다.
}
if (player.isClanBuff()) {
player.getSkillEffectTimerSet().killSkillEffectTimer(L1SkillId.CLANBUFF_YES);
player.sendPackets(new S_PacketBox(S_PacketBox. UNLIMITED_ICON, 91, false));
player.setClanBuff(false);
player.sendPackets(new S_SystemMessage("혈맹 : 혈맹의 가호가 해제 됩니다."));
}
player.ClearPlayerClanData(clan);
clan.removeClanMember(player_name);
}
c_laveclan.java 에 넣은 이유는 실시간이기때문에 탈퇴할때 버프 확인을 못하는듯하여 넣었습니다
리스타트 하면 없어지긴 하는데 찜찜해서 ㅡ.ㅡ
이자료의 원본은 페이트님이므로 페이트님이 원치 않으실때에는 지우겠습니다
[출처] 페이트님 혈맹버프를 실시간으로... (비공개 카페) |