[Новый Скилл] Что сделал не так? - Форум администраторов игровых серверов
Форум администраторов игровых серверов StormWall - Защита от DDos атак
Регистрация Мнения Справка Сообщество Календарь
Вернуться   Форум администраторов игровых серверов > MMO > Lineage II > Работа со скриптами

Работа со скриптами Помощь в редактировании и написании квестов к Java серверам, а так же эвентов.

Ответ
Опции темы
Непрочитано 30.01.2012, 19:28   #1
Аватар для finfan
fin-ex.corp

Автор темы (Топик Стартер) [Новый Скилл] Что сделал не так?

Код:
<!-- Стремительный Ястреб. Запущенная стрела, попадая в цель вызывает у неё кровотечение. Если цель, находясь под эффектом Swift Hawk передвигается, то рана расширяется и увечит еще сильнее. -->
<skill id="473" levels="3" name="Swift Hawk">
  <table name="#effectlevel">3 6 9</table>
  <table name="#power">10 20 100</table>
  <table name="#mpConsume">100 200 300</table>
  <table name="#aggro">204 214 224</table>
  <table name="#magicLvl">54 66 78</table>
  <table name="#bleedPower1">52 91 130</table>
  <table name="#bleedPower2">100 200 300</table>
  <table name="#range">1000 2000 3000</table>
  <set name="mpConsume" val="#mpConsume"/>
  <set name="magicLvl" val="#magicLvl"/>
  <set name="power" val="#power"/>
  <set name="target" val="TARGET_ONE"/>
  <set name="reuseDelay" val="1000"/>
  <set name="staticReuse" val="true"/>
  <set name="hitTime" val="2000"/>
  <set name="staticHitTime" val="true"/>
  <set name="skillType" val="BLEED"/>
  <set name="isMagic" val="false"/>
  <set name="operateType" val="OP_ACTIVE"/>
  <set name="castRange" val="#range"/>
  <set name="effectRange" val="6000"/>
  <set name="aggroPoints" val="#aggro"/>
  <set name="effectType" val="BLEED"/>
  <set name="effectLevel" val="#effectlevel"/>
  <set name="condition" val="1"/>
  <for>
	<effect count="15" name="DamOverTime" val="#bleedPower1" time="3" abnormal="bleeding"/>
	<effect noicon="1" count="8" name="DamOverTime" val="#bleedPower2" time="1" abnormal="bleeding">
      <player running="true"/>
	</effect>
  </for>
</skill>
Первый эффект естественно работает, а вот второй... когда цель передвигается, должен демажить, но увы.

Своего рода, этот скилл, должен был быть аналогом скила Rapture(Bloodseeker/DOTA). Где я тупанул, укажите на ошибки, и подскажите, если этот cond не подходит, может быть тогда лучше создать совсем новый эффект, но если так, тогда где на какие .java опираться?
finfan вне форума Отправить сообщение для finfan с помощью Skype™ Ответить с цитированием
Непрочитано 30.01.2012, 19:48   #2
Аватар для Array
Супергерой

По умолчанию Re: [Новый Скилл] Что сделал не так?

<player .../>
Это условие относится к использующему скилл.
<target .../>
К тому, на кого используется скилл.

running это именно бег, вдруг кто-то переключится на шаг(moving) - Тоже учесть.
Array вне форума Ответить с цитированием
Непрочитано 30.01.2012, 19:51   #3
Аватар для finfan
fin-ex.corp

Автор темы (Топик Стартер) Re: [Новый Скилл] Что сделал не так?

Array, увы на хрониках ИТ, этого конда не существует. Тогда я склоняюсь к тому, чтобы создать новый cond "target", но чтобы это сделать какие .java необходимо будет задействовать?
finfan вне форума Отправить сообщение для finfan с помощью Skype™ Ответить с цитированием
Непрочитано 30.01.2012, 20:16   #4
Аватар для Array
Супергерой

По умолчанию Re: [Новый Скилл] Что сделал не так?

В DocumentBase.java

По аналогии с:
    protected Condition parsePlayerCondition(Node n)
    {
        Condition cond = null;
        NamedNodeMap attrs = n.getAttributes();
        for (int i = 0; i < attrs.getLength(); i++)
        {
            Node a = attrs.item(i);
            String nodeName = a.getNodeName();
            //.......
            else if ("moving".equalsIgnoreCase(nodeName))
            {
                boolean val = Boolean.valueOf(a.getNodeValue());
                cond = joinAnd(cond, new ConditionPlayerState(CheckPlayerState.MOVING, val));
            }
            //........
        }
Code: Java
Написать в parseTargetCondition "добавление" этого состояния.

В conditions добавить ConditionTargetState.java

Наверное ещё что-то, но думаю этого пока хватит, дальше может само пойдет.
Array вне форума Ответить с цитированием
Непрочитано 30.01.2012, 21:07   #5
Изгнанные

По умолчанию Re: [Новый Скилл] Что сделал не так?

что бы не создавать новую тему спрошу тут
как добавить проверку что бы <set name="target" val="TARGET_MOB"/>
Вообщем что бы скилл работал только на моба.
extend вне форума Ответить с цитированием
Непрочитано 30.01.2012, 21:18   #6
Аватар для finfan
fin-ex.corp

Автор темы (Топик Стартер) Re: [Новый Скилл] Что сделал не так?

Если бы у тебя был Интерлюд, я бы ответил что надо писать новый таргет, к примеру TARGET_MOB, ибо на ИТ нету способностей которые бы влияли только на моба, есть особые цели типо Мертвяк или насекомое, а така, чтобы на всех мобов кроме игроков - я точно не находил
finfan вне форума Отправить сообщение для finfan с помощью Skype™ Ответить с цитированием
Непрочитано 10.02.2012, 20:39   #7
Изгнанные

По умолчанию Re: [Новый Скилл] Что сделал не так?

ну а если тупо перечислить все виды мобов и запихать их в 1 таргет?)
extend вне форума Ответить с цитированием
Непрочитано 10.02.2012, 20:50   #8
Аватар для mazillka
Пользователь

По умолчанию Re: [Новый Скилл] Что сделал не так?

Цитата:
Сообщение от extend Посмотреть сообщение
что бы не создавать новую тему спрошу тут
как добавить проверку что бы <set name="target" val="TARGET_MOB"/>
Вообщем что бы скилл работал только на моба.
мелкий пример которых в самом ядре очень много

Код:
            case TARGET_TYRANNOSAURUS:
            {
                    if(target instanceof L2MonsterInstance && ((L2MonsterInstance) target).getNpcId() == 22217 || ((L2MonsterInstance) target).getNpcId() == 22216 || ((L2MonsterInstance) target).getNpcId() == 22215)
                        return new L2Character[]
                        {
                                target
                        };
                    return null;
            }
__________________
Lineage 2 Manuals
mazillka вне форума Отправить сообщение для mazillka с помощью ICQ Отправить сообщение для mazillka с помощью Skype™ Ответить с цитированием
Непрочитано 11.02.2012, 10:43   #9
Изгнанные

По умолчанию Re: [Новый Скилл] Что сделал не так?

Это в каком файле?)
extend вне форума Ответить с цитированием
Непрочитано 11.02.2012, 11:07   #10
Аватар для mazillka
Пользователь

По умолчанию Re: [Новый Скилл] Что сделал не так?

Цитата:
Сообщение от extend Посмотреть сообщение
Это в каком файле?)
оффтоп:
Свернуть ↑Развернуть ↓
__________________
Lineage 2 Manuals
mazillka вне форума Отправить сообщение для mazillka с помощью ICQ Отправить сообщение для mazillka с помощью Skype™ Ответить с цитированием
Ответ


Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Добавить скилл onal1993 Серверная часть 2 13.05.2011 18:38
Скилл WooT Lineage II 0 19.07.2010 19:39
скилл бездны aspalt Серверная часть 3 28.04.2010 09:49
Сделал сервер, но ток еще вопрос... kogalym Lineage II 7 14.12.2009 22:51
Скилл у Варка. Project Lineage II 2 06.05.2009 21:37


© 2007–2024 «Форум администраторов игровых серверов»
Защита сайта от DDoS атак — StormWall
Работает на Булке неизвестной версии с переводом от zCarot
Текущее время: 12:29. Часовой пояс GMT +3.

Вверх