|
@@ -15,10 +15,11 @@
|
|
|
package handlers.targethandlers;
|
|
|
|
|
|
import com.l2jserver.gameserver.handler.ITargetTypeHandler;
|
|
|
+import com.l2jserver.gameserver.instancemanager.CastleManager;
|
|
|
import com.l2jserver.gameserver.model.L2Object;
|
|
|
import com.l2jserver.gameserver.model.actor.L2Character;
|
|
|
-import com.l2jserver.gameserver.model.actor.instance.L2ArtefactInstance;
|
|
|
import com.l2jserver.gameserver.model.actor.instance.L2PcInstance;
|
|
|
+import com.l2jserver.gameserver.model.entity.Castle;
|
|
|
import com.l2jserver.gameserver.model.skills.L2Skill;
|
|
|
import com.l2jserver.gameserver.model.skills.targets.L2TargetType;
|
|
|
|
|
@@ -30,13 +31,18 @@ public class TargetHoly implements ITargetTypeHandler
|
|
|
@Override
|
|
|
public L2Object[] getTargetList(L2Skill skill, L2Character activeChar, boolean onlyFirst, L2Character target)
|
|
|
{
|
|
|
- if (activeChar instanceof L2PcInstance)
|
|
|
- {
|
|
|
- if (target instanceof L2ArtefactInstance)
|
|
|
- return new L2Character[] { target };
|
|
|
- }
|
|
|
+ if (!activeChar.isPlayer())
|
|
|
+ return _emptyTargetList;
|
|
|
+
|
|
|
+ final L2PcInstance player = activeChar.getActingPlayer();
|
|
|
+ final Castle castle = CastleManager.getInstance().getCastle(player);
|
|
|
+ if (player.getClan() == null || castle == null || !player.checkIfOkToCastSealOfRule(castle, true, skill, target))
|
|
|
+ return _emptyTargetList;
|
|
|
|
|
|
- return _emptyTargetList;
|
|
|
+ return new L2Object[]
|
|
|
+ {
|
|
|
+ activeChar.getTarget()
|
|
|
+ };
|
|
|
}
|
|
|
|
|
|
@Override
|