04.10.2009, 21:00 | #1 |
Пользователь
|
как делать скилы, пример: обменник кол
Постоянно вижу одни и теже вопросы: "Как сделать скилы из адену в колы" ну и т.д. Давайте узнаем как, что, зачем и почему,
И так начнем. Попробуем вместе сделать скил который делает из 2ккк адены, 1 коин. Чтобы сделать скилл, придется капать как сервер так и клиент. Начнем с серверной части. Для начала сделаем скилл, (сразу предупреждаю, если у скилов ID>9000, то скилы будут глючить) советую делать скилы с ID 3600-3699, там в конце половина пустая... Идем в Код:
/data/stats/skills/3600-3699.xml Код:
<skill id="3634" levels="1" name="Adena - Coin"> <set name="mpConsume" val="50"/> <set name="target" val="TARGET_SELF"/> <set name="hitTime" val="1000"/> <set name="skillType" val="CREATE_ITEM"/> <set name="operateType" val="OP_ACTIVE"/> <set name="castRange" val="-1"/> <set name="effectRange" val="-1"/> <set name="itemConsumeId" val="57"/> <set name="itemConsumeCount" val="2000000000"/> <set name="create_item_id" val="4037"/> <set name="create_item_count" val="1"/> <set name="random_count" val="1"/> </skill> <skill id="3634" levels="1" name="Adena"> - тут пишется ID и название скила (название скила обязательно запомните). <set name="mpConsume" val="50"/> - потребляемое MP <set name="itemConsumeId" val="57"/> - это ID предмета, который будет использоваться для получения другого предмета, у нас это 57 - адена <set name="itemConsumeCount" val="2000000000"/> - это количество забираемого предмета, у нас 2ккк <set name="create_item_id" val="4037"/> - предмет, который будет вам давать. у нас это 4037 - коин. <set name="create_item_count" val="1"/> -- это количество даваемого предмета, у нас - 1. Со структурой скила мы разабрались. Теперь давайте сделаем авто изучение скила. Идем в MySQL (PhpMyAdmin) ищем столбик skill_trees. смотрим его структуру и разбираемся с ней, описывать смысла нету. И делаем запрос в базу: Код:
INSERT INTO `skill_trees` VALUES ('0', '3634', '1', 'Adena - Coin', '0', '1'); INSERT INTO `skill_trees` VALUES ('10', '3634', '1', 'Coin', '0', '1'); INSERT INTO `skill_trees` VALUES ('18', '3634', '1', 'Adena - Coin', '0', '1'); INSERT INTO `skill_trees` VALUES ('25', '3634', '1', 'Adena - Coin', '0', '1'); INSERT INTO `skill_trees` VALUES ('31', '3634', '1', 'Adena - Coin', '0', '1'); INSERT INTO `skill_trees` VALUES ('38', '3634', '1', 'Adena - Coin', '0', '1'); INSERT INTO `skill_trees` VALUES ('44', '3634', '1', 'Adena - Coin', '0', '1'); INSERT INTO `skill_trees` VALUES ('49', '3634', '1', 'Adena - Coin', '0', '1'); INSERT INTO `skill_trees` VALUES ('53', '3634', '1', 'Adena - Coin', '0', '1'); Берем в руки FileEdit(l2Dat_Endec) и открываем файл skillname-e.dat и в конце добавляем такую строчку: Код:
3634 1 Adena - Coin Создает Coin. Требуется 2ккк Aden. none none Код:
3634 1 0 2 50 1 2.000000 0 i skill.bl.1062 icon.icon.etc_adena_i00 0 0 0 0 -1 11 и иконку: icon.icon.etc_adena_i00 P.S. как сделать свою иконку. качаем программу L2ViewUTX (гуглим или же ищем на сайте) Идем в клиент, папка systextures, файл icon.utx и там ищем, чтобы поставить свою иконку прописываете так: icon.name_icon, где icon - это icon.utx и name_icon - название иконки. Сохраняем это всё. теперь осталось сделать звук нашей анимации) идем в skillsoundgrp.dat ищем эффект скила, который хоти: у меня это berserk spirit... копируем строчку и в самый низ вставляем Код:
3634 1 SkillSound3.battle_roar_cast SkillSound3.berserker_spirit_shot 250.000000 40.000000 250.000000 80.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 chrsound.m_hfighter_sub chrsound.f_hfighter_sub chrsound.m_darkelf_sub chrsound.f_darkelf_sub chrsound.m_dwarf_type_c chrsound.f_dwarf_type_c chrsound.m_elf_sub chrsound.f_elf_sub chrsound.m_hmagician_sub chrsound.f_hmagician_sub chrsound.m_orc_fighter_type_c chrsound.f_orc_fighter_type_c chrsound.m_orc_magician_type_c chrsound.f_orc_magician_type_c chrsound.m_hfighter_throw chrsound.f_hfighter_throw chrsound.m_darkelf_throw chrsound.f_darkelf_throw chrsound.m_dwarf_throw chrsound.f_dwarf_throw chrsound.m_elf_throw chrsound.f_elf_throw chrsound.m_hmagician_throw chrsound.f_hmagician_throw chrsound.m_orc_fighter_throw chrsound.f_orc_fighter_throw chrsound.m_orc_magician_throw chrsound.f_orc_magician_throw 250.000000 50.000000 Удачи в разработке скилов)) |