123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657 |
- /**
- *
- */
- package handlers.targethandlers;
- import java.util.List;
- import javolution.util.FastList;
- import com.l2jserver.gameserver.handler.ISkillTargetTypeHandler;
- import com.l2jserver.gameserver.model.L2Object;
- import com.l2jserver.gameserver.model.L2Skill;
- import com.l2jserver.gameserver.model.L2Skill.SkillTargetType;
- import com.l2jserver.gameserver.model.actor.L2Character;
- import com.l2jserver.gameserver.model.actor.L2Npc;
- import com.l2jserver.gameserver.model.actor.instance.L2SummonInstance;
- import com.l2jserver.gameserver.network.SystemMessageId;
- import com.l2jserver.gameserver.network.serverpackets.SystemMessage;
- /**
- * @author UnAfraid
- *
- */
- public class TargetUndead implements ISkillTargetTypeHandler
- {
- @Override
- public L2Object[] getTargetList(L2Skill skill, L2Character activeChar, boolean onlyFirst, L2Character target)
- {
- List<L2Character> targetList = new FastList<L2Character>();
- if (target instanceof L2Npc || target instanceof L2SummonInstance)
- {
- if (!target.isUndead() || target.isDead())
- {
- activeChar.sendPacket(SystemMessage.getSystemMessage(SystemMessageId.TARGET_IS_INCORRECT));
- return _emptyTargetList;
- }
-
- if (!onlyFirst)
- targetList.add(target);
- else
- return new L2Character[] { target };
-
- return targetList.toArray(new L2Object[targetList.size()]);
- }
- else
- {
- activeChar.sendPacket(SystemMessage.getSystemMessage(SystemMessageId.TARGET_IS_INCORRECT));
- return _emptyTargetList;
- }
- }
-
- @Override
- public Enum<SkillTargetType> getTargetType()
- {
- return SkillTargetType.TARGET_UNDEAD;
- }
- }
|