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

Вид Нпс

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

как мне сделать такой гм шоп....тоисть так так НПС одевать?? (гном)

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


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

Это не npc, это pc.

Если хочешь реализовать у себя в сборке, ядро + датапак, таблицы в базах!

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


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

Давай ты не будешь умничать и просто послушаешь, если я говорю значит я уверен.

Есть тип NPC и PC - который тебе и нужен, для этого в ядре нужно создавать класс.

Вот эти файлы тебе нужны.

 

Для начала вводим SQL "npc_to_pc_polymorph" и остальные в базу.

 

Что он сделает?

К примеру:

строка 1: Изменит всех "patrols" с внешним видом под ID template=31674 в людей (humans) одетых в аппела и держащих рендомное оружие.

строка 2: Изменит всех "patrols" из template 31673 в людей (humans) одетых в Аппела и держачих в руках луки.(Лук стандартный от обычных NPC)

строка 3: Превратит одного заспауненого (рендомного гуарда) в чара рассы kamael, чар будет одет в draconic, а в руке у него будет "Infinity dagger" Пол чара - random)

строка 4: Изменит всех гремленов в PC "Evil dwarves" с кармой и рендомным оружием, вещами и разным внешним видом!

строка 5-7: Превратит всех Goddard Siege NPCs в рендомных игроков файтеров.

 

Java code:

 

Мануал по инсталяции:

 

Первым делом скопируйте куда то эти три файла:

/gameserver/network/serverpackets/CustomNpcInfo.java

/gameserver/model/actor/instance/L2CustomNpcInstance.java

/gameserver/instancemanager/CustomNpcInstanceManager.java

 

 

В L2NpcInstance добавте это:

Скрытый текст
import net.sf.l2j.gameserver.instancemanager.CustomNpcIns tanceManager;

 

variable

+ /** The Polymorph object that manage this L2NpcInstance's morph to a PcInstance... I wrote this line too =P Darki699 */

+ private L2CustomNpcInstance _customNpcInstance;

+

В функцию onRandomAnimation() нужно вставить код чтоб PCs имели больше детальную анимацию чем NPCs

 

- // Send a packet SocialAction to all L2PcInstance in the _KnownPlayers of the L2NpcInstance

- SocialAction sa = new SocialAction(getObjectId(), Rnd.get(2, 3));

+ int min = (_customNpcInstance != null) ? 1 : 2;

+ int max = (_customNpcInstance != null) ? 13 : 3;

+ // Send a packet SocialAction to all L2PcInstance in the _KnownPlayers of the L2NpcInstance

+ SocialAction sa = new SocialAction(getObjectId(), Rnd.get(min, max));

 

В функцию setSpawn(L2Spawn spawn) добавляем данный код:

+ // Does this Npc morph into a PcInstance?

+ if (_spawn != null)

+ {

+ if (CustomNpcInstanceManager.getInstance().isThisL2Cu stomNpcInstance(_spawn.getId() , getNpcId()))

+ {

+ new L2CustomNpcInstance(this);

+ }

+ }

 

Ну и в конце L2NpcInstance.java добавте две строчки:

 

+ public L2CustomNpcInstance getCustomNpcInstance()

+ {

+ return _customNpcInstance;

+ }

+

+ public void setCustomNpcInstance(L2CustomNpcInstance arg)

+ {

+ _customNpcInstance = arg;

+ }

 

Теперь в NpcInfo.java (serverpackets) это поверх измененных NPCs, в коде NpcInfo(L2NpcInstance cha, L2Character attacker) добавте:

 

+ if (cha.getCustomNpcInstance() != null)

+ {

+ attacker.sendPacket(new CustomNpcInfo(cha));

+ if (_activeChar == null)

+ return;

+ }

 

Потом в базе в таблице npc_to_pc_polymorph оденешь, заточишь, даш свечение героя.

Инструкция не моя, нашел на компьютере, автору спасибо!

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


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

оо сразу вопрос =))в шару пороботать нехочь =)ради искуства=)

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


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

какая учеба=))у меня ваше сесия аж летом=)0я пол года тупо дурака валяю=)

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


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

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

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

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