ADM_Name) 1 Опубликовано 9 января, 2012 как мне сделать такой гм шоп....тоисть так так НПС одевать?? (гном) Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
COUPLECARAT 7 Опубликовано 9 января, 2012 Это не npc, это pc. Если хочешь реализовать у себя в сборке, ядро + датапак, таблицы в базах! Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
ADM_Name) 1 Опубликовано 9 января, 2012 я тебя огарчу но етовсетаки НПС!=) Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
COUPLECARAT 7 Опубликовано 9 января, 2012 Давай ты не будешь умничать и просто послушаешь, если я говорю значит я уверен. Есть тип 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 оденешь, заточишь, даш свечение героя. Инструкция не моя, нашел на компьютере, автору спасибо! Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
ADM_Name) 1 Опубликовано 9 января, 2012 оо сразу вопрос =))в шару пороботать нехочь =)ради искуства=) Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
COUPLECARAT 7 Опубликовано 9 января, 2012 Сейчас нет времени, учеба Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
ADM_Name) 1 Опубликовано 9 января, 2012 какая учеба=))у меня ваше сесия аж летом=)0я пол года тупо дурака валяю=) Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты