07-25-2014, 10:50 AM
Хочу сделать чтобы когда на чара использовали агрессию он бежал и бил все время при действии скила, я сделал чтобы он бежал и бил, но можно нажать на любую точку земли и он уже не бежит и не бьет, вот мой код, что сделано не так?
[SRC="java"]package l2ft.gameserver.skills.effects;
import l2ft.gameserver.ai.PlayerAI;
import l2ft.gameserver.model.Effect;
import l2ft.gameserver.stats.Env;
public class EffectAggression extends Effect
{
public EffectAggression(Env env, EffectTemplate template)
{
super(env, template);
}
@Override
public void onStart()
{
super.onStart();
if(_effected.isPlayer() && _effected != _effector)
((PlayerAI) _effected.getAI()).lockTarget(_effector);
((PlayerAI) _effected.getAI()).setAttackTarget(_effector);
((PlayerAI) _effected.getAI()).Attack(_effector, false, true);
}
@Override
public void onExit()
{
super.onExit();
if(_effected.isPlayer() && _effected != _effector)
((PlayerAI) _effected.getAI()).lockTarget(null);
}
@Override
public boolean onActionTime()
{
return false;
}
}[/SRC]
[SRC="java"]package l2ft.gameserver.skills.effects;
import l2ft.gameserver.ai.PlayerAI;
import l2ft.gameserver.model.Effect;
import l2ft.gameserver.stats.Env;
public class EffectAggression extends Effect
{
public EffectAggression(Env env, EffectTemplate template)
{
super(env, template);
}
@Override
public void onStart()
{
super.onStart();
if(_effected.isPlayer() && _effected != _effector)
((PlayerAI) _effected.getAI()).lockTarget(_effector);
((PlayerAI) _effected.getAI()).setAttackTarget(_effector);
((PlayerAI) _effected.getAI()).Attack(_effector, false, true);
}
@Override
public void onExit()
{
super.onExit();
if(_effected.isPlayer() && _effected != _effector)
((PlayerAI) _effected.getAI()).lockTarget(null);
}
@Override
public boolean onActionTime()
{
return false;
}
}[/SRC]