Skip to content
La2Base
Home
DownloadsWikiForumFAQ
Search
ruen
Sign up Login
HomeFilesWikiLogin
  • Home
  • Downloads
  • Wiki
  • FAQ
  • Contact Us
  • About
  • Rules
  • Privacy
  • Terms of Service

© 2026 la2base.com · All rights reserved

ruen
Forum/Квесты/[ai]Закен
Search

[ai]Закен

7 replies140 viewsCurrently viewing: 1
A
Abstract3D
· 01/22/2010, 11:48 AM

Вообщем, не совсем относится к этой теме, но всё же - Кто может поделиться хорошим AI для Zaken'a лучше всего для L2JFree? Без разницы какой формат Py или Java. Заранее благодарю.

0
Руслан
Руслан

Moderator

Ветеран

Posts: 1201

На форуме с: 12/14/2007

Репутация: +775

Рейтинг: 0

· 01/22/2010, 11:59 AM

Ну вот хороший АИ из SC сборок на основе Ребы на Яве.

Работает все как положено:

Zaken.java

Код
package ai;

import sc.ext.listeners.DayNightChangeListener;
import sc.ext.listeners.L2ZoneEnterLeaveListener;
import sc.ext.listeners.PropertyCollection;
import sc.game.GameTimeController;
import sc.game.ai.Fighter;
import sc.game.instancemanager.ZoneManager;
import sc.game.model.L2Character;
import sc.game.model.L2Object;
import sc.game.model.L2Zone;
import sc.game.model.L2Zone.ZoneType;
import sc.game.model.instances.L2NpcInstance;

/**
* Индивидуальное АИ эпик боса Zaken.<BR> - неуязвим ночью<BR> - получает 25% пенальти на регены солнечной комнате - зона zaken_sunlight_room, id: 1335
*
*/
public class Zaken extends Fighter implements PropertyCollection
{
    private static final L2Zone _zone = ZoneManager.getInstance().getZoneById(ZoneType.no_restart, 1335, true);
    private ZoneListener _zoneListener = new ZoneListener();
    private final float _baseHpReg;
    private final float _baseMpReg;

    public Zaken(L2Character actor)
    {
        super(actor);
        GameTimeController.getInstance().getListenerEngine().addPropertyChangeListener(GameTimeControllerDayNightChange, new NightInvulDayNightListener());
        _zone.getListenerEngine().addMethodInvokedListener(_zoneListener);
        _baseHpReg = actor.getTemplate().baseHpReg;
        _baseMpReg = actor.getTemplate().baseMpReg;
    }

    private class NightInvulDayNightListener extends DayNightChangeListener
    {
        private NightInvulDayNightListener()
        {
            if(GameTimeController.getInstance().isNowNight())
                switchToNight();
            else
                switchToDay();
        }

        /**
         * Вызывается, когда на сервере наступает ночь
         */
        @Override
        public void switchToNight()
        {
            L2NpcInstance actor = getActor();
            if(actor != null)
                actor.setIsInvul(true);
        }

        /**
         * Вызывается, когда на сервере наступает день
         */
        @Override
        public void switchToDay()
        {
            L2NpcInstance actor = getActor();
            if(actor != null)
                actor.setIsInvul(false);
        }
    }

    private class ZoneListener extends L2ZoneEnterLeaveListener
    {
        @Override
        public void objectEntered(L2Zone zone, L2Object object)
        {
            L2NpcInstance actor = getActor();
            if(actor == null)
                return;
            // Регены снижаем в любое время суток, все равно закен ночью бессмертен
            // что бы лишний раз не дергать GameTimeController
            actor.getTemplate().baseHpReg = (float) (_baseHpReg * 0.75);
            actor.getTemplate().baseMpReg = (float) (_baseMpReg * 0.75);
        }

        @Override
        public void objectLeaved(L2Zone zone, L2Object object)
        {
            L2NpcInstance actor = getActor();
            if(actor == null)
                return;
            actor.getTemplate().baseHpReg = _baseHpReg;
            actor.getTemplate().baseMpReg = _baseMpReg;
        }
    }

    @Override
    protected void onEvtDead()
    {
        _zone.getListenerEngine().removeMethodInvokedListener(_zoneListener);
        super.onEvtDead();
    }
}

На Форуме я тоже Radar!
Я везде Radar!

0
A
Abstract3D
· 01/22/2010, 12:02 PM

Как бы этот AI выдран командой SC со сборки Next Gen)) Мне просто не подходит Rebbelion скрипты, нужны стандарт L2J (L2JServer или L2JFree или Emu) Вообщем типо этого. Но всё равно спасибо.

0
Руслан
Руслан

Moderator

Ветеран

Posts: 1201

На форуме с: 12/14/2007

Репутация: +775

Рейтинг: 0

· 01/22/2010, 12:06 PM

Abstract3D: Как бы этот AI выдран командой SC со сборки Next Gen))


А Некст Ген у Дрима, Дрим у Феникса,... бабка за дедку, дедка за репку))))
Концов и не найдешь.
russian_roulette.gif

На Форуме я тоже Radar!
Я везде Radar!

0
LeoNius
LeoNius

User

Бывалый

Posts: 246

На форуме с: 08/04/2009

Репутация: +6

Рейтинг: 0

· 01/22/2010, 12:18 PM

Вот глянь...

_http://dump.ru/file/4194858

0
A
Abstract3D
· 01/22/2010, 12:34 PM

LeoNius: Вот глянь...

_http://dump.ru/file/4194858


thx

0
Y
yrik
· 02/02/2010, 10:25 PM

народ подскажите плиз куда его вставлять в сборке L2Emu_3261_CT1_FinaL

0
Войдите или зарегистрируйтесь чтобы ответить