스킬북 미티어스톰 추가소스
프리서버 오픈소스 리니지 스킬북 미티어스톰 추가소스
C_ItemUse.java
} else if (itemId == 500004) { // 6단계 종합마법책
boolean isLawful = true;
if(!pc.isWizard() && !pc.isElf()){ // 법사나 요정이 아니면
pc.sendPackets(new S_ServerMessage(79)); // \f1 아무것도 일어나지 않았습니다.
return;
}
if((pc.getLevel() < 24 && pc.isWizard()) || (pc.getLevel() < 48 && pc.isElf())) {
pc.sendPackets(new S_ServerMessage(79)); // \f1 아무것도 일어나지 않았습니다.
return;
}
SpellBook7(pc, 6, client,isLawful); // pc 다음 1이 단계, 1단계면 1, 2단계면 2
pc.sendPackets(new S_SkillSound(pc.getId(), 224));
pc.sendPackets(new S_SystemMessage("\\fY마법의 기운이 몸속으로 스며듭니다.")); // 메세지 출력
pc.getInventory().removeItem(l1iteminstance, 1); // 아이템을 지워주고 끝
}else if (itemId == 500011) { // 미티어스톰
if (pc.isGhost() || pc.isInvisble()) { // 인비지상태 X
pc.sendPackets(new S_SystemMessage("'미티어스톰'을 사용 할 수 없습니다."));
return;
}
if (pc.hasSkillEffect(L1SkillId.ABSOLUTE_BARRIER)) {//엡솔 상태에서도 불가
pc.sendPackets(new S_SystemMessage("'미티어스톰'을 사용 할 수 없습니다."));
return;
}
if (!pc.getInventory().checkItem(40318, 100)) { // 마돌 100개가 없다면
pc.sendPackets(new S_SystemMessage("'미티어스톰'을 시전하기위해서는 마력의돌이 100개가 필요합니다."));
return;
}
if (pc.getCurrentMp() < 300) {//엠피 200이하 일때
pc.sendPackets(new S_ServerMessage(278));
return;
}
pc.sendPackets(new S_ChatPacket(pc, "포에타의 영혼이여!!" , Opcodes.S_OPCODE_NORMALCHAT, 2));
pc.sendPackets(new S_DoActionGFX(pc.getId(), 18));//모션
pc.broadcastPacket(new S_DoActionGFX(pc.getId() , 18));//모션
Thread.sleep(500);
pc.sendPackets(new S_SkillSound(pc.getId() , 1127));//마법진 다엘 마법진으로
pc.broadcastPacket(new S_SkillSound(pc.getId() , 1127));//마법진
pc.setCurrentMp(pc.getCurrentMp() - 300);//엠소비
Thread.sleep(1500);
pc.sendPackets(new S_ChatPacket(pc, "당신의 분노의힘을 빌려주시옵소서!" , Opcodes.S_OPCODE_NORMALCHAT, 2));
Thread.sleep(1500);
pc.sendPackets(new S_ChatPacket(pc, "미티어스톰!!" , Opcodes.S_OPCODE_NORMALCHAT, 2));
pc.broadcastPacket(new S_ChatPacket(pc, "미티어스톰!" , Opcodes.S_OPCODE_NORMALCHAT, 2));
pc.getInventory().consumeItem(40318, 100); // 마돌 100개 소모
for (L1Object obj : L1World.getInstance().getVisibleObjects(pc, 8)) { // 8 범위 내에 오브젝트를 찾아서
if (obj instanceof L1MonsterInstance){ // 몬스터라면
L1NpcInstance npc = (L1NpcInstance) obj;
npc.receiveDamage(pc, 0);
if (npc.getCurrentHp() > 0){//몬스터가 살아있다!!
pc.sendPackets(new S_SkillSound(obj.getId() , 74)); // 옆 번호가 이펙트 번호입니다.(라이트닝스톰 : 4842)
pc.broadcastPacket(new S_SkillSound(obj.getId() , 74));
npc.receiveDamage(pc, 500); // 옆의 숫자가 데미지 입니다..
}else{
pc.sendPackets(new S_SkillSound(obj.getId() , 3740)); // 몬스터 시체위에 이펙트
pc.broadcastPacket(new S_SkillSound(obj.getId() , 3740));//
}
}
}
} else if(itemId == 500001){
출처 린프리

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