Ищу faction guard

katowice

Выдающийся
Участник
Сообщения
107
Розыгрыши
0
Решения
1
Репутация
14
Реакции
31
Баллы
1 348
Ищу гуардов для GVE мода если есть у кого толковые скиньте пожалуйста.
 
Обратите внимание, что данный пользователь заблокирован! Не совершайте с ним никаких сделок! Перейдите в его профиль, чтобы узнать причину блокировки.
на основе обычных делай и все, просто там где проверка идет на сайлент мув добавляешь проверку на фракцию)
 
Обратите внимание, что данный пользователь заблокирован! Не совершайте с ним никаких сделок! Перейдите в его профиль, чтобы узнать причину блокировки.
Сделал из обычных гвардов вроде все норм, теперь вопрос как запретить Фракции Evil допустим бить своих гвардов?
 
Обратите внимание, что данный пользователь заблокирован! Не совершайте с ним никаких сделок! Перейдите в его профиль, чтобы узнать причину блокировки.
Там где проверки на атаку персонажей пишешь типа && instanceof L2Evil...
 
Обратите внимание, что данный пользователь заблокирован! Не совершайте с ним никаких сделок! Перейдите в его профиль, чтобы узнать причину блокировки.
Там где проверки на атаку персонажей пишешь типа && instanceof L2Evil...
Код:
Сделал вот так вот не работает
L2Character doAttack

            if (((L2PcInstance) this).isffaction() && ((L2PcInstance) target).isffaction() && (target instanceof L2GoodGuardInstance) && Config.FACTION_SYSTEM_ENABLE)
            {
               ((L2PcInstance) this).sendMessage("Cant attack a player from your faction");
                ((L2GoodGuardInstance) this).sendMessage("Cant attack a player from your faction");
               sendPacket(new ActionFailed());
               return;
            }
            if (((L2PcInstance) this).issfaction() && ((L2PcInstance) target).issfaction() && (target instanceof L2EvilGuardInstance) && Config.FACTION_SYSTEM_ENABLE)
            {
               ((L2PcInstance) this).sendMessage("Cant attack a player from your faction");
                ((L2EvilGuardInstance) this).sendMessage("Cant attack a player from your faction");
               sendPacket(new ActionFailed());
               return;
            }
L2Character.java doCast
        if ((target instanceof L2PcInstance) && (this instanceof L2PcInstance) && (target instanceof L2EvilGuardInstance) && (target instanceof L2GoodGuardInstance))
       {
        if (((L2PcInstance) this).isffaction() && (((L2PcInstance) target).isffaction() && (target instanceof L2GoodGuardInstance) && Config.FACTION_SYSTEM_ENABLE))
        {
           ((L2PcInstance) this).sendMessage("You Cannot Attack a Player From Your Faction!");
           sendPacket(new ActionFailed());
           return;
        } 
        else if (((L2PcInstance) this).isffaction() && ((((L2PcInstance) target).isffaction() && (target instanceof L2GoodGuardInstance) && Config.FACTION_SYSTEM_ENABLE && (skill.getSkillType() == L2Skill.SkillType.BUFF)) || (skill.getSkillType() == L2Skill.SkillType.HOT) || (skill.getSkillType() == L2Skill.SkillType.HEAL) || (skill.getSkillType() == L2Skill.SkillType.COMBATPOINTHEAL) || (skill.getSkillType() == L2Skill.SkillType.HEAL_PERCENT) || (skill.getSkillType() == L2Skill.SkillType.MANAHEAL) || (skill.getSkillType() == L2Skill.SkillType.BALANCE_LIFE) || (skill.getSkillType() == L2Skill.SkillType.CONT)))
        {
           return;
        }
        if (((L2PcInstance) this).issfaction() && ((L2PcInstance) target).issfaction() && (target instanceof L2EvilGuardInstance))
        {
           ((L2PcInstance) this).sendMessage("You Cannot Attack a Player From Your Faction!");
           sendPacket(new ActionFailed());
           return;
        } 
        else if (((L2PcInstance) this).issfaction() && ((((L2PcInstance) target).issfaction() && (target instanceof L2EvilGuardInstance) && Config.FACTION_SYSTEM_ENABLE && (skill.getSkillType() == L2Skill.SkillType.BUFF)) || (skill.getSkillType() == L2Skill.SkillType.HOT) || (skill.getSkillType() == L2Skill.SkillType.HEAL) || (skill.getSkillType() == L2Skill.SkillType.COMBATPOINTHEAL) || (skill.getSkillType() == L2Skill.SkillType.HEAL_PERCENT) || (skill.getSkillType() == L2Skill.SkillType.MANAHEAL) || (skill.getSkillType() == L2Skill.SkillType.BALANCE_LIFE) || (skill.getSkillType() == L2Skill.SkillType.CONT)))
        {
           return;
        }
       }
 
Код:
if ((target instanceof L2PcInstance) && (this instanceof L2PcInstance) && (target instanceof L2EvilGuardInstance) && (target instanceof L2GoodGuardInstance))
А теперь вдумайтесь в проверку, как объект может быть одновременно и персонажем и гвардом, вам нужно сделать отдельные проверки на гварда, и отдельные на персонажа, или создать общий метод в L2Character, пример getFactionType(), и проверять уже тогда по нему(не затрагивая проверки на персонажа, не забудь исключить битву 2х гвардов), для гварда он будет задаваться принудительно, для персонажей уже ваша механика.
 
Реакции: kick
Обратите внимание, что данный пользователь заблокирован! Не совершайте с ним никаких сделок! Перейдите в его профиль, чтобы узнать причину блокировки.
Код:
       if ((((target instanceof L2GoodGuardInstance)) || ((target instanceof L2EvilGuardInstance))) && ((this instanceof L2Summon)))
       {
         if ((((L2Summon)this).getOwner().isevil()) && ((target instanceof L2EvilGuardInstance)))
         {
         ((L2Summon)this).getOwner().sendMessage("Cant attack a guard from your faction");
         sendPacket(ActionFailed.STATIC_PACKET);
         return;
         }
         if ((((L2Summon)this).getOwner().isgood()) && ((target instanceof L2GoodGuardInstance)))
         {
         ((L2Summon)this).getOwner().sendMessage("Cant attack a guard from your faction");
         sendPacket(ActionFailed.STATIC_PACKET);
         return;
         }
       }
 
Обратите внимание, что данный пользователь заблокирован! Не совершайте с ним никаких сделок! Перейдите в его профиль, чтобы узнать причину блокировки.
вот короче,разберешься думаю))

Код:
// doAttack
       if ((((target instanceof L2GoodGuardInstance)) || ((target instanceof L2EvilGuardInstance))) && ((this instanceof L2Summon)))
       {
         if ((((L2Summon)this).getOwner().isevil()) && ((target instanceof L2EvilGuardInstance)))
         {
         ((L2Summon)this).getOwner().sendMessage("Cant attack a guard from your faction");
         sendPacket(ActionFailed.STATIC_PACKET);
         return;
         }
         if ((((L2Summon)this).getOwner().isgood()) && ((target instanceof L2GoodGuardInstance)))
         {
         ((L2Summon)this).getOwner().sendMessage("Cant attack a guard from your faction");
         sendPacket(ActionFailed.STATIC_PACKET);
         return;
         }
       }

      if ((((target instanceof L2GoodGuardInstance)) || ((target instanceof L2EvilGuardInstance))) && ((this instanceof L2PcInstance)))
       {
        if ((((L2PcInstance)this).isevil()) && ((target instanceof L2EvilGuardInstance)))
        {
          ((L2PcInstance)this).sendMessage("Cant attack a guard from your faction");
          sendPacket(ActionFailed.STATIC_PACKET);
           return;
        }
        if ((((L2PcInstance)this).isgood()) && ((target instanceof L2GoodGuardInstance)))
        {
           ((L2PcInstance)this).sendMessage("Cant attack a guard from your faction");
           sendPacket(ActionFailed.STATIC_PACKET);
           return;
        }
      }
//doCast
       if ((((target instanceof L2GoodGuardInstance)) || ((target instanceof L2EvilGuardInstance))) && ((this instanceof L2PcInstance)))
       {
         if ((((L2PcInstance)this).isevil()) && ((target instanceof L2EvilGuardInstance)))
         {
           ((L2PcInstance)this).sendMessage("Cant attack a guard from your faction");
           sendPacket(ActionFailed.STATIC_PACKET);
           return;
         }
         if ((((L2PcInstance)this).isgood()) && ((target instanceof L2GoodGuardInstance)))
         {
           ((L2PcInstance)this).sendMessage("Cant attack a guard from your faction");
           sendPacket(ActionFailed.STATIC_PACKET);
           return;
         }
       }


        if ((((target instanceof L2GoodGuardInstance)) || ((target instanceof L2EvilGuardInstance))) && ((this instanceof L2Summon)))
        {
           if ((((L2Summon)this).getOwner().isevil()) && ((target instanceof L2EvilGuardInstance)))
           {
             ((L2Summon)this).getOwner().sendMessage("Cant attack a guard from your faction");
             sendPacket(ActionFailed.STATIC_PACKET);
             return;
           }
           if ((((L2Summon)this).getOwner().isgood()) && ((target instanceof L2GoodGuardInstance)))
           {
             ((L2Summon)this).getOwner().sendMessage("Cant attack a guard from your faction");
             sendPacket(ActionFailed.STATIC_PACKET);
             return;
           }
        }
 
Обратите внимание, что данный пользователь заблокирован! Не совершайте с ним никаких сделок! Перейдите в его профиль, чтобы узнать причину блокировки.
При атаке скилом все норм при атаке с руки варнинг
Код:
java.lang.ClassCastException: net.sf.l2j.gameserver.model.actor.instance.L2EvilGuardInstance cannot be cast to net.sf.l2j.gameserver.model.actor.instance.L2PcInstance
    at net.sf.l2j.gameserver.model.L2Character.doAttack(L2Character.java:643)
    at net.sf.l2j.gameserver.model.L2Character$AIAccessor.doAttack(L2Character.java:3672)
    at net.sf.l2j.gameserver.model.actor.instance.L2PcInstance$AIAccessor.doAttack(L2PcInstance.java:303)
    at net.sf.l2j.gameserver.ai.L2PlayerAI.thinkAttack(L2PlayerAI.java:244)
    at net.sf.l2j.gameserver.ai.L2PlayerAI.onEvtThink(L2PlayerAI.java:367)
    at net.sf.l2j.gameserver.ai.AbstractAI.notifyEvent(AbstractAI.java:356)
    at net.sf.l2j.gameserver.ai.AbstractAI.notifyEvent(AbstractAI.java:334)
    at net.sf.l2j.gameserver.ai.L2CharacterAI.onIntentionAttack(L2CharacterAI.java:272)
    at net.sf.l2j.gameserver.ai.AbstractAI.setIntention(AbstractAI.java:288)
    at net.sf.l2j.gameserver.ai.AbstractAI.setIntention(AbstractAI.java:249)
    at net.sf.l2j.gameserver.model.L2Character.onForcedAttack(L2Character.java:5619)
    at net.sf.l2j.gameserver.clientpackets.AttackRequest.runImpl(AttackRequest.java:87)
    at net.sf.l2j.gameserver.clientpackets.L2GameClientPacket.run(L2GameClientPacket.java:97)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
    at java.lang.Thread.run(Unknown Source)
 
Обратите внимание, что данный пользователь заблокирован! Не совершайте с ним никаких сделок! Перейдите в его профиль, чтобы узнать причину блокировки.
643 линия
if (((L2PcInstance) this).issfaction() && ((L2PcInstance) target).issfaction() && Config.FACTION_SYSTEM_ENABLE)
С Явой у меня беда вот и прошу помощи.
 
Обратите внимание, что данный пользователь заблокирован! Не совершайте с ним никаких сделок! Перейдите в его профиль, чтобы узнать причину блокировки.
643 линия
if (((L2PcInstance) this).issfaction() && ((L2PcInstance) target).issfaction() && Config.FACTION_SYSTEM_ENABLE)
С Явой у меня беда вот и прошу помощи.