Fixed probable ConditionUsingSlotType NPE.

This commit is contained in:
MobiusDevelopment 2023-06-29 12:55:03 +03:00
parent e00b9ecf2d
commit dba2e23f72
29 changed files with 273 additions and 29 deletions

View File

@ -18,6 +18,7 @@ package org.l2jmobius.gameserver.model.conditions;
import org.l2jmobius.gameserver.model.actor.Creature;
import org.l2jmobius.gameserver.model.item.ItemTemplate;
import org.l2jmobius.gameserver.model.item.Weapon;
import org.l2jmobius.gameserver.model.skill.Skill;
/**
@ -39,6 +40,13 @@ public class ConditionUsingSlotType extends Condition
{
return false;
}
return (effector.getActiveWeaponItem().getBodyPart() & _mask) != 0;
final Weapon activeWeapon = effector.getActiveWeaponItem();
if (activeWeapon == null)
{
return false;
}
return (activeWeapon.getBodyPart() & _mask) != 0;
}
}

View File

@ -18,6 +18,7 @@ package org.l2jmobius.gameserver.model.conditions;
import org.l2jmobius.gameserver.model.actor.Creature;
import org.l2jmobius.gameserver.model.item.ItemTemplate;
import org.l2jmobius.gameserver.model.item.Weapon;
import org.l2jmobius.gameserver.model.skill.Skill;
/**
@ -39,6 +40,13 @@ public class ConditionUsingSlotType extends Condition
{
return false;
}
return (effector.getActiveWeaponItem().getBodyPart() & _mask) != 0;
final Weapon activeWeapon = effector.getActiveWeaponItem();
if (activeWeapon == null)
{
return false;
}
return (activeWeapon.getBodyPart() & _mask) != 0;
}
}

View File

@ -18,6 +18,7 @@ package org.l2jmobius.gameserver.model.conditions;
import org.l2jmobius.gameserver.model.actor.Creature;
import org.l2jmobius.gameserver.model.item.ItemTemplate;
import org.l2jmobius.gameserver.model.item.Weapon;
import org.l2jmobius.gameserver.model.skill.Skill;
/**
@ -39,6 +40,13 @@ public class ConditionUsingSlotType extends Condition
{
return false;
}
return (effector.getActiveWeaponItem().getBodyPart() & _mask) != 0;
final Weapon activeWeapon = effector.getActiveWeaponItem();
if (activeWeapon == null)
{
return false;
}
return (activeWeapon.getBodyPart() & _mask) != 0;
}
}

View File

@ -18,6 +18,7 @@ package org.l2jmobius.gameserver.model.conditions;
import org.l2jmobius.gameserver.model.actor.Creature;
import org.l2jmobius.gameserver.model.item.ItemTemplate;
import org.l2jmobius.gameserver.model.item.Weapon;
import org.l2jmobius.gameserver.model.skill.Skill;
/**
@ -39,6 +40,13 @@ public class ConditionUsingSlotType extends Condition
{
return false;
}
return (effector.getActiveWeaponItem().getBodyPart() & _mask) != 0;
final Weapon activeWeapon = effector.getActiveWeaponItem();
if (activeWeapon == null)
{
return false;
}
return (activeWeapon.getBodyPart() & _mask) != 0;
}
}

View File

@ -18,6 +18,7 @@ package org.l2jmobius.gameserver.model.conditions;
import org.l2jmobius.gameserver.model.actor.Creature;
import org.l2jmobius.gameserver.model.item.ItemTemplate;
import org.l2jmobius.gameserver.model.item.Weapon;
import org.l2jmobius.gameserver.model.skill.Skill;
/**
@ -39,6 +40,13 @@ public class ConditionUsingSlotType extends Condition
{
return false;
}
return (effector.getActiveWeaponItem().getBodyPart() & _mask) != 0;
final Weapon activeWeapon = effector.getActiveWeaponItem();
if (activeWeapon == null)
{
return false;
}
return (activeWeapon.getBodyPart() & _mask) != 0;
}
}

View File

@ -18,6 +18,7 @@ package org.l2jmobius.gameserver.model.conditions;
import org.l2jmobius.gameserver.model.actor.Creature;
import org.l2jmobius.gameserver.model.item.ItemTemplate;
import org.l2jmobius.gameserver.model.item.Weapon;
import org.l2jmobius.gameserver.model.skill.Skill;
/**
@ -39,6 +40,13 @@ public class ConditionUsingSlotType extends Condition
{
return false;
}
return (effector.getActiveWeaponItem().getBodyPart() & _mask) != 0;
final Weapon activeWeapon = effector.getActiveWeaponItem();
if (activeWeapon == null)
{
return false;
}
return (activeWeapon.getBodyPart() & _mask) != 0;
}
}

View File

@ -18,6 +18,7 @@ package org.l2jmobius.gameserver.model.conditions;
import org.l2jmobius.gameserver.model.actor.Creature;
import org.l2jmobius.gameserver.model.item.ItemTemplate;
import org.l2jmobius.gameserver.model.item.Weapon;
import org.l2jmobius.gameserver.model.skill.Skill;
/**
@ -39,6 +40,13 @@ public class ConditionUsingSlotType extends Condition
{
return false;
}
return (effector.getActiveWeaponItem().getBodyPart() & _mask) != 0;
final Weapon activeWeapon = effector.getActiveWeaponItem();
if (activeWeapon == null)
{
return false;
}
return (activeWeapon.getBodyPart() & _mask) != 0;
}
}

View File

@ -18,6 +18,7 @@ package org.l2jmobius.gameserver.model.conditions;
import org.l2jmobius.gameserver.model.actor.Creature;
import org.l2jmobius.gameserver.model.item.ItemTemplate;
import org.l2jmobius.gameserver.model.item.Weapon;
import org.l2jmobius.gameserver.model.skill.Skill;
/**
@ -39,6 +40,13 @@ public class ConditionUsingSlotType extends Condition
{
return false;
}
return (effector.getActiveWeaponItem().getBodyPart() & _mask) != 0;
final Weapon activeWeapon = effector.getActiveWeaponItem();
if (activeWeapon == null)
{
return false;
}
return (activeWeapon.getBodyPart() & _mask) != 0;
}
}

View File

@ -18,6 +18,7 @@ package org.l2jmobius.gameserver.model.conditions;
import org.l2jmobius.gameserver.model.actor.Creature;
import org.l2jmobius.gameserver.model.item.ItemTemplate;
import org.l2jmobius.gameserver.model.item.Weapon;
import org.l2jmobius.gameserver.model.skill.Skill;
/**
@ -39,6 +40,13 @@ public class ConditionUsingSlotType extends Condition
{
return false;
}
return (effector.getActiveWeaponItem().getBodyPart() & _mask) != 0;
final Weapon activeWeapon = effector.getActiveWeaponItem();
if (activeWeapon == null)
{
return false;
}
return (activeWeapon.getBodyPart() & _mask) != 0;
}
}

View File

@ -18,6 +18,7 @@ package org.l2jmobius.gameserver.model.conditions;
import org.l2jmobius.gameserver.model.actor.Creature;
import org.l2jmobius.gameserver.model.item.ItemTemplate;
import org.l2jmobius.gameserver.model.item.Weapon;
import org.l2jmobius.gameserver.model.skill.Skill;
/**
@ -39,6 +40,13 @@ public class ConditionUsingSlotType extends Condition
{
return false;
}
return (effector.getActiveWeaponItem().getBodyPart() & _mask) != 0;
final Weapon activeWeapon = effector.getActiveWeaponItem();
if (activeWeapon == null)
{
return false;
}
return (activeWeapon.getBodyPart() & _mask) != 0;
}
}

View File

@ -18,6 +18,7 @@ package org.l2jmobius.gameserver.model.conditions;
import org.l2jmobius.gameserver.model.actor.Creature;
import org.l2jmobius.gameserver.model.item.ItemTemplate;
import org.l2jmobius.gameserver.model.item.Weapon;
import org.l2jmobius.gameserver.model.skill.Skill;
/**
@ -39,6 +40,13 @@ public class ConditionUsingSlotType extends Condition
{
return false;
}
return (effector.getActiveWeaponItem().getBodyPart() & _mask) != 0;
final Weapon activeWeapon = effector.getActiveWeaponItem();
if (activeWeapon == null)
{
return false;
}
return (activeWeapon.getBodyPart() & _mask) != 0;
}
}

View File

@ -18,6 +18,7 @@ package org.l2jmobius.gameserver.model.conditions;
import org.l2jmobius.gameserver.model.actor.Creature;
import org.l2jmobius.gameserver.model.item.ItemTemplate;
import org.l2jmobius.gameserver.model.item.Weapon;
import org.l2jmobius.gameserver.model.skill.Skill;
/**
@ -39,6 +40,13 @@ public class ConditionUsingSlotType extends Condition
{
return false;
}
return (effector.getActiveWeaponItem().getBodyPart() & _mask) != 0;
final Weapon activeWeapon = effector.getActiveWeaponItem();
if (activeWeapon == null)
{
return false;
}
return (activeWeapon.getBodyPart() & _mask) != 0;
}
}

View File

@ -18,6 +18,7 @@ package org.l2jmobius.gameserver.model.conditions;
import org.l2jmobius.gameserver.model.actor.Creature;
import org.l2jmobius.gameserver.model.item.ItemTemplate;
import org.l2jmobius.gameserver.model.item.Weapon;
import org.l2jmobius.gameserver.model.skill.Skill;
/**
@ -35,6 +36,17 @@ public class ConditionUsingSlotType extends Condition
@Override
public boolean testImpl(Creature effector, Creature effected, Skill skill, ItemTemplate item)
{
return (effector != null) && effector.isPlayer() && ((effector.getActiveWeaponItem().getBodyPart() & _mask) != 0);
if ((effector == null) || !effector.isPlayer())
{
return false;
}
final Weapon activeWeapon = effector.getActiveWeaponItem();
if (activeWeapon == null)
{
return false;
}
return (activeWeapon.getBodyPart() & _mask) != 0;
}
}

View File

@ -18,6 +18,7 @@ package org.l2jmobius.gameserver.model.conditions;
import org.l2jmobius.gameserver.model.actor.Creature;
import org.l2jmobius.gameserver.model.item.ItemTemplate;
import org.l2jmobius.gameserver.model.item.Weapon;
import org.l2jmobius.gameserver.model.skill.Skill;
/**
@ -35,6 +36,17 @@ public class ConditionUsingSlotType extends Condition
@Override
public boolean testImpl(Creature effector, Creature effected, Skill skill, ItemTemplate item)
{
return (effector != null) && effector.isPlayer() && ((effector.getActiveWeaponItem().getBodyPart() & _mask) != 0);
if ((effector == null) || !effector.isPlayer())
{
return false;
}
final Weapon activeWeapon = effector.getActiveWeaponItem();
if (activeWeapon == null)
{
return false;
}
return (activeWeapon.getBodyPart() & _mask) != 0;
}
}

View File

@ -18,6 +18,7 @@ package org.l2jmobius.gameserver.model.conditions;
import org.l2jmobius.gameserver.model.actor.Creature;
import org.l2jmobius.gameserver.model.item.ItemTemplate;
import org.l2jmobius.gameserver.model.item.Weapon;
import org.l2jmobius.gameserver.model.skill.Skill;
/**
@ -35,6 +36,17 @@ public class ConditionUsingSlotType extends Condition
@Override
public boolean testImpl(Creature effector, Creature effected, Skill skill, ItemTemplate item)
{
return (effector != null) && effector.isPlayer() && ((effector.getActiveWeaponItem().getBodyPart() & _mask) != 0);
if ((effector == null) || !effector.isPlayer())
{
return false;
}
final Weapon activeWeapon = effector.getActiveWeaponItem();
if (activeWeapon == null)
{
return false;
}
return (activeWeapon.getBodyPart() & _mask) != 0;
}
}

View File

@ -18,6 +18,7 @@ package org.l2jmobius.gameserver.model.conditions;
import org.l2jmobius.gameserver.model.actor.Creature;
import org.l2jmobius.gameserver.model.item.ItemTemplate;
import org.l2jmobius.gameserver.model.item.Weapon;
import org.l2jmobius.gameserver.model.skill.Skill;
/**
@ -39,6 +40,13 @@ public class ConditionUsingSlotType extends Condition
{
return false;
}
return (effector.getActiveWeaponItem().getBodyPart() & _mask) != 0;
final Weapon activeWeapon = effector.getActiveWeaponItem();
if (activeWeapon == null)
{
return false;
}
return (activeWeapon.getBodyPart() & _mask) != 0;
}
}

View File

@ -18,6 +18,7 @@ package org.l2jmobius.gameserver.model.conditions;
import org.l2jmobius.gameserver.model.actor.Creature;
import org.l2jmobius.gameserver.model.item.ItemTemplate;
import org.l2jmobius.gameserver.model.item.Weapon;
import org.l2jmobius.gameserver.model.skill.Skill;
/**
@ -39,6 +40,13 @@ public class ConditionUsingSlotType extends Condition
{
return false;
}
return (effector.getActiveWeaponItem().getBodyPart() & _mask) != 0;
final Weapon activeWeapon = effector.getActiveWeaponItem();
if (activeWeapon == null)
{
return false;
}
return (activeWeapon.getBodyPart() & _mask) != 0;
}
}

View File

@ -18,6 +18,7 @@ package org.l2jmobius.gameserver.model.conditions;
import org.l2jmobius.gameserver.model.actor.Creature;
import org.l2jmobius.gameserver.model.item.ItemTemplate;
import org.l2jmobius.gameserver.model.item.Weapon;
import org.l2jmobius.gameserver.model.skill.Skill;
/**
@ -39,6 +40,13 @@ public class ConditionUsingSlotType extends Condition
{
return false;
}
return (effector.getActiveWeaponItem().getBodyPart() & _mask) != 0;
final Weapon activeWeapon = effector.getActiveWeaponItem();
if (activeWeapon == null)
{
return false;
}
return (activeWeapon.getBodyPart() & _mask) != 0;
}
}

View File

@ -18,6 +18,7 @@ package org.l2jmobius.gameserver.model.conditions;
import org.l2jmobius.gameserver.model.actor.Creature;
import org.l2jmobius.gameserver.model.item.ItemTemplate;
import org.l2jmobius.gameserver.model.item.Weapon;
import org.l2jmobius.gameserver.model.skill.Skill;
/**
@ -39,6 +40,13 @@ public class ConditionUsingSlotType extends Condition
{
return false;
}
return (effector.getActiveWeaponItem().getBodyPart() & _mask) != 0;
final Weapon activeWeapon = effector.getActiveWeaponItem();
if (activeWeapon == null)
{
return false;
}
return (activeWeapon.getBodyPart() & _mask) != 0;
}
}

View File

@ -18,6 +18,7 @@ package org.l2jmobius.gameserver.model.conditions;
import org.l2jmobius.gameserver.model.actor.Creature;
import org.l2jmobius.gameserver.model.item.ItemTemplate;
import org.l2jmobius.gameserver.model.item.Weapon;
import org.l2jmobius.gameserver.model.skill.Skill;
/**
@ -39,6 +40,13 @@ public class ConditionUsingSlotType extends Condition
{
return false;
}
return (effector.getActiveWeaponItem().getBodyPart() & _mask) != 0;
final Weapon activeWeapon = effector.getActiveWeaponItem();
if (activeWeapon == null)
{
return false;
}
return (activeWeapon.getBodyPart() & _mask) != 0;
}
}

View File

@ -18,6 +18,7 @@ package org.l2jmobius.gameserver.model.conditions;
import org.l2jmobius.gameserver.model.actor.Creature;
import org.l2jmobius.gameserver.model.item.ItemTemplate;
import org.l2jmobius.gameserver.model.item.Weapon;
import org.l2jmobius.gameserver.model.skill.Skill;
/**
@ -39,6 +40,13 @@ public class ConditionUsingSlotType extends Condition
{
return false;
}
return (effector.getActiveWeaponItem().getBodyPart() & _mask) != 0;
final Weapon activeWeapon = effector.getActiveWeaponItem();
if (activeWeapon == null)
{
return false;
}
return (activeWeapon.getBodyPart() & _mask) != 0;
}
}

View File

@ -18,6 +18,7 @@ package org.l2jmobius.gameserver.model.conditions;
import org.l2jmobius.gameserver.model.actor.Creature;
import org.l2jmobius.gameserver.model.item.ItemTemplate;
import org.l2jmobius.gameserver.model.item.Weapon;
import org.l2jmobius.gameserver.model.skill.Skill;
/**
@ -39,6 +40,13 @@ public class ConditionUsingSlotType extends Condition
{
return false;
}
return (effector.getActiveWeaponItem().getBodyPart() & _mask) != 0;
final Weapon activeWeapon = effector.getActiveWeaponItem();
if (activeWeapon == null)
{
return false;
}
return (activeWeapon.getBodyPart() & _mask) != 0;
}
}

View File

@ -18,6 +18,7 @@ package org.l2jmobius.gameserver.model.conditions;
import org.l2jmobius.gameserver.model.actor.Creature;
import org.l2jmobius.gameserver.model.item.ItemTemplate;
import org.l2jmobius.gameserver.model.item.Weapon;
import org.l2jmobius.gameserver.model.skill.Skill;
/**
@ -39,6 +40,13 @@ public class ConditionUsingSlotType extends Condition
{
return false;
}
return (effector.getActiveWeaponItem().getBodyPart() & _mask) != 0;
final Weapon activeWeapon = effector.getActiveWeaponItem();
if (activeWeapon == null)
{
return false;
}
return (activeWeapon.getBodyPart() & _mask) != 0;
}
}

View File

@ -18,6 +18,7 @@ package org.l2jmobius.gameserver.model.conditions;
import org.l2jmobius.gameserver.model.actor.Creature;
import org.l2jmobius.gameserver.model.item.ItemTemplate;
import org.l2jmobius.gameserver.model.item.Weapon;
import org.l2jmobius.gameserver.model.skill.Skill;
/**
@ -39,6 +40,13 @@ public class ConditionUsingSlotType extends Condition
{
return false;
}
return (effector.getActiveWeaponItem().getBodyPart() & _mask) != 0;
final Weapon activeWeapon = effector.getActiveWeaponItem();
if (activeWeapon == null)
{
return false;
}
return (activeWeapon.getBodyPart() & _mask) != 0;
}
}

View File

@ -18,6 +18,7 @@ package org.l2jmobius.gameserver.model.conditions;
import org.l2jmobius.gameserver.model.actor.Creature;
import org.l2jmobius.gameserver.model.item.ItemTemplate;
import org.l2jmobius.gameserver.model.item.Weapon;
import org.l2jmobius.gameserver.model.skill.Skill;
/**
@ -39,6 +40,13 @@ public class ConditionUsingSlotType extends Condition
{
return false;
}
return (effector.getActiveWeaponItem().getBodyPart() & _mask) != 0;
final Weapon activeWeapon = effector.getActiveWeaponItem();
if (activeWeapon == null)
{
return false;
}
return (activeWeapon.getBodyPart() & _mask) != 0;
}
}

View File

@ -18,6 +18,7 @@ package org.l2jmobius.gameserver.model.conditions;
import org.l2jmobius.gameserver.model.actor.Creature;
import org.l2jmobius.gameserver.model.item.ItemTemplate;
import org.l2jmobius.gameserver.model.item.Weapon;
import org.l2jmobius.gameserver.model.skill.Skill;
/**
@ -39,6 +40,13 @@ public class ConditionUsingSlotType extends Condition
{
return false;
}
return (effector.getActiveWeaponItem().getBodyPart() & _mask) != 0;
final Weapon activeWeapon = effector.getActiveWeaponItem();
if (activeWeapon == null)
{
return false;
}
return (activeWeapon.getBodyPart() & _mask) != 0;
}
}

View File

@ -18,6 +18,7 @@ package org.l2jmobius.gameserver.model.conditions;
import org.l2jmobius.gameserver.model.actor.Creature;
import org.l2jmobius.gameserver.model.item.ItemTemplate;
import org.l2jmobius.gameserver.model.item.Weapon;
import org.l2jmobius.gameserver.model.skill.Skill;
/**
@ -39,6 +40,13 @@ public class ConditionUsingSlotType extends Condition
{
return false;
}
return (effector.getActiveWeaponItem().getBodyPart() & _mask) != 0;
final Weapon activeWeapon = effector.getActiveWeaponItem();
if (activeWeapon == null)
{
return false;
}
return (activeWeapon.getBodyPart() & _mask) != 0;
}
}

View File

@ -18,6 +18,7 @@ package org.l2jmobius.gameserver.model.conditions;
import org.l2jmobius.gameserver.model.actor.Creature;
import org.l2jmobius.gameserver.model.item.ItemTemplate;
import org.l2jmobius.gameserver.model.item.Weapon;
import org.l2jmobius.gameserver.model.skill.Skill;
/**
@ -39,6 +40,13 @@ public class ConditionUsingSlotType extends Condition
{
return false;
}
return (effector.getActiveWeaponItem().getBodyPart() & _mask) != 0;
final Weapon activeWeapon = effector.getActiveWeaponItem();
if (activeWeapon == null)
{
return false;
}
return (activeWeapon.getBodyPart() & _mask) != 0;
}
}

View File

@ -18,6 +18,7 @@ package org.l2jmobius.gameserver.model.conditions;
import org.l2jmobius.gameserver.model.actor.Creature;
import org.l2jmobius.gameserver.model.item.ItemTemplate;
import org.l2jmobius.gameserver.model.item.Weapon;
import org.l2jmobius.gameserver.model.skill.Skill;
/**
@ -39,6 +40,13 @@ public class ConditionUsingSlotType extends Condition
{
return false;
}
return (effector.getActiveWeaponItem().getBodyPart() & _mask) != 0;
final Weapon activeWeapon = effector.getActiveWeaponItem();
if (activeWeapon == null)
{
return false;
}
return (activeWeapon.getBodyPart() & _mask) != 0;
}
}