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

Nodebuff

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

дайте скил блок баф под интерлуде)

самому написать не как?

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


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

Block Buff

В этой теме покажу как сделать скилл Block Buff.

 

Для начала добавим в какой-либо конфиг-файл такие строчки:

# ID скилла, который блокирует наложение баффов - Block Buff

IDBlockBuff=9999

Далее добавим этот же конфиг в ядро - Config.java:

*объявляем

public static int ID_BLOCK_BUFF;

*инициализируем

ID_BLOCK_BUFF = Integer.parseInt(Имя_конфига.getProperty("IDBlockBuff", "9999"));

Далее, переходим в net\sf\l2j\gameserver\model\L2Character.java (net\sf\l2j может отличаться в зависимости от сборки). Находим кусок кода:

public final void addEffect(L2Effect newEffect)

{

if(newEffect == null) return;

и преобразовываем его так:

public final void addEffect(L2Effect newEffect)

{

if(newEffect == null) return;

 

if (this.getFirstEffect(Config.ID_BLOCK_BUFF) != null)

{

if (newEffect.getSkill().getSkillType() == L2Skill.SkillType.BUFF)

{

return;

}

}

Сохраняем, компилируем. Осталось прикрутить скилл в датапаке. Как вариант, вместо скилла Lucky:

<skill id="194" levels="1" name="BlockBuff">

<table name="#mpConsume_Init"> 0 </table>

<set name="mpInitialConsume" val="#mpConsume_Init"/>

<set name="power" val="0.0"/>

<set name="target" val="TARGET_SELF"/>

<set name="skillType" val="CONT"/>

<set name="operateType" val="OP_TOGGLE"/>

<set name="castRange" val="-1"/>

<set name="effectRange" val="-1"/>

<for>

<effect count="0x7fffffff" name="ManaDamOverTime" time="1" val="#mpConsume_Init">

</effect>

</for>

</skill>

Не забудьте только в конфиге поставить число 194 и изменить в клиенте сам скилл Lucky (сделать его аурой).

 

Вот вроде бы и все. Хочу сказать, что это только один из способов создания блок баффа: можно его также реализовать непосредственно написав отдельный эффект, но это уже другая история

 

Автор Lihoy, взято с форума La2base

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


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

У меня нету net\sf\l2j\gameserver\model\L2Character.java.

это net\sf\l2j\gameserver\model\L2Character$1.class пойдёт ?

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


Ссылка на сообщение
Поделиться на другие сайты
У меня нету net\sf\l2j\gameserver\model\L2Character.java.

это net\sf\l2j\gameserver\model\L2Character$1.class пойдёт ?

нет тебе нужны исходники класс формат уже закомпилен

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


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

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

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

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