1st© 0 Опубликовано 26 октября, 2011 Лазил по инету, думаю что бы такое реализовать интерестное...наткнулся на с очень интерестным содержимым...начал копать в инете...пытался открыть файлы *.uax разными прогами...безрезультатно.Сосбтвенно сабж: как можно поменять музыку эхо-кристаллов? Стопудово она лежит в папке саундс...в мьюзик не нашел, или плохо искал... А чтото новенькое охота заиметь) В датниках ничего нету...запуск мелодии с определенного эхо-кристалла быстрее всего скрывается в ядре...или...я х3 короче...) в яве я нуп) Давайте думать вместе ... Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Blact 1 Опубликовано 26 октября, 2011 опаньки интересная шняга,я бы тоже себе такое замутил,Присоединяюсь к тебе)Добавь в скайп master33142 ,за сегодня-завтра замутим такое) Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
1st© 0 Опубликовано 26 октября, 2011 опаньки интересная шняга,я бы тоже себе такое замутил,Присоединяюсь к тебе)Добавь в скайп master33142 ,за сегодня-завтра замутим такое) Сейчас скайп качну - добавлю. З.Ы микроф нету( З.З.Ы тема навеяна by admin_christmas_start B Frozen-ах) там кристаллы выдавало...вот и началось... UP Уже добавил Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
iceman 42 Опубликовано 26 октября, 2011 Реализовывал только через байпассы но можно найти класс который отвечает за эти итемы и немного его переписать) Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
1st© 0 Опубликовано 26 октября, 2011 Реализовывал только через байпассы но можно найти класс который отвечает за эти итемы и немного его переписать) Думаю лучше поплясать с бубном возле операционного стола, на котором будет размещен пациент-исходники, еже ли с байпассами Насчет байпассов можешь поделиться соображениями?) + в голове такая тема...музыка с кристаллов тянется не с папки мьюзик...а с саундс...и как бы перепаковать музон в *.uax или хотя бы открыть этот тип файлов...?)) или как то сделать чтобы инит (при юзании кристалла) музло тянулось в формате *.ogg с папки мьюзик...? Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
iceman 42 Опубликовано 26 октября, 2011 Ну как бы я писал байпассы в исходниках(фрозенов) Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
1st© 0 Опубликовано 26 октября, 2011 Ну как бы я писал байпассы в исходниках(фрозенов) ууу...проблематично...) через...стоп..в папке скриптс\кастом\ есть какой то скрипт 3995_echo судя по тому что там написано можно получать кристаллы эти...мб ккую либо инфу оттуда вытянуть можно?...у меня 892 рева...96 не ставится...((( пока только вопросы...ответов пока что нету( Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
xINVIZIBLx 67 Опубликовано 26 октября, 2011 Я сделал xD Ща сделаю мануал) Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Blact 1 Опубликовано 26 октября, 2011 Я сделал xDЩа сделаю мануал) Давай,ждем! Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
xINVIZIBLx 67 Опубликовано 26 октября, 2011 Давай,ждем! Ищите мануал на сайте Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
xINVIZIBLx 67 Опубликовано 26 октября, 2011 Все операции происходять с исходным кодом! Были взяты L2jFrozen) В общем идём по пути Скрытый текстL2jFrozen_GameServer\head-src\com\l2jfrozen\gameserver\handler\itemhandlers Создаём файл MusicItem.java Вставляем в него Скрытый текст/* This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2, or (at your option) * any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA * 02111-1307, USA. * * http://www.gnu.org/copyleft/gpl.html */ package com.l2jfrozen.gameserver.handler.itemhandlers; import com.l2jfrozen.gameserver.handler.IItemHandler; import com.l2jfrozen.gameserver.model.actor.instance.L2ItemInstance; import com.l2jfrozen.gameserver.model.actor.instance.L2PcInstance; import com.l2jfrozen.gameserver.model.actor.instance.L2PlayableInstance; import com.l2jfrozen.gameserver.network.serverpackets.ActionFailed; import com.l2jfrozen.gameserver.network.serverpackets.PlaySound; /** * @author devScarlet & mrTJO */ public class MusicItem implements IItemHandler { private static int[] _itemIds = { 50000 }; @Override public void useItem(L2PlayableInstance playable, L2ItemInstance item) { if(!(playable instanceof L2PcInstance)) return; L2PcInstance activeChar = (L2PcInstance) playable; int itemId = item.getItemId(); if(activeChar.isParalyzed()) { activeChar.sendMessage("Вы не можете использовать, когда вы парализованы!"); activeChar.sendPacket(ActionFailed.STATIC_PACKET); return; } if(itemId == 50000) // Token of Love { PlaySound _snd3 = new PlaySound(1, "triple_kill", 0, 0, 0, 0, 0); activeChar.sendPacket(_snd3); playable.destroyItem("Consume", item.getObjectId(), 1, null, false); } activeChar = null; } /** * @see com.l2jfrozen.gameserver.handler.IItemHandler#getItemIds() */ @Override public int[] getItemIds() { return _itemIds; } } Так не забываем прописать наш MusicItem В ItemHandler.java Скрытый текстimport com.l2jfrozen.gameserver.handler.itemhandlers.MusicItem; После registerItemHandler(new ChristmasTree()); Ставим registerItemHandler(new MusicItem()); Теперь объясню PlaySound _snd3 = new PlaySound(1, "triple_kill", 0, 0, 0, 0, 0); <----- воспроизводит OGG файл с названием triple_kil сам файл кидать в music с игрой, я взял звуки от Звуки playable.destroyItem("Consume", item.getObjectId(), 1, null, false); <---- Забирает 1 предмет(Можно и без этой строчки тогда при использованиии предмета не будет забираться) В общем ничего сложного Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
1st© 0 Опубликовано 26 октября, 2011 Ищите мануал на сайте И где же мануал? тупо всю ветку мануалов излазил - не нашел((( Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
xINVIZIBLx 67 Опубликовано 26 октября, 2011 И где же мануал? тупо всю ветку мануалов излазил - не нашел((( Просто нету тех кто проверяет и добавляет новость! Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
1st© 0 Опубликовано 26 октября, 2011 Просто нету тех кто проверяет и добавляет новость! спс за решение)) Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
1st© 0 Опубликовано 26 октября, 2011 А если у меня будет не 1 итем с которого нужен музон? как тогда? Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
xINVIZIBLx 67 Опубликовано 26 октября, 2011 А если у меня будет не 1 итем с которого нужен музон? как тогда? Тогда на помощь приходит else if Скрытый текст/* This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2, or (at your option) * any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA * 02111-1307, USA. * * http://www.gnu.org/copyleft/gpl.html */ package com.l2jfrozen.gameserver.handler.itemhandlers; import com.l2jfrozen.gameserver.handler.IItemHandler; import com.l2jfrozen.gameserver.model.actor.instance.L2ItemInstance; import com.l2jfrozen.gameserver.model.actor.instance.L2PcInstance; import com.l2jfrozen.gameserver.model.actor.instance.L2PlayableInstance; import com.l2jfrozen.gameserver.network.serverpackets.ActionFailed; import com.l2jfrozen.gameserver.network.serverpackets.PlaySound; /** * @author devScarlet & mrTJO */ public class MusicItem implements IItemHandler { private static int[] _itemIds = { 50000, ID }; @Override public void useItem(L2PlayableInstance playable, L2ItemInstance item) { if(!(playable instanceof L2PcInstance)) return; L2PcInstance activeChar = (L2PcInstance) playable; int itemId = item.getItemId(); if(activeChar.isParalyzed()) { activeChar.sendMessage("Вы не можете использовать, когда вы парализованы!"); activeChar.sendPacket(ActionFailed.STATIC_PACKET); return; } if(itemId == 50000) // Token of Love { { PlaySound _snd3 = new PlaySound(1, "triple_kill", 0, 0, 0, 0, 0); activeChar.sendPacket(_snd3); playable.destroyItem("Consume", item.getObjectId(), 1, null, false); } activeChar = null; } else if(itemId == ID) //Можно до бесконечности { { PlaySound _snd3 = new PlaySound(1, "triple_kill", 0, 0, 0, 0, 0); activeChar.sendPacket(_snd3); playable.destroyItem("Consume", item.getObjectId(), 1, null, false); } activeChar = null; } } /** * @see com.l2jfrozen.gameserver.handler.IItemHandler#getItemIds() */ @Override public int[] getItemIds() { return _itemIds; } } Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
xINVIZIBLx 67 Опубликовано 26 октября, 2011 Вариант 2 Добавил эффект как у оригинальных Echo Crystals Скрытый текст/* This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2, or (at your option) * any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA * 02111-1307, USA. * * http://www.gnu.org/copyleft/gpl.html */ package com.l2jfrozen.gameserver.handler.itemhandlers; import com.l2jfrozen.gameserver.handler.IItemHandler; import com.l2jfrozen.gameserver.model.actor.instance.L2ItemInstance; import com.l2jfrozen.gameserver.model.actor.instance.L2PcInstance; import com.l2jfrozen.gameserver.model.actor.instance.L2PlayableInstance; import com.l2jfrozen.gameserver.network.serverpackets.ActionFailed; import com.l2jfrozen.gameserver.network.serverpackets.PlaySound; import com.l2jfrozen.gameserver.network.serverpackets.MagicSkillUser; /** * @author devScarlet & mrTJO */ public class MusicItem implements IItemHandler { private static int[] _itemIds = { 50000 }; @Override public void useItem(L2PlayableInstance playable, L2ItemInstance item) { if(!(playable instanceof L2PcInstance)) return; L2PcInstance activeChar = (L2PcInstance) playable; int itemId = item.getItemId(); if(activeChar.isParalyzed()) { activeChar.sendMessage("Вы не можете использовать, когда вы парализованы!"); activeChar.sendPacket(ActionFailed.STATIC_PACKET); return; } if(itemId == 50000) // Token of Love { MagicSkillUser MSU = new MagicSkillUser(playable, activeChar, 2140, 1, 1, 0); activeChar.broadcastPacket(MSU); PlaySound _snd3 = new PlaySound(1, "triple_kill", 0, 0, 0, 0, 0); activeChar.sendPacket(_snd3); playable.destroyItem("Consume", item.getObjectId(), 1, null, false); } activeChar = null; } /** * @see com.l2jfrozen.gameserver.handler.IItemHandler#getItemIds() */ @Override public int[] getItemIds() { return _itemIds; } } Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Blact 1 Опубликовано 26 октября, 2011 Спасибо братуха) Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
xINVIZIBLx 67 Опубликовано 26 октября, 2011 Спасибо братуха) Нужен смайлик FacePalm)) Вместо ID пишим свой ID Который хотим вверхней части через , в конце нету , Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
1st© 0 Опубликовано 26 октября, 2011 Шо тут скажешь) молодца)) спсссс Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Blact 1 Опубликовано 26 октября, 2011 Нужен смайлик FacePalm))Вместо ID пишим свой ID Который хотим вверхней части через , в конце нету , Я не совсем понял последнее сообщение) Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
xINVIZIBLx 67 Опубликовано 26 октября, 2011 Скрытый текст/* This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2, or (at your option) * any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA * 02111-1307, USA. * * http://www.gnu.org/copyleft/gpl.html */package com.l2jfrozen.gameserver.handler.itemhandlers;import com.l2jfrozen.gameserver.handler.IItemHandler;import com.l2jfrozen.gameserver.model.actor.instance.L2ItemInstance;import com.l2jfrozen.gameserver.model.actor.instance.L2PcInstance;import com.l2jfrozen.gameserver.model.actor.instance.L2PlayableInstance;import com.l2jfrozen.gameserver.network.serverpackets.ActionFailed;import com.l2jfrozen.gameserver.network.serverpackets.PlaySound;import com.l2jfrozen.gameserver.network.serverpackets.MagicSkillUser;/** * @author devScarlet & mrTJO */public class MusicItem implements IItemHandler{ private static int[] _itemIds = { 50000,50001,50002 }; @Override public void useItem(L2PlayableInstance playable, L2ItemInstance item) { if(!(playable instanceof L2PcInstance)) return; L2PcInstance activeChar = (L2PcInstance) playable; int itemId = item.getItemId(); if(activeChar.isParalyzed()) { activeChar.sendMessage("Вы не можете использовать, когда вы парализованы!"); activeChar.sendPacket(ActionFailed.STATIC_PACKET); return; } if(itemId == 50000) // Token of Love { { MagicSkillUser MSU = new MagicSkillUser(playable, activeChar, 2140, 1, 1, 0); activeChar.broadcastPacket(MSU);PlaySound _snd3 = new PlaySound(1, "triple_kill", 0, 0, 0, 0, 0); activeChar.sendPacket(_snd3); playable.destroyItem("Consume", item.getObjectId(), 1, null, false); } activeChar = null; } else if(itemId == 50001) // Token of Love { { MagicSkillUser MSU = new MagicSkillUser(playable, activeChar, 2140, 1, 1, 0); activeChar.broadcastPacket(MSU); PlaySound _snd3 = new PlaySound(1, "triple_kill", 0, 0, 0, 0, 0); activeChar.sendPacket(_snd3); playable.destroyItem("Consume", item.getObjectId(), 1, null, false); } activeChar = null; } else if(itemId == 50002) // Token of Love { { MagicSkillUser MSU = new MagicSkillUser(playable, activeChar, 2140, 1, 1, 0); activeChar.broadcastPacket(MSU); PlaySound _snd3 = new PlaySound(1, "triple_kill", 0, 0, 0, 0, 0); activeChar.sendPacket(_snd3); playable.destroyItem("Consume", item.getObjectId(), 1, null, false); } activeChar = null; } } /** * @see com.l2jfrozen.gameserver.handler.IItemHandler#getItemIds() */ @Override public int[] getItemIds() { return _itemIds; }} Сделал на 3 Item надеюсь поймете как больше делать!Так же не забываем создать ID в Mysql Таблице etcitem Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
1st© 0 Опубликовано 26 октября, 2011 Надо эту тему скрыть от народа)) ггг Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
xINVIZIBLx 67 Опубликовано 26 октября, 2011 Надо эту тему скрыть от народа)) ггг Ничего не надо закрывать! Не многие могут работать с исходниками) PS Знание програмирования 10-15% Чисто методом сравнения и проб и ошибок) Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
iceman 42 Опубликовано 26 октября, 2011 можно ещё if-else заменить на switch() будет код по меньше Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты