root/branches/1.9/src/com/aionemu/gameserver/services/ArmsfusionService.java

23742377
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