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

mass-sweep кто может помочь сделать?

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

<skill id="444" levels="1" name="Festive Sweeper">
  <set name="mpConsume" val="12"/>
  <set name="skillRadius" val="85"/>
  <set name="target" val="TARGET_AREA_CORPSE_MOB"/>
  <set name="skillType" val="SWEEP"/>
  <set name="operateType" val="OP_ACTIVE"/>
  <set name="reuseDelay" val="23000"/>
  <set name="hitTime" val="500"/>
</skill>

 

L2Skill.java

case TARGET_AREA_CORPSE_MOB: {
                    if ((!(target instanceof L2Attackable)) || !target.isDead()) {
                        activeChar.sendPacket(SystemMessageId.TARGET_IS_INCORRECT);
                        return null;
                    }
                    if (!onlyFirst) {
                        targetList.add(target);
                    } else {
                        return new L2Character[]{target};
                    }

                    boolean srcInArena = (activeChar.isInsideZone(L2Zone.FLAG_PVP) && !activeChar.isInsideZone(L2Zone.FLAG_SIEGE));

                    L2PcInstance trg = null;
                    L2PcInstance src = activeChar.getPlayer();

                    for (L2Object obj : activeChar.getKnownList().getKnownObjects().values()) {
                        if (!(obj instanceof L2Attackable || obj instanceof L2PlayableInstance) || ((L2Character) obj).isDead() || obj == activeChar) {
                            continue;
                        }

                        if (obj instanceof L2Summon) {
                            continue;
                        }

                        if (!Util.checkIfInRange(getSkillRadius(), target, obj, true)) {
                            continue;
                        }

                        if (src != null && (trg = obj.getPlayer()) != null) {

                            if ((src.getParty() != null && trg.getParty() != null) && src.getParty().getPartyLeaderOID() == trg.getParty().getPartyLeaderOID()) {
                                continue;
                            }

                            if (trg.isInsideZone(L2Zone.FLAG_PEACE)) {
                                continue;
                            }

                            if (!srcInArena && !(((L2Character) obj).isInsideZone(L2Zone.FLAG_PVP) && !((L2Character) obj).isInsideZone(L2Zone.FLAG_SIEGE))) {
                                if (src.getAllyId() == trg.getAllyId() && src.getAllyId() != 0) {
                                    continue;
                                }

                                if (src.getClan() != null && trg.getClan() != null) {
                                    if (src.getClan().getClanId() == trg.getClan().getClanId()) {
                                        continue;
                                    }
                                }

                                if (!src.checkPvpSkill(obj, this)) {
                                    continue;
                                }
                            }
                            /*if (obj instanceof L2Summon) {
                            
                             if (((L2Summon) obj).isInsideZone(L2Zone.FLAG_PEACE)) {
                             continue;
                             }
                             }*/
                        }
                        if (!GeoEngine.canSeeTarget(activeChar, obj, false)) {
                            continue;
                        }

                        targetList.add((L2Character) obj);
                    }
                    if (targetList.isEmpty()) {
                        return null;
                    }
                    return targetList.moveToArray(new L2Character[targetList.size()]);
                }
                
  • Upvote 2

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


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

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти
Авторизация  

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

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

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