瘋天堂私服發佈網站廣告欄位!
害怕天堂私服倒閉嗎?快使用天堂分析師!
天堂私服抽獎扭蛋物品及機率測試器
天堂私服稱號顏色製造器
瘋天堂私服發佈網站教您註冊推文收藏私服!
天堂私服血量魔力計算器
瘋天堂私服發布網站廣告贊助及爆料私服客服
教您如何不用註冊也可以推文天堂私服!
天堂私服270怪物查詢掉落資料庫
天堂私服盟徽製造器
test0428
2015-12-27 01:23

天堂究極起死回生術java寫法!

前言:
對天堂私服接觸比較久的人應該都知道這個魔法,
此為咖啡版的究極起死回生術,
因為看到目前大多數的整合版幾乎是以仿正為主流,
或者是自創內容,但是有自創技能的版本似乎屈指可數...
也有可能是小弟的見識太淺薄....QQ
不過鑒於這個出發點,小弟現在分享這個方法,
將咖啡版的究極起死回生術在新的版本中呈現出來。


使用軟體:JC、DJ
參考了日版的起死回生術原碼。
使用MCA大發佈的Rev1118版製成,特此感謝。
使用了傑大1098版的william_item_magic功能來施放魔法,特此感謝。

現在開始修改....
l1j\server\server\model\skill\L1SkillId.java
找到這一段

public static final int ADDITIONAL_FIRE = 176;

public static final int SKILLS_END = 176;

改成這樣

public static final int ADDITIONAL_FIRE = 176;

public static final int SUPER_TURN_UNDEAD = 177;//集體起死回生術

public static final int SKILLS_END = 177;
完畢,記得先將此原碼轉檔,壓入核心才能繼續以下的動作。

接著修改
l1j\server\server\model\skill\L1SkillUse.java

找到這一段
case TURN_UNDEAD: { // 起死回生術
if (undeadType == 1 || undeadType == 3) {
dmg = cha.getCurrentHp();
}else {
dmg = 0;
}
}
break;
往下插入這一段,先設定這個魔法的效果

case SUPER_TURN_UNDEAD: { // 集體起死回生術
if (undeadType == 1 || undeadType == 3) {
dmg = cha.getCurrentHp();
_player.sendPackets(new S_SkillSound(cha.getId(), 754));
_player.broadcastPacket(new S_SkillSound(cha.getId(), 754)); // 魔法效果送出
} else {
dmg = 0;
}
}
break;
再往下找到這一段

if ((_skillId == TURN_UNDEAD && (undeadType == 0 || undeadType == 2))
|| (_skillId == TURN_UNDEAD && isTU == false)
|| ((_skillId == ERASE_MAGIC || _skillId == SLOW || _skillId == MANA_DRAIN || _skillId == MASS_SLOW || _skillId == ENTANGLE
|| _skillId == CURSE_PARALYZE || _skillId == SILENCE || _skillId == CURSE_BLIND || _skillId == DARKNESS
|| _skillId == DARK_BLIND || _skillId == FOG_OF_SLEEPING || _skillId == SHOCK_STUN) && isErase == false) // 新增木乃伊 CURSE_PARALYZE、魔封無效 SILENCE
|| (_skillId == MANA_DRAIN && isManaDrain == false)) { //新增闇盲咒術 CURSE_BLIND、
// 黑暗之影 DARKNESS、暗黑盲咒(黑妖的) DARK_BLIND、沉睡之霧無效 FOG_OF_SLEEPING by 9001183ex 增加衝暈 SHOCK_STUN by mca 20081223
return true;
}
return false;
}
}
改成這樣

if ((_skillId == TURN_UNDEAD && (undeadType == 0 || undeadType == 2))
|| (_skillId == TURN_UNDEAD && isTU == false)
|| (_skillId == SUPER_TURN_UNDEAD && (undeadType == 0 || undeadType == 2)) //增加集體起死回生術
|| (_skillId == SUPER_TURN_UNDEAD && isTU == false) //增加集體起死回生術
|| ((_skillId == ERASE_MAGIC || _skillId == SLOW || _skillId == MANA_DRAIN || _skillId == MASS_SLOW || _skillId == ENTANGLE
|| _skillId == CURSE_PARALYZE || _skillId == SILENCE || _skillId == CURSE_BLIND || _skillId == DARKNESS
|| _skillId == DARK_BLIND || _skillId == FOG_OF_SLEEPING || _skillId == SHOCK_STUN) && isErase == false) // 新增木乃伊 CURSE_PARALYZE、魔封無效 SILENCE
|| (_skillId == MANA_DRAIN && isManaDrain == false)) { //新增闇盲咒術 CURSE_BLIND、
// 黑暗之影 DARKNESS、暗黑盲咒(黑妖的) DARK_BLIND、沉睡之霧無效 FOG_OF_SLEEPING by 9001183ex 增加衝暈 SHOCK_STUN by mca 20081223
return true;
}
return false;
}
}
完畢

接著再修改
l1j\server\server\model\L1Magic.java

設定這個魔法的成功率限制,

找到這一段

// 起死回生機率限制
if (skillId == TURN_UNDEAD && _calcType == PC_NPC) {
if (_pc.isWizard() && probability > 70) { // 法師
probability = 70;
} else if (_pc.isElf()) { // 妖精
if (probability > 70) {
probability = 55;
} else {
probability /= 2;
}
}
}
// 起死回生機率限制 end
改成這樣

// 起死回生機率限制
if ((skillId == TURN_UNDEAD || skillId == SUPER_TURN_UNDEAD) && _calcType == PC_NPC) {
if (_pc.isWizard() && probability > 70) { // 法師
probability = 70;
} else if (_pc.isElf()) { // 妖精
if (probability > 70) {
probability = 55;
} else {
probability /= 2;
}
}
}
// 起死回生機率限制 end
核心修改完畢,
接著開始修改DB的部份。

skills
新增一筆資料:

177 集體起死回生術 0 0 45 20 40318 1 3000 0 none 2 0 0 0 0 7 1 19 4 0 0 5 0 0 761 0 0 280 0 0 0
etcitem
新增一筆資料:
9000 究極起死回生術 究極起死回生術 other normal none 0 3095 776 0 0 0 0 0 0 0 0 0 0 1 1 5 5000 0 0 1
william_item_magic
新增一筆資料:
9000 0 0 177 0
完畢,這樣就能使用9000這個道具來施展究極起死回生術了,儘管寫法可能和咖啡版的有出入,
但至少效果是一樣的,幾乎是90%重現咖啡版的究極起死回生術了。
※應該是90%啦 ="= 畢竟我咖啡版沒玩過很久



上一篇文章:天堂新手保護系統java寫法!
下一篇文章:天堂武器加成增加魔法武器傷害java寫法!

分享文章:分享到微博! 分享到臉書! 分享到噗浪! 分享到維特! 分享到Google+! 分享到LINE!