Перейти к содержанию
Авторизация  
CalypsoToolz

Аи Мобов

Рекомендуемые сообщения

Всем привет. В общем хотел бы узнать - как сделать так, чтобы моб, при получении повреждений от моба, агрился на него (и рядом стоящие мобы с этой же фракции) так же как и на простого игрока?

 

Вот код аи:

package scripts.ai;

 

import l2n.game.ai.CtrlIntention;

import l2n.game.ai.Fighter;

import l2n.game.model.actor.L2Character;

import l2n.game.model.L2World;

import l2n.game.model.instances.L2NpcInstance;

import l2n.util.Rnd;

 

public class GludioGuard extends Fighter

{

private long _lastAttackTime = 0;

private static final long NextAttack = 10 * 1000; // 10 сек

private L2NpcInstance monster;

private static final int[] NPC_GLUDIO = { 18342,

18655

};

 

public GludioGuard(L2Character actor)

{

super(actor);

AI_TASK_DELAY = 500;

}

 

public boolean isGlobalAI()

{

return true;

}

 

@Override

protected boolean thinkActive()

{

L2NpcInstance actor = getActor();

if(actor == null)

return true;

if(!actor.isRunning())

startRunningTask(1000);

 

if(getIntention() == CtrlIntention.AI_INTENTION_ACTIVE)

{

if(monster == null)

for(L2NpcInstance npc : L2World.getAroundNpc(actor, 2000, 500))

if(npc.getNpcId() == NPC_GLUDIO[Rnd.get(NPC_GLUDIO.length)])

{

npc.addDamageHate(actor, 0, 500);

monster = npc;

}

if(monster != null)

{

setIntention(CtrlIntention.AI_INTENTION_ATTACK, monster);

_lastAttackTime = System.currentTimeMillis();

}

}

 

return true;

}

 

@Override

protected void onEvtDead(L2Character killer)

{

monster = null;

_lastAttackTime = 0;

super.onEvtDead(killer);

}

}

 

 

Изменено пользователем BymerOK

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Ну или хотя бы чтобы при атаке его игроком, он сразу переагривался на него.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Ну или хотя бы чтобы при атаке его игроком, он сразу переагривался на него.

 

GludioGuard причём тут? Это ведь AI гварда.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

GludioGuard причём тут? Это ведь AI гварда.

Это не AI гварда, это созданное мною аи.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Ну в общем я хочу стравить две пачки мобов между собой, щас пока только выходит так: кто то бьет, кто то просто стоит.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти
Авторизация  

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×
×
  • Создать...