Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ### Eclipse Workspace Patch 1.0
- #P aCis_gameserver
- Index: java/net/sf/l2j/gameserver/model/craft/RecipeItemMaker.java
- ===================================================================
- --- java/net/sf/l2j/gameserver/model/craft/RecipeItemMaker.java (revision 3)
- +++ java/net/sf/l2j/gameserver/model/craft/RecipeItemMaker.java (working copy)
- @@ -268,14 +268,19 @@
- final int itemId = _recipe.getProduct().getId();
- final int itemCount = _recipe.getProduct().getValue();
- - _target.getInventory().addItem("Manufacture", itemId, itemCount, _target, _player);
- + final ItemInstance item = ItemInstance.create("Manufacture", itemId, itemCount, _target, _player);
- + if (_recipe.hasEnchant() && Rnd.get(100) < _recipe.getEnchantChance())
- + item.setEnchantLevel(_recipe.getEnchant());
- + _target.getInventory().addItem("Manufacture", item, _target, _player);
- +
- // inform customer of earned item
- if (_target != _player)
- {
- // inform manufacturer of earned profit
- if (itemCount == 1)
- {
- _player.sendPacket(SystemMessage.getSystemMessage(SystemMessageId.S2_CREATED_FOR_S1_FOR_S3_ADENA).addString(_target.getName()).addItemName(itemId).addItemNumber(_price));
- _target.sendPacket(SystemMessage.getSystemMessage(SystemMessageId.S1_CREATED_S2_FOR_S3_ADENA).addString(_player.getName()).addItemName(itemId).addItemNumber(_price));
- }
- @@ -288,6 +293,8 @@
- if (itemCount > 1)
- _target.sendPacket(SystemMessage.getSystemMessage(SystemMessageId.EARNED_S2_S1_S).addItemName(itemId).addNumber(itemCount));
- + else if (item.getEnchantLevel() > 0)
- + _target.sendPacket(SystemMessage.getSystemMessage(SystemMessageId.YOU_PICKED_UP_A_S1_S2).addNumber(item.getEnchantLevel()).addItemName(itemId));
- else
- _target.sendPacket(SystemMessage.getSystemMessage(SystemMessageId.EARNED_ITEM_S1).addItemName(itemId));
- Index: java/net/sf/l2j/gameserver/model/item/Recipe.java
- ===================================================================
- --- java/net/sf/l2j/gameserver/model/item/Recipe.java (revision 3)
- +++ java/net/sf/l2j/gameserver/model/item/Recipe.java (working copy)
- @@ -2,6 +2,8 @@
- import java.util.List;
- +import net.sf.l2j.commons.random.Rnd;
- +
- import net.sf.l2j.gameserver.model.holder.IntIntHolder;
- import net.sf.l2j.gameserver.templates.StatsSet;
- @@ -21,6 +23,8 @@
- private final int _successRate;
- private final int _mpCost;
- private final boolean _isDwarven;
- + private final IntIntHolder _enchant;
- + private final int _enchantChance;
- public Recipe(StatsSet set)
- {
- @@ -34,6 +38,8 @@
- _successRate = set.getInteger("successRate");
- _mpCost = set.getInteger("mpConsume");
- _isDwarven = set.getBool("isDwarven");
- + _enchant = set.getString("enchant", "").isEmpty() ? null : set.getIntIntHolder("enchant");
- + _enchantChance = set.getInteger("enchantChance", 0);
- }
- public List<IntIntHolder> getMaterials()
- @@ -80,4 +86,19 @@
- {
- return _isDwarven;
- }
- +
- + public int getEnchant()
- + {
- + return Rnd.get(Math.min(_enchant.getId(), _enchant.getValue()), Math.max(_enchant.getId(), _enchant.getValue()));
- + }
- +
- + public int getEnchantChance()
- + {
- + return _enchantChance;
- + }
- +
- + public boolean hasEnchant()
- + {
- + return _enchant != null;
- + }
- }
- \ No newline at end of file
Add Comment
Please, Sign In to add comment