Przeglądaj źródła

Merge branch 'master' of https://github.com/L2J/L2J_Server.git

Zoey76 9 lat temu
rodzic
commit
7621149e7e

+ 16 - 14
L2J_Server/java/com/l2jserver/gameserver/model/actor/instance/L2PcInstance.java

@@ -4424,7 +4424,7 @@ public final class L2PcInstance extends L2Playable
 		getAI().setIntention(CtrlIntention.AI_INTENTION_IDLE);
 		
 		// Check if the L2Object to pick up is a L2ItemInstance
-		if (!(object instanceof L2ItemInstance))
+		if (!(object.isItem()))
 		{
 			// dont try to pickup anything that is not an item :)
 			_log.warning(this + " trying to pickup wrong target." + getTarget());
@@ -4433,12 +4433,7 @@ public final class L2PcInstance extends L2Playable
 		
 		L2ItemInstance target = (L2ItemInstance) object;
 		
-		// Send a Server->Client packet ActionFailed to this L2PcInstance
-		sendPacket(ActionFailed.STATIC_PACKET);
-		
-		// Send a Server->Client packet StopMove to this L2PcInstance
-		StopMove sm = new StopMove(this);
-		sendPacket(sm);
+		sendPacket(new StopMove(this));
 		
 		SystemMessage smsg = null;
 		synchronized (target)
@@ -4467,12 +4462,8 @@ public final class L2PcInstance extends L2Playable
 				return;
 			}
 			
-			if (isInvul() && !canOverrideCond(PcCondOverride.ITEM_CONDITIONS))
+			if (isInvisible() && !canOverrideCond(PcCondOverride.ITEM_CONDITIONS))
 			{
-				sendPacket(ActionFailed.STATIC_PACKET);
-				smsg = SystemMessage.getSystemMessage(SystemMessageId.FAILED_TO_PICKUP_S1);
-				smsg.addItemName(target);
-				sendPacket(smsg);
 				return;
 			}
 			
@@ -12564,7 +12555,7 @@ public final class L2PcInstance extends L2Playable
 			{
 				if (_transformSkills == null)
 				{
-					_transformSkills = new HashMap<>();
+					_transformSkills = new ConcurrentHashMap<>();
 				}
 			}
 		}
@@ -12573,17 +12564,28 @@ public final class L2PcInstance extends L2Playable
 	
 	public Skill getTransformSkill(int id)
 	{
+		if (_transformSkills == null)
+		{
+			return null;
+		}
 		return _transformSkills.get(id);
 	}
 	
 	public boolean hasTransformSkill(int id)
 	{
+		if (_transformSkills == null)
+		{
+			return false;
+		}
 		return _transformSkills.containsKey(id);
 	}
 	
 	public synchronized void removeAllTransformSkills()
 	{
-		_transformSkills = null;
+		if (_transformSkills == null)
+		{
+			_transformSkills = null;
+		}
 	}
 	
 	protected void startFeed(int npcId)

+ 1 - 1
L2J_Server/java/com/l2jserver/gameserver/model/drops/strategy/IAmountMultiplierStrategy.java

@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2004-2014 L2J Server
+ * Copyright (C) 2004-2015 L2J Server
  * 
  * This file is part of L2J Server.
  * 

+ 1 - 1
L2J_Server/java/com/l2jserver/gameserver/model/drops/strategy/IChanceMultiplierStrategy.java

@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2004-2014 L2J Server
+ * Copyright (C) 2004-2015 L2J Server
  * 
  * This file is part of L2J Server.
  * 

+ 1 - 1
L2J_Server/java/com/l2jserver/gameserver/model/drops/strategy/IDropCalculationStrategy.java

@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2004-2014 L2J Server
+ * Copyright (C) 2004-2015 L2J Server
  * 
  * This file is part of L2J Server.
  * 

+ 1 - 1
L2J_Server/java/com/l2jserver/gameserver/model/drops/strategy/IGroupedItemDropCalculationStrategy.java

@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2004-2014 L2J Server
+ * Copyright (C) 2004-2015 L2J Server
  *
  * This file is part of L2J Server.
  *

+ 1 - 1
L2J_Server/java/com/l2jserver/gameserver/model/drops/strategy/IKillerChanceModifierStrategy.java

@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2004-2014 L2J Server
+ * Copyright (C) 2004-2015 L2J Server
  *
  * This file is part of L2J Server.
  *

+ 1 - 1
L2J_Server/java/com/l2jserver/gameserver/model/drops/strategy/INonGroupedKillerChanceModifierStrategy.java

@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2004-2014 L2J Server
+ * Copyright (C) 2004-2015 L2J Server
  * 
  * This file is part of L2J Server.
  * 

+ 1 - 1
L2J_Server/java/com/l2jserver/gameserver/model/drops/strategy/IPreciseDeterminationStrategy.java

@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2004-2014 L2J Server
+ * Copyright (C) 2004-2015 L2J Server
  * 
  * This file is part of L2J Server.
  * 

+ 6 - 5
L2J_Server/java/com/l2jserver/gameserver/model/stats/functions/formulas/FuncAtkEvasion.java

@@ -49,13 +49,14 @@ public class FuncAtkEvasion extends AbstractFunction
 		{
 			// [Square(DEX)] * 6 + lvl;
 			value += (Math.sqrt(effector.getDEX()) * 6) + level;
-			if (level > 77)
+			double diff = level - 69;
+			if (level >= 78)
 			{
-				value += level - 77;
+				diff *= 1.2;
 			}
-			if (level > 69)
+			if (level >= 70)
 			{
-				value += level - 69;
+				value += diff;
 			}
 		}
 		else
@@ -67,6 +68,6 @@ public class FuncAtkEvasion extends AbstractFunction
 				value += (level - 69) + 2;
 			}
 		}
-		return value;
+		return (int) value;
 	}
 }

+ 2 - 2
L2J_Server/java/com/l2jserver/gameserver/network/clientpackets/EnterWorld.java

@@ -433,8 +433,8 @@ public class EnterWorld extends L2GameClientPacket
 		
 		activeChar.sendMessage(getText("VGhpcyBTZXJ2ZXIgdXNlcyBMMkosIGEgUHJvamVjdCBmb3VuZGVkIGJ5IEwyQ2hlZg=="));
 		activeChar.sendMessage(getText("YW5kIGRldmVsb3BlZCBieSBMMkogVGVhbSBhdCB3d3cubDJqc2VydmVyLmNvbQ=="));
-		activeChar.sendMessage(getText("Q29weXJpZ2h0IDIwMDQtMjAxNA=="));
-		activeChar.sendMessage(getText("VGhhbmsgeW91IGZvciAxMCB5ZWFycyE="));
+		activeChar.sendMessage(getText("Q29weXJpZ2h0IDIwMDQtMjAxNQ=="));
+		activeChar.sendMessage(getText("VGhhbmsgeW91IGZvciAxMSB5ZWFycyE="));
 		
 		SevenSigns.getInstance().sendCurrentPeriodMsg(activeChar);
 		AnnouncementsTable.getInstance().showAnnouncements(activeChar);