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

天堂假釣魚系統的java寫法!

假釣魚真抽獎...


改的非常濫...請不要嫌棄
我先講原理
假設有一個釣竿(道具)
又有一個魚餌(裝備)
釣竿要使用先檢查有沒有魚餌(裝備)
如果有才能釣魚

然後還要再加入判斷
釣魚的所在地點...釣魚場的魚池附近!

至於釣上來什麼呢...請各為GM自己新增,想要讓玩家自己得到什麼吧!
以下開始程式碼

首先先找
ItemTable.java
然後再找
_armorTypes.put("ring2", new Integer(11));
複製代碼


接著新增

//add偽.釣魚

_armorTypes.put("6", new Integer(18));//魚餌

//add結束

複製代碼

以後魚餌在裝備欄TYPE的地方請設6

這樣玩家才能裝備魚餌上去

接著到C_RequestItemUSe.java ( C_ItemUSe )


我是在無限箭桶(itemId == 40330)的結束後面新增

//add假釣竿

if (itemId == 600004) {

int x = pc.getX();

int y = pc.getY();

int map = pc.getMapId();

if (x == 32807 && y == 32799 && map == 5124 || x == 32807 && y == 32798 && map == 5124 || x == 32807 && y == 32797 && map == 5124 || x == 32807 && y == 32796 && map == 5124 || x == 32807 && y == 32793 && map == 5124 || x == 32801 && y == 32812 && map == 5124 || x == 32790 && y == 32800 && map == 5124 || x == 32793 && y == 32793 && map == 5124 || x == 32807 && y == 32795 && map == 5124 || x == 32807 && y == 32794 && map == 5124 || x == 32807 && y == 32792 && map == 5124 || x == 32800 && y == 32812 && map == 5124

|| x == 32790 && y == 32800 && map == 5124 || x == 32790 && y == 32799 && map == 5124 || x == 32790 && y == 32798 && map == 5124 || x == 32790 && y == 32797 && map == 5124 || x == 32790 && y == 32796 && map == 5124 || x == 32799 && y == 32812 && map == 5124

|| x == 32790 && y == 32795 && map == 5124 || x == 32792 && y == 32793 && map == 5124 || x == 32804 && y == 32812 && map == 5124 || x == 32803 && y == 32812 && map == 5124 || x == 32802 && y == 32812 && map == 5124 || x == 32798 && y == 32812 && map == 5124

|| x == 32794 && y == 32792 && map == 5124 || x == 32795 && y == 32792 && map == 5124 || x == 32795 && y == 32791 && map == 5124 || x == 32797 && y == 32812 && map == 5124

|| x == 32797 && y == 32788 && map == 5124 || x == 32798 && y == 32788 && map == 5124) {

if (pc.getInventory().checkEquipped(600005)) {

L1ItemInstance consume_item = pc.getInventory().findItemId(600005);

int l1 = 0;

int l2 = 1;

Random random = new Random();

int k4 = random.nextInt(100);

int k3 = random.nextInt(100);

if (k4 < 50) {

try {

Thread.sleep(2000);

}

catch (Exception exception) {

}

pc.sendPackets(new S_SystemMessage("上鉤了!"));

if (k3 <= 79) { // 

l1 = 40744;

l2 = 4000;

}

if (k3 >= 80 && k3 <= 89) { // 矢

l1 = 40746;

l2 = 2000;

}

if (k3 >= 90 && k3 <= 94) { // 

l1 = 40747;

l2 = 500;

}

if (k3 >= 95 && k3 <= 99) { // 

l1 = 40748;

l2 = 300;

}

if (!CreateNewItem(pc, l1, l2)) {

// 失敗場互效果入

isDelayEffect = false;

}

pc.getInventory().removeItem(consume_item, 100);

}

else {

try {

Thread.sleep(2000);

}

catch (Exception exception) {

}

pc.sendPackets(new S_SystemMessage("可惜沒有掉到!"));

pc.getInventory().removeItem(consume_item, 100);

}

} else

pc.sendPackets(new S_SystemMessage("沒有裝備釣餌"));

} else

pc.sendPackets(new S_SystemMessage("不在魚池旁邊"));

} else

//add結束


複製代碼說明

k4<50就是多少機率會掉到東西
l1就是你想要讓玩家釣上些什麼
l2就是你想要讓玩家釣上幾個
Thread.sleep(2000);2000就是讓玩家停頓2秒鐘


以上是用非常濫的寫法做出來的釣魚系統...

喜歡的先湊互著用吧

再來我當然不能放我對我自己惡搞嚕!
但是我只有說方式...
那就是如果再配互上
yamca2701大大的時間程式

你們可以做出來一個釣魚大賽!
就是再某個時間內掉上來的東西更好!
以下是大概方式,因為我懶的再多寫了ˇˇ...if (itemId == 600004) {

int x = pc.getX();

int y = pc.getY();

int map = pc.getMapId();

if (x == 32807 && y == 32799 && map == 5124 || x == 32807 && y == 32798 && map == 5124 || x == 32807 && y == 32797 && map == 5124 || x == 32807 && y == 32796 && map == 5124 || x == 32807 && y == 32793 && map == 5124 || x == 32801 && y == 32812 && map == 5124

|| x == 32790 && y == 32800 && map == 5124 || x == 32793 && y == 32793 && map == 5124 || x == 32807 && y == 32795 && map == 5124 || x == 32807 && y == 32794 && map == 5124 || x == 32807 && y == 32792 && map == 5124 || x == 32800 && y == 32812 && map == 5124

|| x == 32790 && y == 32800 && map == 5124 || x == 32790 && y == 32799 && map == 5124 || x == 32790 && y == 32798 && map == 5124 || x == 32790 && y == 32797 && map == 5124 || x == 32790 && y == 32796 && map == 5124 || x == 32799 && y == 32812 && map == 5124

|| x == 32790 && y == 32795 && map == 5124 || x == 32792 && y == 32793 && map == 5124 || x == 32804 && y == 32812 && map == 5124 || x == 32803 && y == 32812 && map == 5124 || x == 32802 && y == 32812 && map == 5124 || x == 32798 && y == 32812 && map == 5124

|| x == 32794 && y == 32792 && map == 5124 || x == 32795 && y == 32792 && map == 5124 || x == 32795 && y == 32791 && map == 5124 || x == 32797 && y == 32812 && map == 5124

|| x == 32797 && y == 32788 && map == 5124 || x == 32798 && y == 32788 && map == 5124) {

複製代碼在這堆地圖位子的判斷後面新增
if(釣魚大賽的時間)下面都一樣
然後再

} else

pc.sendPackets(new S_SystemMessage("不在魚池旁邊"));

複製代碼的上面在新增

else

再把地圖判斷以下的東西全部都複製一遍!

直到上面那個CODE之前的

然後兩個物品...

第一種設定更好的東西
第二種設定普通時間的東西

以上...有幾個缺點

第一我沒有釣魚的動作...(我做不出來阿... )
第二程式寫法很不漂亮...
第三地圖判斷寫了一大堆,因為我使用>=&&<=的時候,也不知道為什麼,都會判斷失敗...
所以只好土法煉鋼一個一個慢慢寫了...



上一篇文章:天堂如何讓伺服器減少LAG的方法!
下一篇文章:天堂裝備特殊武器角色頭上出現皇冠的java寫法!

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