Improved some target handlers.

This commit is contained in:
MobiusDev 2017-10-12 00:00:46 +00:00
parent a1b85758ff
commit a1d3b67221
12 changed files with 36 additions and 12 deletions

View File

@ -37,6 +37,6 @@ public class Item implements ITargetTypeHandler
@Override
public L2Object getTarget(L2Character activeChar, L2Object selectedTarget, Skill skill, boolean forceUse, boolean dontMove, boolean sendMessage)
{
return null;
return (selectedTarget != null) && selectedTarget.isItem() ? selectedTarget : null;
}
}

View File

@ -48,6 +48,6 @@ public class MyParty implements ITargetTypeHandler
}
}
return null;
return activeChar;
}
}

View File

@ -21,6 +21,7 @@ import com.l2jmobius.gameserver.model.L2Object;
import com.l2jmobius.gameserver.model.actor.L2Character;
import com.l2jmobius.gameserver.model.skills.Skill;
import com.l2jmobius.gameserver.model.skills.targets.TargetType;
import com.l2jmobius.gameserver.network.SystemMessageId;
/**
* Target other things (skills with this target type appear to be disabled).
@ -37,6 +38,11 @@ public class Others implements ITargetTypeHandler
@Override
public L2Object getTarget(L2Character activeChar, L2Object selectedTarget, Skill skill, boolean forceUse, boolean dontMove, boolean sendMessage)
{
return null;
if (selectedTarget == activeChar)
{
activeChar.sendPacket(SystemMessageId.YOU_CANNOT_USE_THIS_ON_YOURSELF);
return null;
}
return selectedTarget;
}
}

View File

@ -37,6 +37,6 @@ public class Item implements ITargetTypeHandler
@Override
public L2Object getTarget(L2Character activeChar, L2Object selectedTarget, Skill skill, boolean forceUse, boolean dontMove, boolean sendMessage)
{
return null;
return (selectedTarget != null) && selectedTarget.isItem() ? selectedTarget : null;
}
}

View File

@ -48,6 +48,6 @@ public class MyParty implements ITargetTypeHandler
}
}
return null;
return activeChar;
}
}

View File

@ -21,6 +21,7 @@ import com.l2jmobius.gameserver.model.L2Object;
import com.l2jmobius.gameserver.model.actor.L2Character;
import com.l2jmobius.gameserver.model.skills.Skill;
import com.l2jmobius.gameserver.model.skills.targets.TargetType;
import com.l2jmobius.gameserver.network.SystemMessageId;
/**
* Target other things (skills with this target type appear to be disabled).
@ -37,6 +38,11 @@ public class Others implements ITargetTypeHandler
@Override
public L2Object getTarget(L2Character activeChar, L2Object selectedTarget, Skill skill, boolean forceUse, boolean dontMove, boolean sendMessage)
{
return null;
if (selectedTarget == activeChar)
{
activeChar.sendPacket(SystemMessageId.YOU_CANNOT_USE_THIS_ON_YOURSELF);
return null;
}
return selectedTarget;
}
}

View File

@ -37,6 +37,6 @@ public class Item implements ITargetTypeHandler
@Override
public L2Object getTarget(L2Character activeChar, L2Object selectedTarget, Skill skill, boolean forceUse, boolean dontMove, boolean sendMessage)
{
return null;
return (selectedTarget != null) && selectedTarget.isItem() ? selectedTarget : null;
}
}

View File

@ -48,6 +48,6 @@ public class MyParty implements ITargetTypeHandler
}
}
return null;
return activeChar;
}
}

View File

@ -21,6 +21,7 @@ import com.l2jmobius.gameserver.model.L2Object;
import com.l2jmobius.gameserver.model.actor.L2Character;
import com.l2jmobius.gameserver.model.skills.Skill;
import com.l2jmobius.gameserver.model.skills.targets.TargetType;
import com.l2jmobius.gameserver.network.SystemMessageId;
/**
* Target other things (skills with this target type appear to be disabled).
@ -37,6 +38,11 @@ public class Others implements ITargetTypeHandler
@Override
public L2Object getTarget(L2Character activeChar, L2Object selectedTarget, Skill skill, boolean forceUse, boolean dontMove, boolean sendMessage)
{
return null;
if (selectedTarget == activeChar)
{
activeChar.sendPacket(SystemMessageId.YOU_CANNOT_USE_THIS_ON_YOURSELF);
return null;
}
return selectedTarget;
}
}

View File

@ -37,6 +37,6 @@ public class Item implements ITargetTypeHandler
@Override
public L2Object getTarget(L2Character activeChar, L2Object selectedTarget, Skill skill, boolean forceUse, boolean dontMove, boolean sendMessage)
{
return null;
return (selectedTarget != null) && selectedTarget.isItem() ? selectedTarget : null;
}
}

View File

@ -48,6 +48,6 @@ public class MyParty implements ITargetTypeHandler
}
}
return null;
return activeChar;
}
}

View File

@ -21,6 +21,7 @@ import com.l2jmobius.gameserver.model.L2Object;
import com.l2jmobius.gameserver.model.actor.L2Character;
import com.l2jmobius.gameserver.model.skills.Skill;
import com.l2jmobius.gameserver.model.skills.targets.TargetType;
import com.l2jmobius.gameserver.network.SystemMessageId;
/**
* Target other things (skills with this target type appear to be disabled).
@ -37,6 +38,11 @@ public class Others implements ITargetTypeHandler
@Override
public L2Object getTarget(L2Character activeChar, L2Object selectedTarget, Skill skill, boolean forceUse, boolean dontMove, boolean sendMessage)
{
return null;
if (selectedTarget == activeChar)
{
activeChar.sendPacket(SystemMessageId.YOU_CANNOT_USE_THIS_ON_YOURSELF);
return null;
}
return selectedTarget;
}
}