Ver código fonte

Some debug info. Fix for cubic npe.

JIV 15 anos atrás
pai
commit
c55de4dbd4

+ 4 - 2
L2_GameServer/java/com/l2jserver/gameserver/model/actor/L2Character.java

@@ -2593,7 +2593,8 @@ public abstract class L2Character extends L2Object
 			}
 			catch (Exception e)
 			{
-				_log.log(Level.WARNING, "", e);
+				_log.info("NotifyAITask failed. "+ e);
+				e.printStackTrace();
 			}
 		}
 	}
@@ -6568,7 +6569,8 @@ public abstract class L2Character extends L2Object
 		}
 		catch (Exception e)
 		{
-			_log.log(Level.WARNING, "", e);
+			_log.info(getClass().getSimpleName()+": callSkill() failed. "+ e);
+			e.printStackTrace();
 		}
 	}
 	

+ 6 - 5
L2_GameServer/java/com/l2jserver/gameserver/model/actor/instance/L2CubicInstance.java

@@ -552,7 +552,8 @@ public class L2CubicInstance
 							if (!isInCubicRange(_owner, _target))
 								_target = null;
 						}
-						if ((_target != null) && (!_target.isDead()))
+						L2Character target = _target; // copy to avoid npe
+						if ((target != null) && (!target.isDead()))
 						{
 							if (Config.DEBUG)
 							{
@@ -560,16 +561,16 @@ public class L2CubicInstance
 								_log.info("Cubic Id: "
 								        + _id
 								        + " Target: "
-								        + _target.getName()
+								        + target.getName()
 								        + " distance: "
-								        + Math.sqrt(_target.getDistanceSq(_owner.getX(), _owner.getY(), _owner.getZ())));
+								        + Math.sqrt(target.getDistanceSq(_owner.getX(), _owner.getY(), _owner.getZ())));
 							}
 							
-							_owner.broadcastPacket(new MagicSkillUse(_owner, _target, skill.getId(), skill.getLevel(), 0, 0));
+							_owner.broadcastPacket(new MagicSkillUse(_owner, target, skill.getId(), skill.getLevel(), 0, 0));
 
 							L2SkillType type = skill.getSkillType();
 							ISkillHandler handler = SkillHandler.getInstance().getSkillHandler(skill.getSkillType());
-							L2Character[] targets = { _target };
+							L2Character[] targets = { target };
 							
 							if ((type == L2SkillType.PARALYZE) || (type == L2SkillType.STUN)
 							        || (type == L2SkillType.ROOT)

+ 3 - 2
L2_GameServer/java/com/l2jserver/gameserver/model/actor/instance/L2PcInstance.java

@@ -8103,7 +8103,7 @@ public final class L2PcInstance extends L2Playable
 		}
 		catch (Exception e)
 		{
-			_log.warning("Could not restore character skills: " + e);
+			_log.warning("Could not restore character "+getClient()+ " skills: " + e);
 		}
 		finally
 		{
@@ -8205,7 +8205,8 @@ public final class L2PcInstance extends L2Playable
 			statement.close();
 		}
 		catch (Exception e) {
-			_log.warning("Could not restore active effect data: " + e);
+			_log.warning("Could not restore "+getClient()+" active effect data: " + e);
+			e.printStackTrace();
 		}
 		finally {
 			try {con.close();} catch (Exception e) {}