l1j.server.server.model.L1Character.java
젤 아래쪽에 추가
private boolean newring = false;
public void setring(boolean ring){
newring = ring;
}
public boolean getring(){
return newring;
}
l1j.server.server.model.L1PolyMorph.java
public static void doPoly( <== 검색후 아래로 내려가서
pc.sendPackets(new S_SkillIconGFX(35, timeSecs));
위 소스 주석 처리 후 추가
boolean icon = true;
if(pc.getInventory().checkEquipped(지배자반지코드) || (pc.getRankLevel() > 2 && pc.getTempCharGfx() >= 13715 && pc.getTempCharGfx() <= 13745)){
if(pc.getInventory().checkEquipped(지배자반지코드))
pc.setring(true);
}else{
pc.setring(false);
icon = false;
}
pc.sendPackets(new S_SkillIconGFX(35, timeSecs,icon));
public static void undoPoly(L1Character cha) { <== 검색
아래소스 찾으신후 다음과 같이 바꾸세요.
/*
int classId = pc.getClassId();
pc.setTempCharGfx(classId);
pc.sendPackets(new S_ChangeShape(pc.getId(), classId));
pc.broadcastPacket(new S_ChangeShape(pc.getId(), classId));
*/
if(pc.getring() != true){
int classId = pc.getClassId();
pc.setTempCharGfx(classId);
pc.sendPackets(new S_ChangeShape(pc.getId(), classId));
pc.broadcastPacket(new S_ChangeShape(pc.getId(), classId));
}else{
pc.sendPackets(new S_SkillSound(pc.getId(), 15846));
Broadcaster.broadcastPacket(pc, new S_SkillSound(pc.getId(), 15846));
}
l1j.server.server.model.skill.L1SkillUse.JAVA
case CANCELLATION: { <== 검색
if (skillNum == SHAPE_CHANGE) { <=부분을 찾고
아래소스를 주석처리
/*
if (pc.getRankLevel() > 2 && pc.getTempCharGfx() >= 13715
&& pc.getTempCharGfx() <= 13745)
continue;
*/
변경
if ((pc.getRankLevel() > 2 && pc.getTempCharGfx() >= 13715
&& pc.getTempCharGfx() <= 13745 ) || pc.getring() == true ) {
continue;
}
l1j.server.server.clientpackets.C_ItemUSe.JAVA
추가
private String ns = "";
private String ns1 = "";
private boolean usePolyScroll(L1PcInstance pc, int item_id, String s) { <== 검색
아래 찾은후 주석처리후 추가
//L1PolyMorph poly = PolyTable.getInstance().getTemplate(s);
ns = s;
if(pc.getInventory().checkEquipped(지배자의반지코드)){
ns1 = ns.replace("maple ", "");
}
else{
ns1 = s;
}
L1PolyMorph poly = PolyTable.getInstance().getTemplate(ns1);
private void polyAction(L1PcInstance attacker, L1Character cha, int itemId, String s) { <== 검색
아래 찾은후 주석처리후 추가
//if (pc.getInventory().checkEquipped(20281)) {
if (pc.getInventory().checkEquipped(20281)
|| pc.getInventory().checkEquipped(지배자의반지코드)
) {
//L1PolyMorph.doPoly(pc, polyId, skillTemp.getBuffDuration(), L1PolyMorph.MORPH_BY_ITEMMAGIC);
if(pc.getring() != true)
L1PolyMorph.doPoly(pc, polyId, skillTemp.getBuffDuration(), L1PolyMorph.MORPH_BY_ITEMMAGIC);
l1j.server.server.model.L1EquipmentSlot.JAVA
private void setArmor(L1ItemInstance armor) {<== 검색후 아래부분찾음
if (itemId == 20281) {
_owner.sendPackets(new S_Ability(2, true));
}
if (itemId == 20036) {
_owner.sendPackets(new S_Ability(3, true));
}
//추가
if (itemId == 지배자의반지코드 ) {
_owner.sendPackets(new S_Ability(2, true));
_owner.sendPackets(new S_Ability(7, true));
}
private void removeArmor(L1ItemInstance armor) { <== 검색후 아래부분찾음
if (itemId == 20281) {
_owner.sendPackets(new S_Ability(2, false));
}
if (itemId == 20036) {
_owner.sendPackets(new S_Ability(3, false));
}
//추가
if (itemId == 지배자의반지코드) {
_owner.sendPackets(new S_Ability(2, false));
_owner.sendPackets(new S_Ability(7, false));
}
l1j.server.server.model.skill.L1SkillTimer.JAVA
case SHAPE_CHANGE: <== 검색
L1PolyMorph.undoPoly(cha);
//추가
if (cha instanceof L1PcInstance) {
L1PcInstance pc = (L1PcInstance) cha;
if(pc.getring() == true)
pc.setring(false);
}
l1j.server.server.model.Instance.L1PcInstance.JAVA
public void death(L1Character lastAttacker, boolean deathPenalty) { <== 검색
setDead(true);
//추가
setring(false);
================================================
나비캣에 아이템 생성해주시고 거기에 맞게 코드 적어주시면됩니다.
인벤gfx 7547
그라운드gfx 3166