Простейший способ - запускать в аи нпс при спавне таск с нужной задержкой и при его срабатывании удалять этого нпс.
Например один из вариантов - удалит нпс через 2 часа после спавна:
@Override
protected void onEvtSpawn()
{
super.onEvtSpawn();
ThreadPoolManager.getInstance().schedule(new Runnable()
{
@Override
public void run()
{
getActor().deleteMe();
}
}, 2 * 60 * 60 * 1000L);
}
Или еще можно так, если в аи есть методы работы с таймерами, а они вроде почти в любой сборке есть:
@Override
protected void onEvtSpawn()
{
super.onEvtSpawn();
addTimer(666, 2 * 60 * 60 * 1000L);
}
@Override
protected void onEvtTimer(int timerId, Object arg1, Object arg2)
{
if (timerId == 666)
getActor().deleteMe();
}