root/branches/1.9/src/com/aionemu/gameserver/services/ArmsfusionService.java
| 2374 | 2377 | ||
|---|---|---|---|
24 | import com.aionemu.gameserver.model.gameobjects.Npc; | 24 | import com.aionemu.gameserver.model.gameobjects.Npc; |
25 | import com.aionemu.gameserver.model.gameobjects.player.Player; | 25 | import com.aionemu.gameserver.model.gameobjects.player.Player; |
26 | import com.aionemu.gameserver.model.templates.item.ItemTemplate; | 26 | import com.aionemu.gameserver.model.templates.item.ItemTemplate; |
27 | import com.aionemu.gameserver.model.templates.item.WeaponType; | ||
27 | import com.aionemu.gameserver.network.aion.serverpackets.SM_DELETE_ITEM; | 28 | import com.aionemu.gameserver.network.aion.serverpackets.SM_DELETE_ITEM; |
28 | import com.aionemu.gameserver.network.aion.serverpackets.SM_INVENTORY_INFO; | 29 | import com.aionemu.gameserver.network.aion.serverpackets.SM_INVENTORY_INFO; |
29 | import com.aionemu.gameserver.network.aion.serverpackets.SM_INVENTORY_UPDATE; | 30 | import com.aionemu.gameserver.network.aion.serverpackets.SM_INVENTORY_UPDATE; |
31 | import com.aionemu.gameserver.network.aion.serverpackets.SM_UPDATE_ITEM; | ||
30 | import com.aionemu.gameserver.utils.PacketSendUtility; | 32 | import com.aionemu.gameserver.utils.PacketSendUtility; |
31 | 33 | ||
32 | /** | 34 | /** |
... | ... | ||
56 | if(secondItem == null) | 58 | if(secondItem == null) |
57 | secondItem = player.getEquipment().getEquippedItemByObjId(secondItemUniqueId); | 59 | secondItem = player.getEquipment().getEquippedItemByObjId(secondItemUniqueId); |
58 | 60 | ||
61 | /* | ||
62 | * Need to have items in bag, and target the fusion NPC | ||
63 | */ | ||
59 | if(firstItem == null || secondItem == null || !(player.getTarget() instanceof Npc)) | 64 | if(firstItem == null || secondItem == null || !(player.getTarget() instanceof Npc)) |
60 | return; | 65 | return; |
61 | 66 | ||
67 | /* | ||
68 | * Fusioned weapons must have same type | ||
69 | */ | ||
70 | if(firstItem.getItemTemplate().getWeaponType() != secondItem.getItemTemplate().getWeaponType()) | ||
71 | return; | ||
72 | |||
73 | /* | ||
74 | * Second weapon must have inferior or equal lvl. in relation to first weapon | ||
75 | */ | ||
76 | if(secondItem.getItemTemplate().getLevel() > firstItem.getItemTemplate().getLevel()) | ||
77 | return; | ||
78 | |||
62 | ItemTemplate secondTemplate = secondItem.getItemTemplate(); | 79 | ItemTemplate secondTemplate = secondItem.getItemTemplate(); |
63 | 80 | ||
64 | if(secondTemplate == null) | 81 | if(secondTemplate == null) |
... | ... | ||
75 | 92 | ||
76 | PacketSendUtility.sendPacket(player, new SM_DELETE_ITEM(secondItemUniqueId)); | 93 | PacketSendUtility.sendPacket(player, new SM_DELETE_ITEM(secondItemUniqueId)); |
77 | 94 | ||
78 | PacketSendUtility.sendPacket(player, new SM_INVENTORY_UPDATE(firstItem)); | 95 | PacketSendUtility.sendPacket(player, new SM_UPDATE_ITEM(firstItem)); |
79 | 96 | ||
80 | PacketSendUtility.sendMessage(player, "You have successfully fusioned weapons."); | 97 | PacketSendUtility.sendMessage(player, "You have successfully fusioned weapons."); |
81 | 98 |
Download diff