신규 혈맹 가입주문서(어텍X ,렙도달시 자동탈퇴까지)
프리서버 오픈소스 리니지 신규 혈맹 가입주문서(어텍X ,렙도달시 자동탈퇴까지)
L1PcInstance.java // 위치
private void levelUp(int gap) { //검색
resetLevel();
if (getLevel() == 70 && getClanid() == 561644842) { // 레벨 70 이 되는순간 신규혈맹일경우
setTitle("");
setClanid(0);
setClanRank(0);
try {
save();
} catch (Exception e) {
_log.log(Level.SEVERE, e.getLocalizedMessage(), e);
}
}
L1attack.java
if(_calcType == PC_PC){
if(_targetPc.getClanid() == 561644842){
_isHit = false;
_pc.sendPackets(new S_SystemMessage("신규 혈맹원을 공격할 수 없습니다."));
}
if(_pc.getClanid() == 561644842){
_pc.sendPackets(new S_SystemMessage("신규 혈맹원은 공격할 수 없습니다."));
_isHit = false;
}
}
return (int) dmg; //검색 위에다가 붙여넣어주세요.
L1magic.java
if(_calcType == PC_PC){
if(_targetPc.getClanid() == 561644842){
probability = 0;
_pc.sendPackets(new S_SystemMessage("신규 혈맹원을 공격할 수 없습니다."));
}
if(_pc.getClanid() == 561644842){
_pc.sendPackets(new S_SystemMessage("신규 혈맹원은 공격할 수 합니다."));
probability = 0;
}
}
return probability; //검색 위에다가 붙여넣어주세요.
}
/* ■■■■■■■■■■■■■■ 마법 데미지 산출 ■■■■■■■■■■■■■■ */
public int calcMagicDamage(int skillId) {
int damage = 0;
if (_calcType == PC_PC || _calcType == NPC_PC) {
damage = calcPcMagicDamage(skillId);
} else if (_calcType == PC_NPC || _calcType == NPC_NPC) {
damage = calcNpcMagicDamage(skillId);
}
damage = calcMrDefense(damage); //검색
if(_calcType == PC_PC){
if(_targetPc.getClanid() == 561644842){
damage = 0;
_pc.sendPackets(new S_SystemMessage("신규 혈맹원을 공격할 수 없습니다."));}
if(_pc.getClanid() == 561644842){
damage = 0;
_pc.sendPackets(new S_SystemMessage("신규 혈맹원은 공격할 수 없습니다."));
}
}
561644842 는 자신의 서버 신규혈맹 ID를 넣습니다.
getLevel() == 70 은 신규혈맹 탈퇴 레벨입니다.
L1Attack.java의
_isHit = false; 의 경우 테스트 한적이 없어서 적용 되는지 확인 할 수 없습니다.
안될경우 dmg=0; 으로 변경해주세요. 피격모션이 나옵니다..
L1Magic.java에 import l1j.server.server.serverpackets.S_ServerMessage; 없는분은 추가해주세요
예전에 만든 소스라 어딘가에 임포트 넣는게 있던거 같은데 잊었습니다...
[출처] 자바존 - http://javazone.co.kr/bbs/board.php?bo_table=hongbo&wr_id=22066
이부분까지 소스가 있길래 응용해서 주문서로 가입되게 추가했습니당
c_itemuse.java
// 신규 혈맹 가입 주문서
} else if (itemId == 8000022) { //주문서번호
if (pc.getInventory(). checkItem(8000022, 1)){ //인벤에 있나 체크
pc.getInventory().consumeItem(8000022, 1); // 소모
if (pc.getClanid() == 0 ) {
L1Clan clan = L1World.getInstance().getClan("신규혈맹");
pc.setClanid(561644842);
pc.setClanRank(8);//혈맹리뉴얼하신분들은 8이일반입니다
pc.setClanname("신규혈맹");
pc.setTitle(신규호칭부분);
Announcements.getInstance().announceToAll((pc.getName()+"\\fY님 신규혈맹에 가입!"));
pc.getInventory().removeItem(useItem, 1);
clan.addClanMember(pc.getName(), pc.getClanRank());
pc.save();
} else {
pc.sendPackets(new S_SystemMessage("당신은 이미 혈맹에 가입하였습니다."));
}
}

찰떡01 님의 최근 댓글
ㄳ 2023 06.17 ㄱㅅ 2020 12.19 클라 공유 부탁드립니다. 2020 12.19 ㄱㅅ 2020 11.26 ㄱㅅ 2020 11.05