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

天堂經驗藥水java教學!

首先
L1SkillId.java

尋找
public static final int STATUS_THIRD_SPEED = 551788;
下方加入

public static final int EXP_UP_A = 7000;

public static final int EXP_UP_B = 7001;

public static final int EXP_UP_C = 7002;


再來
L1SkillTimer.java

尋找
else if (skillId == STATUS_POISON) {
上方加入

else if (skillId == EXP_UP_A || skillId == EXP_UP_B || skillId == EXP_UP_C) { // 經驗狀態
if (cha instanceof L1PcInstance) {
L1PcInstance pc = (L1PcInstance) cha;
pc.sendPackets(new S_SystemMessage("經驗之神的祝福消失了!"));
}
}

再來
C_ItemUSe.java
尋找
import static l1j.server.server.model.skill.L1SkillId.WIND_WALK;
下方加入
import static l1j.server.server.model.skill.L1SkillId.EXP_UP_A;
import static l1j.server.server.model.skill.L1SkillId.EXP_UP_B;
import static l1j.server.server.model.skill.L1SkillId.EXP_UP_C;

同樣C_ItemUSe.java尋找
} else if (itemId == 240106) {
上方加入

} else if (itemId == 620010) { // 經驗加倍藥水(150%)
if(pc.hasSkillEffect(7000) == false && pc.hasSkillEffect(7001) == false && pc.hasSkillEffect(7002) == false) { // 確認經驗加倍狀態
int time = 30 * 1000; // 設置時間為1小時
pc.setSkillEffect(7000,time); // 增加魔法狀態7000
pc.getInventory().removeItem(l1iteminstance, 1); // 移除物品
pc.sendPackets(new S_SystemMessage("受到經驗之神的祝福,狩獵後經驗提升1.5倍!"));
}else{
int time = pc.getSkillEffectTimeSec(7000)+
pc.getSkillEffectTimeSec(7001)+
pc.getSkillEffectTimeSec(7002);
pc.sendPackets(new S_SystemMessage("經驗加倍藥水時間剩餘 "+time+" 秒"));
}


} else if (itemId == 620011) { // 經驗加倍藥水(200%)
if(pc.hasSkillEffect(7000) == false && pc.hasSkillEffect(7001) == false && pc.hasSkillEffect(7002) == false) { // 確認經驗加倍狀態
int time = 30 * 1000; // 設置時間為1小時
pc.setSkillEffect(7001,time); // 增加魔法狀態7001
pc.getInventory().removeItem(l1iteminstance, 1); // 移除物品
pc.sendPackets(new S_SystemMessage("受到經驗之神的祝福,狩獵後經驗提升2.0倍!"));
}else{
int time = pc.getSkillEffectTimeSec(7000)+
pc.getSkillEffectTimeSec(7001)+
pc.getSkillEffectTimeSec(7002);
pc.sendPackets(new S_SystemMessage("經驗加倍藥水時間剩餘 "+time+" 秒"));
}


} else if (itemId == 620012) { // 經驗加倍藥水(250%)
if(pc.hasSkillEffect(7000) == false && pc.hasSkillEffect(7001) == false && pc.hasSkillEffect(7002) == false) { // 確認經驗加倍狀態
int time = 30 * 1000; // 設置時間為1小時
pc.setSkillEffect(7002,time); // 增加魔法狀態7002
pc.getInventory().removeItem(l1iteminstance, 1); // 移除物品
pc.sendPackets(new S_SystemMessage("受到經驗之神的祝福,狩獵後經驗提升2.5倍!"));
}else{
int time = pc.getSkillEffectTimeSec(7000)+
pc.getSkillEffectTimeSec(7001)+
pc.getSkillEffectTimeSec(7002);
pc.sendPackets(new S_SystemMessage("經驗加倍藥水時間剩餘 "+time+" 秒"));
}


再來
CalcExp.java
尋找
import static l1j.server.server.model.skill.L1SkillId.COOKING_3_7_S;
下方加入

import static l1j.server.server.model.skill.L1SkillId.EXP_UP_A;
import static l1j.server.server.model.skill.L1SkillId.EXP_UP_B;
import static l1j.server.server.model.skill.L1SkillId.EXP_UP_C;

同樣CalcExp.java尋找
if (pc.hasSkillEffect(COOKING_3_7_N)
上方加入

double DEXP = 1.0;
if (pc.hasSkillEffect(L1SkillId.EXP_UP_A)) {
DEXP = 1.5;
}
double DEXP1 = 1.0;
if (pc.hasSkillEffect(L1SkillId.EXP_UP_B)) {
DEXP1 = 2.0;
}

double DEXP2 = 1.0;
if (pc.hasSkillEffect(L1SkillId.EXP_UP_C)) {
DEXP2 = 2.5;
}

同樣CalcExp.java尋找
int add_exp = (int) (exp * exppenalty * liferound * ed1 * ed2 * Config.RATE_XP * foodBonus * L1MagicDoll.getDoubleExpByDoll(pc));
注意 此段非所有核心都相同 基本上都有此段 但是有缺少一些部分

把剛剛搜尋到的取代或是自行加入 DEXP * DEXP1 * DEXP2 *
int add_exp = (int) (exp * exppenalty * Config.RATE_XP * foodBonus * DEXP * DEXP1 * DEXP2 * L1MagicDoll.getDoubleExpByDoll(pc));

再來
CharBuffTable.java

查看以下
private static final int[] buffSkill = {
2,
67, // ライト、シェイプチェンジ
3,
99,
151,
159,
168, // シールド、シャドウアーマー、アーススキン、アースブレス、アイアンスキン
43,
54,
1000,
1001,
STATUS_ELFBRAVE, // ヘイスト、グレーターヘイスト、ブレイブポーション、グリーンポーション、エルヴンワッフル
52,
101,
150, // ホーリーウォーク、ムービングアクセレーション、ウィンドウォーク
26,
42,
109,
110, // PEEX、PE:STR、ドレスマイティー、ドレスデクスタリティー
114,
115,
117, // グローウィングオーラ、シャイニングオーラ、ブレイブオーラ
148,
155,
163, // ファイアーウェポン、ファイアーブレス、バーニングウェポン
149,
156,
166, // ウィンドショット、ストームアイ、ストームショット
1002,
1005, // ブルーポーション、チャット禁止

之後再166, // ウィンドショット、ストームアイ、ストームショット下方加入
7000,// 經驗加倍藥水
7001,
7002,// end


整合後便成

private static final int[] buffSkill = {
2,
67, // ライト、シェイプチェンジ
3,
99,
151,
159,
168, // シールド、シャドウアーマー、アーススキン、アースブレス、アイアンスキン
43,
54,
1000,
1001,
STATUS_ELFBRAVE, // ヘイスト、グレーターヘイスト、ブレイブポーション、グリーンポーション、エルヴンワッフル
52,
101,
150, // ホーリーウォーク、ムービングアクセレーション、ウィンドウォーク
26,
42,
109,
110, // PEEX、PE:STR、ドレスマイティー、ドレスデクスタリティー
114,
115,
117, // グローウィングオーラ、シャイニングオーラ、ブレイブオーラ
148,
155,
163, // ファイアーウェポン、ファイアーブレス、バーニングウェポン
149,
156,
166, // ウィンドショット、ストームアイ、ストームショット
7000,// 經驗加倍藥水
7001,
7002,// end
1002,
1005, // ブルーポーション、チャット禁止


再來
C_LoginToServer.java

搜尋pc.setSkillEffect(skillid, remaining_time * 1000);

下方加入
} else if (skillid == L1SkillId.STATUS_CHAT_PROHIBITED) { // 禁止
pc.sendPackets(new S_SkillIconGFX(36, remaining_time));
pc.setSkillEffect(skillid, remaining_time * 1000);
// 經驗加倍藥水
} else if (skillid == L1SkillId.EXP_UP_A || skillid == L1SkillId.EXP_UP_B || skillid == L1SkillId.EXP_UP_C) { // 經驗加倍狀態
pc.setSkillEffect(skillid, remaining_time * 1000);

這樣就完成了!!



上一篇文章:天堂排行榜java教學!
下一篇文章:天堂突破等級99封頂限制java教學!

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