2014年7月25日 星期五

【Java教學】裝備保護卷軸

裝備保護卷軸


功能解說:使用此道具點選裝備時,強化失敗時不會消失,但是強化值回歸至零

L1ItemInstance.Java  直接在最下面加入

//裝備保護卷軸  
private boolean proctect = false; 
  
public boolean getproctect() { 
  return proctect; 
public void setproctect(boolean i) { 
  proctect = i; 
//裝備保護卷軸

C_ItemUSe.Java 
搜尋

|| itemId == L1ItemId.C_SCROLL_OF_ENCHANT_WEAPON

在後面加入

|| itemId == 300039

接著找個地方加入

    //裝備保護卷軸 
    } else if (itemId == 300039) { 
    if (l1iteminstance1 != null){ 
      if (l1iteminstance1.getEnchantLevel() <= -1){ 
      pc.sendPackets(new S_ServerMessage(1309)); 
      return; 
      } 
      if (l1iteminstance1.getproctect() == true){ 
      pc.sendPackets(new S_ServerMessage(1300)); 
      return; 
      } 
      if (l1iteminstance1.getItem().getType2() == 0){ 
      pc.sendPackets(new S_ServerMessage(79)); 
      return; 
      } else { 
      l1iteminstance1.setproctect(true); 
      pc.sendPackets(new S_SystemMessage(l1iteminstance1.getEnchantLevel()+l1iteminstance1.getName()+"受到魔法力量的保護。")); 
      pc.getInventory().removeItem(l1iteminstance, 1); 
    } 
    } 
    //裝備保護卷軸 



Enchant
搜尋 
//強化成功
private void SuccessEnchant(L1PcInstance pc, L1ItemInstance item, ClientThread client, int i) {

在下面加入
  
  //裝備保護卷軸 
  item.setproctect(false); 
  //裝備保護卷軸

搜尋
//強化失敗
private void FailureEnchant(L1PcInstance pc, L1ItemInstance item, 
  ClientThread client) {

在下面加入

  //裝備保護卷軸 
  if (item.getproctect() == true){ 
  item.setEnchantLevel(0); 
  pc.sendPackets(new S_ItemStatus(item)); 
  pc.getInventory().saveItem(item, L1PcInventory.COL_ENCHANTLVL); 
  item.setproctect(false); 
  pc.sendPackets(new S_ServerMessage(1310)); 
  return; 
  } 
  //裝備保護卷軸 

沒有留言:

張貼留言