2013年5月15日 星期三

【Java教學】100%武器卷製作

1.先在SQL資料庫內增加一張你想要的捲軸(這應該是廢話=   ='') 

2.開啟程式檔案位址 
Rev1964\Rev1964\src\l1j\server\server\clientpackets\
C_ItemUSe

3.增加程式碼(由於要增加至少3個地方.所以很多原本的程式碼在這先刪掉) 
( 在此所使用的物品編號是49300 100%武捲) 

找到以下的這些地方... 

   || itemId == 41426 // 封印スクロール
   || itemId == 41427 // 封印解除スクロール
   || itemId == 40075 // 防具破壊スクロール
   || itemId == 41429 // 風の武器強化スクロール
   || itemId == 41430 // 地の武器強化スクロール
   || itemId == 41431 // 水の武器強化スクロール
   || itemId == 41432) { // 火の武器強化スクロール

  l = readD(); 
} else if (itemId == 140100 || itemId == 40100 || itemId == 40099 
          || itemId == 40086 || itemId == 40863) { 


........................................... 

if (itemId == 40077 || itemId == L1ItemId.SCROLL_OF_ENCHANT_WEAPON 
                      || itemId == L1ItemId.SCROLL_OF_ENCHANT_QUEST_WEAPON 
                      || itemId == 40130 || itemId == 140130 
          || itemId == L1ItemId.B_SCROLL_OF_ENCHANT_WEAPON 
          || itemId == L1ItemId.C_SCROLL_OF_ENCHANT_WEAPON 
                      || itemId == 49300 //<===自加(第二個新增的地方對照下面這句格式就ok) 
      || itemId == 40128) { // 武器強化????? 


  if (l1iteminstance1 == null 
        || l1iteminstance1.getItem().getType2() != 1) { 
  pc.sendPackets(new S_ServerMessage(79)); // \f1何?起???????。 
  return; 
  } 



          if (itemId == 40128) { // ???????武器強化????? 
  if (weaponId == 36 || weaponId == 183 || weaponId >= 250 
  && weaponId <= 255) { // ???????武器 
  } else { 
  pc.sendPackets(new S_ServerMessage(79)); // \f1何?起???????。 
  return; 
      } 
  } 

  int enchant_level = l1iteminstance1.getEnchantLevel(); 

                          //------------------------------------------- 
                    
                      if (itemId == 49300 ){ 
                          pc.getInventory().removeItem(l1iteminstance, 1); 
                          SuccessEnchant(pc, l1iteminstance1, client, 1 ); 
                          return; 
                          } 
                        (分隔線內是第三個新增的地方) 
                          //------------------------------------------- 


  if (itemId == L1ItemId.C_SCROLL_OF_ENCHANT_WEAPON) { // c-dai 
      pc.getInventory().removeItem(l1iteminstance, 1); 
  if (enchant_level < -6) { 
                    // -7以上?????。 
      FailureEnchant(pc, l1iteminstance1, client); 
  } else { 
      SuccessEnchant(pc, l1iteminstance1, client, -1); 
      } 
  } else if (enchant_level < safe_enchant) { 
      pc.getInventory().removeItem(l1iteminstance, 1); 
      SuccessEnchant(pc, l1iteminstance1, client, RandomELevel( 
          l1iteminstance1, itemId)); 
  } else { 
        pc.getInventory().removeItem(l1iteminstance, 1); 

編譯後.放入核心就完成了       

前後都有留一些源碼.應該不會太難找.. 
修改版本是1964闆的 
不過我有去看過1980闆..程式碼也一樣.所以1964~1980應該都可用. 

防捲的程式碼部分在武捲的下方.往下就能找的到了. 

沒有留言:

張貼留言