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

[Help]Временный Эффект Неуязвимости При Респауне

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


public void doRevive()
{
if(!isTeleporting())
{
setPendingRevive(false);
setNonAggroTime(System.currentTimeMillis() + Config.NONAGGRO_TIME_ONTELEPORT);

if(isSalvation())
{
for(Effect e : getEffectList().getAllEffects())
if(e.getEffectType() == EffectType.Salvation)
{
e.exit();
break;
}
setCurrentHp(getMaxHp(), true);
setCurrentMp(getMaxMp());
setCurrentCp(getMaxCp());
}
else
{
setCurrentHp(Math.max(1, getMaxHp() * Config.RESPAWN_RESTORE_HP), true);
if(isPlayer() && Config.RESPAWN_RESTORE_CP > 0)
setCurrentCp(getMaxCp() * Config.RESPAWN_RESTORE_CP);

if(Config.RESPAWN_RESTORE_MP >= 0)
setCurrentMp(getMaxMp() * Config.RESPAWN_RESTORE_MP);

activeChar.sendMessage(activeChar.getName() + ",Вы временно неуязвимы - время действие 10 секунд.");

}

 

Требуется помощь)) в реализации сие чудо) вроде бы не тяжко но сам не могу найти класс который будет вызвать скилл. Ищу вот на примерах других если найду отпишу а пока посоветуйте(((

 

Надо после

 

activeChar.sendMessage(activeChar.getName() + ",Вы временно неуязвимы - время действие 10 секунд.");

 

сделать эффект барриера на 10сек при том если чар делает какоето действие эффект спадает

 

спасибо

Изменено пользователем Rattyx

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


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

Ппц тут что никто не шарит в этом?)) Почему все молчат

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


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

Просто все в смятении...

 

Смысл делать защиту от урона только при ревайве? Нужно как минимум после входа в мир, после телепортации, после воскрешения, после смены инстанса.

 

За Вас работать ни кто не станет, в том числе головой.

 

Максимум, что могу посоветовать - слейте свн l2jserver high five и посмотрите как устроено там.

Скиллом смысла делать нет, проще в инстанс игрока добавить флаг, запрещающий урон.

После указанных выше действий устанавливать его в True, в случаях какихлибо других действий - False.

Стоит заметить, что нужно при получении более половины существующих пакетов сбрасывать этот флаг.

 

А во всех методах получения урона смотреть, активен ли этот флаг. Активен? Тогда завершать метод и не наносить урон и не пропускать дебафы.

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


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

омг тут все такие как ты? если да то I'm outta here xDD

 

Не все шарят ояпу как в яве. я думаю знающий человек это скажет и ему это будет стоить максимум 5 минут а то и меньше.

 

Мне нужно именно баф, я не писал в теме про инстансы про Нужно как минимум после входа в мир, после телепортации, после воскрешения, после смены инстанса. Меня это не интересует я попросил совет\ответ на четко поставленный мной вопрос. Твое личное мнение как лучше сделать меня не очень волнует...

 

Я вот что понял тут новичкам не очень помогают. Ну ок. Я выучу яву и всем буду помогать в отличие от мего кодеров типо вас @ Relvl

 

Пока нарыл только как читать со скилов баф...

 

SkillTable.getInstance().getInfo(1418,1); //Баф целестиала

Покачто не понял как именно полученный скил дать конкретному чару...ну при ресе это понятно пишется код в doRevive

 

//Skill.getEffects(); - но вот такой метод не работает(

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


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

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

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

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

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

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

Войти

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

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

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

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

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