Рейтинг темы:
  • 0 Голос(ов) - 0 в среднем
  • 1
  • 2
  • 3
  • 4
  • 5
Подбор дропа с нпц
#1
Хочу сделать подбор дропа не только с мобов но и нпц , может кто нашел где сделать )) подскажите
MiR @ Aion Emu
Продам сборки v2.7 v3.9 v4.7 v4.8 v4.9 v5.1 , сборки мастер сервера v1.9 и v2.7 ,пишу  скрипты и квесты на заказ , правки ядра  , правки даты , писать в ПМ
Ответ
#2
А разве его нет? Оо
Прикольнись с Tribe, должно помочь.
Мы всё сделаем металлом! Чернее чернейшей черноты бесконечности! © Nathan Explotion
Работаю с Aion Java-emu, любой версии. skype: alexsiuss1
Ответ
#3
Цитата:А разве его нет? Оо
нет если ставиш NON_ATTACKABLE , хочу сделать Геру и Теграка , что бы их не возможно было атаковать своей расе
Цитата:Прикольнись с Tribe, должно помочь.
а поподробней
MiR @ Aion Emu
Продам сборки v2.7 v3.9 v4.7 v4.8 v4.9 v5.1 , сборки мастер сервера v1.9 и v2.7 ,пишу  скрипты и квесты на заказ , правки ядра  , правки даты , писать в ПМ
Ответ
#4
Можно сделать, только NON_ATTACKABLE тут часть общего плана. И кстати для теграка и геры будет достаточно прописать именно NON_ATTACKABLE, я так и сделал у ся на серве, и всё прекрасно работает. Для остальных нпс чуть повозится надо будет.
Вобщем вся фишка в MonsterController и NpcController , а именно в методе doReward, в контролере для нпс он небыл переопределён, а значит остался таким же как и для обшего класса CreatureController, а вот в монстер контролере он был переопределён, посему все объекты которые спавнятся как монстры и наследуют монстер контролер могут выдавать ревард(дроп).
Собсно тут есть два пути:
1) глобальный Smile , поскольку MonsterController extends NpcController тобиш расширяет класс нпсконтролера, можно перенести метод doReward из монстерконтролера в нпсконтролер, далее придётся править нюансы во всей иерархии использования монстерконтролера.
В результате получим возможность сбора дропа с любого нпс.
2) локальный Smile , больше подходит для обработки отдельных нпс, например боссов, порталов и других специфичных объектов. Т.е. просто в при спавне указать какие npcid мы хочем сделать монстрами, и тогда только с них можно будет собрать дроп.
Это уже делается в SpawnEngine в методе SpawnObject .
Дверь запили!
Ответ
#5
Цитата:А разве его нет? Оо
Прикольнись с Tribe, должно помочь.
или обоснуй , или не пиши если незнаеш! писец все перерыл неработает нех
MiR @ Aion Emu
Продам сборки v2.7 v3.9 v4.7 v4.8 v4.9 v5.1 , сборки мастер сервера v1.9 и v2.7 ,пишу  скрипты и квесты на заказ , правки ядра  , правки даты , писать в ПМ
Ответ
#6
Можно полегче, я тебе не друг. А "рыл" ты плохо.


[Изображение: ca2d9ef70782.jpg]

Статы
Ещё для полного феншуя нужно будет редактировать сами трайбы, на agro и friend
Мы всё сделаем металлом! Чернее чернейшей черноты бесконечности! © Nathan Explotion
Работаю с Aion Java-emu, любой версии. skype: alexsiuss1
Ответ
#7
Цитата:npc_type="ATTACKABLE"


ну так напиши как ты сделал если я такой нуб ) , что бы своя раса не могла атаковать , а вторая могла дроп поднять
MiR @ Aion Emu
Продам сборки v2.7 v3.9 v4.7 v4.8 v4.9 v5.1 , сборки мастер сервера v1.9 и v2.7 ,пишу  скрипты и квесты на заказ , правки ядра  , правки даты , писать в ПМ
Ответ
#8
Romanz Написал:ну так напиши как ты сделал если я такой нуб ) , что бы своя раса не могла атаковать , а вторая могла дроп поднять

Слова flashman-a

И кстати для теграка и геры будет достаточно прописать именно NON_ATTACKABLE, я так и сделал у ся на серве, и всё прекрасно работает
Ответ
#9
Цитата:кстати для теграка и геры будет достаточно прописать именно NON_ATTACKABLE, я так и сделал у ся на серве, и всё прекрасно работает
Вынужден признать, что не совсем достаточно Smile .
В этом случае придётся внести изменение в метод spawnObject в SpawnEngine . Если у вас в ядре есть класс Monster и MonsterContoller.
PHP код:
<?php 
switch(objectId)
{
// Gera, Tegrak
case 258200:
case
258205:
npc = new Monster(iDFactory.nextId(), new MonsterController(), spawn, template);
npc.setKnownlist(new StaticObjectKnownList(npc));
break;
}
Вот весь код метода спавна с месторасположением примера описанного выше.
Весь код метода
Сдесь делается исключение для указанных нпс, посему этот метод не универсален. В моём посте выше, первый способ решения данной проблемы будет универсальным и позволит собирать дроп с любого враждебного неатакуемого нпс (NON_ATTACKABLE) или с любого атакуемого нпс даже если его trible является дружественным или не агро, при этом не надо будет вносить изменения в SpawnEngine.
Статы боссов
Либо можно в метод attackTarget который находится в PlayerController добавить сделующее :
PHP код:
<?php 
if (target instanceof Npc)
{
if (
getOwner().getCommonData().getRace() == Race.ASMODIANS && ((Npc)target).getNpcId() == 258205)
return;
if (
getOwner().getCommonData().getRace() == Race.ELYOS && ((Npc)target).getNpcId() == 258200)
return;
}
Используя такой способ этих двух боссов нельзя будет атаковать даже если они ATTACKABLE (если ничего не напутал) .
Весь код
Дверь запили!
Ответ
#10
спасибо все работает)
MiR @ Aion Emu
Продам сборки v2.7 v3.9 v4.7 v4.8 v4.9 v5.1 , сборки мастер сервера v1.9 и v2.7 ,пишу  скрипты и квесты на заказ , правки ядра  , правки даты , писать в ПМ
Ответ


Возможно похожие темы ...
Тема Автор Ответы Просмотры Последний пост
  Нет дропа u3j рев. 498 saati 0 1,432 03-22-2013, 10:45 PM
Последний пост: saati
  Добавление дропа мобам. ALeKsIuS 9 14,179 04-18-2011, 08:53 PM
Последний пост: ALeKsIuS
  При сборе дропа берутся не те вещи. lexxzion 0 1,828 01-27-2011, 10:52 PM
Последний пост: lexxzion
  Время сбора дропа с моба pppok 2 2,128 04-04-2010, 03:42 PM
Последний пост: pppok
  Нет дропа у мобов present 24 8,759 02-25-2010, 04:20 PM
Последний пост: Relax

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


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