La2Bash 87 Опубликовано 3 февраля, 2013 Всем ещё раз огромный привет. В общем ситуация следующая - тестим серв. Я играю за овера. На эвентах (CTF,TvT, насчет DM незнаю не тестил, но скорей всего тоже) за овера нельзя кидать массовые дебаффы (Пишет: Нельзя напасть на мирной территории) Такого быть не должно ибо все эвенты проводятся в PvP зоне (арена) и скиллы должны работать. Если кто то сталкивался и знает решение проблемы - просьба просветить Если нет - ткните меня в класс который может за это отвечать или хотя бы подскажите название переменной которая отвечает за это сообщение, будем искать Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Jumper 551 Опубликовано 3 февраля, 2013 в zone.xml видимо данные территории являются ПисЗонами Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
La2Bash 87 Опубликовано 3 февраля, 2013 Колизей? Пис зоной? Это происходит именно когда персонаж находится на эвенте. Когда просто прилетаешь в зону CTF или в колизей и юзаешь дебафы - они кастуются нормально Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
La2Bash 87 Опубликовано 6 февраля, 2013 В общем походу нашел кусок кода в котором ошибка ибо 85 ое сообщение никто больше не отправляет (85ое сообщение - типо нельзя атаковать в мирной зоне) //************************************* Check Skill Type ******************************************* // Check if this is offensive magic skill if(skill.isOffensive()) { Boolean peace = isInsidePeaceZone(this, target); //if(isInsidePeaceZone(this, target) && !getAccessLevel().allowPeaceAttack() && (!(_inEventTvT && TvT._started) || !(_inEventCTF && CTF._started) || !(_inEventDM && DM._started) || !(_inEventVIP && VIP._started))) if(peace/* && (!(_inEventTvT && TvT.is_started()) || !(_inEventCTF && CTF.is_started()) || !(_inEventDM && DM.is_started()) || !(_inEventVIP && VIP._started))*/) { // if(target instanceof L2PcInstance){ // // if(!isInFunEvent() || !((L2PcInstance)target).isInFunEvent()) // { // If L2Character or target is in a peace zone, send a system message TARGET_IN_PEACEZONE a Server->Client packet ActionFailed sendPacket(new SystemMessage(SystemMessageId.TARGET_IN_PEACEZONE)); sendPacket(ActionFailed.STATIC_PACKET); return; // } // } } if(isInOlympiadMode() && !isOlympiadStart() && sklTargetType != SkillTargetType.TARGET_AURA) { // if L2PcInstance is in Olympia and the match isn't already start, send a Server->Client packet ActionFailed sendPacket(ActionFailed.STATIC_PACKET); return; } if(!(target instanceof L2MonsterInstance) && sklType == SkillType.CONFUSE_MOB_ONLY) { sendPacket(ActionFailed.STATIC_PACKET); return; } /* // Check if the target is attackable if(target instanceof L2PcInstance && !target.isAttackable() && !getAccessLevel().allowPeaceAttack() && (!(_inEventTvT && TvT.is_started()) || !(_inEventCTF && CTF.is_started()) || !(_inEventDM && DM.is_started()) || !(_inEventVIP && VIP._started))) { if(!isInFunEvent() || !((L2PcInstance)target).isInFunEvent()) { // If target is not attackable, send a Server->Client packet ActionFailed sendPacket(ActionFailed.STATIC_PACKET); return; } } */ // Check if a Forced ATTACK is in progress on non-attackable target //if (!target.isAutoAttackable(this) && !forceUse && !(_inEventTvT && TvT._started) && !(_inEventDM && DM._started) && !(_inEventCTF && CTF._started) && !(_inEventVIP && VIP._started) if (!target.isAutoAttackable(this) && !forceUse && !(_inEventTvT && TvT.is_started()) && !(_inEventDM && DM.is_started()) && !(_inEventCTF && CTF.is_started()) && !(_inEventVIP && VIP._started) && sklTargetType != SkillTargetType.TARGET_AURA && sklTargetType != SkillTargetType.TARGET_CLAN && sklTargetType != SkillTargetType.TARGET_ALLY && sklTargetType != SkillTargetType.TARGET_PARTY && sklTargetType != SkillTargetType.TARGET_SELF && sklTargetType != SkillTargetType.TARGET_GROUND) { // Send a Server->Client packet ActionFailed to the L2PcInstance sendPacket(ActionFailed.STATIC_PACKET); return; } // Check if the target is in the skill cast range if(dontMove) { // Calculate the distance between the L2PcInstance and the target if(sklTargetType == SkillTargetType.TARGET_GROUND) { if(!isInsideRadius(getCurrentSkillWorldPosition().getX(), getCurrentSkillWorldPosition().getY(), getCurrentSkillWorldPosition().getZ(), (int) (skill.getCastRange() + getTemplate().getCollisionRadius()), false, false)) { // Send a System Message to the caster sendPacket(SystemMessageId.TARGET_TOO_FAR); // Send a Server->Client packet ActionFailed to the L2PcInstance sendPacket(ActionFailed.STATIC_PACKET); return; } } else if(skill.getCastRange() > 0 && !isInsideRadius(target, skill.getCastRange() + getTemplate().collisionRadius, false, false)) // Calculate the distance between the L2PcInstance and the target { // Send a System Message to the caster sendPacket(new SystemMessage(SystemMessageId.TARGET_TOO_FAR)); // Send a Server->Client packet ActionFailed to the L2PcInstance sendPacket(ActionFailed.STATIC_PACKET); return; } } } Не пойму только в чём прикол, почему на ТВТ, КТФ, ДМ не пашут массовые скиллы. Кто помочь может? Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты