Przeglądaj źródła

BETA/STABLE: Fixing Pick Up Protected Items With Pets also items dropped by players should not be protected by DrHouse

Rumen Nikiforov 13 lat temu
rodzic
commit
ae3053f6be

+ 8 - 0
L2J_Server_BETA/java/com/l2jserver/gameserver/model/actor/instance/L2PetInstance.java

@@ -506,6 +506,14 @@ public class L2PetInstance extends L2Summon
 				getOwner().sendPacket(ActionFailed.STATIC_PACKET);
 				return;
 			}
+			if (!target.getDropProtection().tryPickUp(this))
+			{
+				getOwner().sendPacket(ActionFailed.STATIC_PACKET);
+				SystemMessage smsg = SystemMessage.getSystemMessage(SystemMessageId.FAILED_TO_PICKUP_S1);
+				smsg.addItemName(target);
+				getOwner().sendPacket(smsg);
+				return;
+			}
 			if ( !_inventory.validateCapacity(target))
 			{
 				getOwner().sendPacket(SystemMessage.getSystemMessage(SystemMessageId.YOUR_PET_CANNOT_CARRY_ANY_MORE_ITEMS));

+ 1 - 1
L2J_Server_BETA/java/com/l2jserver/gameserver/network/clientpackets/RequestDropItem.java

@@ -198,7 +198,7 @@ public final class RequestDropItem extends L2GameClientPacket
 			activeChar.sendPacket(il);
 		}
 		
-		L2ItemInstance dropedItem = activeChar.dropItem("Drop", _objectId, _count, _x, _y, _z, null, false, true);
+		L2ItemInstance dropedItem = activeChar.dropItem("Drop", _objectId, _count, _x, _y, _z, null, false, false);
 		
 		if (Config.DEBUG)
 			_log.fine("dropping " + _objectId + " item(" + _count + ") at: " + _x + " " + _y + " " + _z);