Index: gameserver/config/functions/l2jfrozen.properties
===================================================================
--- gameserver/config/functions/l2jfrozen.properties (revisão 63)
+++ gameserver/config/functions/l2jfrozen.properties (cópia de trabalho)
@@ -308,4 +308,9 @@
ProtectorSkillTime = 600
# Npc Protector Message
-ProtectorMessage = Hey You!, Never Kill On This Area, Go Read The Rules!
\ No newline at end of file
+ProtectorMessage = Hey You!, Never Kill On This Area, Go Read The Rules!
+
+# -----------------------------------------------------
+# Stuck Augments
+# -----------------------------------------------------
+# Enable stuck augments?
+# Default: False
+StuckAugment = True
\ No newline at end of file
Index: D:/L2JFrozen/L2JFrozen/gameserver/head-src/com/l2jfrozen/Config.java
===================================================================
--- head-src/com/l2jfrozen/Config.java (revisão 71)
+++ head-src/com/l2jfrozen/Config.java (cópia de trabalho)
@@ -163,6 +163,7 @@
public static boolean STRICT_HERO_SYSTEM;
public static boolean REMOVER_ITEMS_SUB;
public static int MANA_POTION_RES;
+ public static boolean RETAIL_AUGMENTATIONS;
//============================================================
@@ -390,6 +391,7 @@
STRICT_HERO_SYSTEM = Boolean.parseBoolean(L2JFrozenSettings.getProperty("StrictHeroSystem", "False"));
REMOVER_ITEMS_SUB = Boolean.parseBoolean(L2JFrozenSettings.getProperty("RemoverItemsSubClasse", "False"));
MANA_POTION_RES = Integer.parseInt(L2JFrozenSettings.getProperty("ManaPotionMPRes", "200"));
+ STUCK_AUGMENTS = Boolean.parseBoolean(L2JFrozenSettings.getProperty("StuckAugments", "False"));
//============================================================
}
catch(Exception e)
Index: head-src/com/l2jfrozen/gameserver/network/clientpackets/UseItem.java
===================================================================
--- head-src/com/l2jfrozen/gameserver/network/clientpackets/UseItem.java (revisão 45)
+++ head-src/com/l2jfrozen/gameserver/network/clientpackets/UseItem.java (cópia de trabalho)
import com.l2jfrozen.gameserver.network.serverpackets.ShowCalculator;
import com.l2jfrozen.gameserver.network.serverpackets.SystemMessage;
import com.l2jfrozen.gameserver.network.serverpackets.UserInfo;
+import com.l2jfrozen.gameserver.templates.L2Item;
+import com.l2jfrozen.gameserver.model.L2Skill;
import com.l2jfrozen.gameserver.templates.L2Weapon;
@@ -327,7 +327,35 @@
activeChar.sendMessage("This item can not be equipped when you have the flag.");
return;
}
-
+
+ if (Config.STUCK_AUGMENTS)
+ {
+ if (bodyPart == L2Item.SLOT_L_HAND)
+ {
+ if (activeChar.getInventory().getPaperdollItemByL2ItemId(0x4000) != null && activeChar.getInventory().getPaperdollItemByL2ItemId(0x4000).getAugmentation() !=null)
+ {
+ activeChar.getInventory().getPaperdollItemByL2ItemId(0x4000).getAugmentation().removeBoni(activeChar);
+ }
+ }
+
+ L2Effect[] effects = activeChar.getAllEffects();
+
+ for (L2Effect e : effects)
+ {
+ if ((e.getSkill().getSkillType() == L2Skill.SkillType.BUFF ||
+ e.getSkill().getSkillType() == L2Skill.SkillType.HEAL_PERCENT ||
+ e.getSkill().getSkillType() == L2Skill.SkillType.REFLECT)
+ && (e.getSkill().getId() >= 3124 && e.getSkill().getId() <= 3259)
+ && (bodyPart == L2Item.SLOT_LR_HAND
+ || bodyPart == L2Item.SLOT_L_HAND
+ || bodyPart == L2Item.SLOT_R_HAND))
+ {
+ activeChar.stopSkillEffects(e.getSkill().getId());
+ break;
+ }
+ }
+ }
+
// Don't allow weapon/shield equipment if wearing formal wear
if(activeChar.isWearingFormalWear() && (bodyPart == L2Item.SLOT_LR_HAND || bodyPart == L2Item.SLOT_L_HAND || bodyPart == L2Item.SLOT_R_HAND))
{