Рейтинг темы:
  • 0 Голос(ов) - 0 в среднем
  • 1
  • 2
  • 3
  • 4
  • 5
[CORE] Not use skill's weapon condition for NPC
#1
Уважаемые форумчане.

Возник вопрос следующего плана:

Нужно исключить проверку на оружие при использовании скилов, для НПСов.
Т.е если НПС использует скил X, у которого в качестве проверки стоит определенный тип оружия, то эта проверка бы для него не применялась.

Нашел сам файл проверки:
ConditionTargetUsesWeaponKind.java

Код:
package org.inc.gameserver.skills.conditions;
/* Импорты */
import org.inc.gameserver.skills.Env;
import org.inc.gameserver.templates.item.L2Weapon;


public class ConditionTargetUsesWeaponKind extends Condition
{
    
    private final int _weaponMask;

    
    public ConditionTargetUsesWeaponKind(int weaponMask)
    {
        _weaponMask = weaponMask;/* Как я понял инициализация переменной */
    }
    
       /* Как я понял сама проверка */
    @Override
    public boolean testImpl(Env env)
    {
        
        if (env.target == null)
            return false;/* Т.е если target пуста, то возвращаем false */
        
        L2Weapon item = env.target.getActiveWeaponItem(); /* Инициализация item с присвоением значения env.target.getActiveWeaponItem(); */
        
        if (item == null)/* Если итема нет, то возвращаем false */
            return false;
        
        return (item.getItemType().mask() & _weaponMask) != 0; /* Возращает сравнение типа оружия(item.getItemType().mask()) и _weaponMask  Как оно работает я не понял. */
    }
}


Код:
return (item.getItemType().mask() & _weaponMask) != 0;

Как можно в этом куске добавить проверку на тип target, чтобы оно не просто отсылало false, а отсылало валидный результат для обработчика?

PS: Я путаюсь в терминах, поэтому могу что-то обозвать не так Big Grin

Исходники L2j-L2inc

С уважением.
Ответ
#2
Код:
@Override
    public boolean testImpl(Env env)
    {
        
        if (env.target == null)
            return false;
        [B]if (env instanceof L2Npc)
            return true;[/B]
...
Ответ


Возможно похожие темы ...
Тема Автор Ответы Просмотры Последний пост
  Серьга Орфена Classic skill id="3560" virusoflove 8 3,292 02-26-2017, 12:19 PM
Последний пост: PilotMGN
  Mass effect skill animation pindossia 2 1,742 08-16-2015, 05:00 PM
Последний пост: pindossia
  Core buffer l2j ccc 11 3,797 03-07-2015, 05:02 PM
Последний пост: ccc
  [Help]Vitality Skill Effect CriticalError 3 2,977 12-23-2014, 01:48 AM
Последний пост: Donatte
  Skill 1335 Balance Life (RebalanceHP.java) - Cardinal 76 lvl nolek 13 3,629 09-21-2014, 05:14 PM
Последний пост: nolek
  Skill/Скилл terra_inkognito 0 933 08-11-2014, 01:08 PM
Последний пост: terra_inkognito
  Add skill and update stats L2J 2 1,403 07-11-2014, 02:27 PM
Последний пост: n3k0nation
  Skill.java L2J 7 2,309 05-06-2014, 03:33 PM
Последний пост: L2J
  Skill smy55 1 1,190 08-16-2013, 04:14 PM
Последний пост: KID
  Создание нового Condition finfan 9 2,229 01-03-2013, 02:51 AM
Последний пост: ..Kirito..

Перейти к форуму:


Пользователи, просматривающие эту тему: 1 Гость(ей)