Перейти к содержанию

RayWilliam

Постоялец
  • Публикаций

    32
  • Зарегистрирован

  • Посещение

  • Отзывы

    0%

Весь контент RayWilliam

  1. RayWilliam

    Туплю Сильно

    Да теперь вот проблема с баффером, вот импорты import sys from net.sf.l2j.gameserver.datatables import SkillTable from net.sf.l2j.database import L2DatabaseFactory from net.sf.l2j.gameserver.model.quest import State from net.sf.l2j.gameserver.model.quest import QuestState from net.sf.l2j.gameserver.model.quest.jython import QuestJython as JQuest from net.sf.l2j.gameserver.model import L2Skill from net.sf.l2j.gameserver.model import L2Effect from net.sf.l2j.gameserver.model.actor.instance import L2PcInstance from net.sf.l2j.gameserver.model.actor.instance import L2PetInstance from net.sf.l2j.gameserver.model.actor.instance import L2PlayableInstance from net.sf.l2j.gameserver.model.entity import TvTEvent from net.sf.l2j.gameserver.network import SystemMessageId from net.sf.l2j.gameserver.network.serverpackets import ActionFailed from net.sf.l2j.gameserver.network.serverpackets import SystemMessage from net.sf.l2j.gameserver.network.serverpackets import StatusUpdate from net.sf.l2j.gameserver.network.serverpackets import MagicSkillUser from net.sf.l2j.util import Rnd from java.util import Iterator from java.lang import System
  2. RayWilliam

    Туплю Сильно

    Cпасибо щас попробую
  3. RayWilliam

    Туплю Сильно

    Сорр что отредактировал неправильно написал
  4. RayWilliam

    Туплю Сильно

    Парни помогите, извините за тупой вопрос но в сборке RT Interlude куда записывать скрипты для работы? К примеру NPCBuffer_9999 я его засунул в папку custom и прописал его в __init__.py этот файлик был в папке custom Вот его изначальный код __all__ = [ 'q3995_echo', 'q4000_ShadowWeapons', 'q6050_KetraOrcSupport', 'q6051_VarkaSilenosSupport', 'q7000_HeroItems', 'q8000_RaidbossInfo', 'q8001_NpcLocationInfo', 'q8008_ArenaCP', 'q8009_HotSpringsBuffs' ] print "" print "importing custom data ..." for name in __all__ : try : __import__('data.jscript.custom.'+name,globals(), locals(), ['__init__'], -1) except: print "failed to import quest : ",name print "... done" print "" Вот так я прописал код: __all__ = [ 'NPCBuffer_9999', 'q3995_echo', 'q4000_ShadowWeapons', 'q6050_KetraOrcSupport', 'q6051_VarkaSilenosSupport', 'q7000_HeroItems', 'q8000_RaidbossInfo', 'q8001_NpcLocationInfo', 'q8008_ArenaCP', 'q8009_HotSpringsBuffs' ] print "" print "importing custom data ..." for name in __all__ : try : __import__('data.jscript.custom.'+name,globals(), locals(), ['__init__'], -1) except: print "failed to import quest : ",name print "... done" print "" При загузке ГС выдаёт такую ошибку: importing custom data... failed to import quest: NPCBuffer_999939995_echo ... done Сразу смешивает 2 скрипта почему то
  5. RayWilliam

    No-ip

    Попробуй везде поставить свой IP # Bind ip of the gameserver GameserverHostname = moiserver.no-ip.biz GameserverPort = 7777 # This is transmitted to the clients connecting from an external network, so it has to be a public IP or resolvable hostname ExternalHostname = moiserver.no-ip.biz # This is transmitted to the client from the same network, so it has to be a local IP or resolvable hostname InternalHostname = moiserver.no-ip.biz # The Loginserver host and port; Внимание! Если у вас несколько серверов, то указывайте тут ВНЕШНИЙ IP LoginPort = 9014 LoginHost = moiserver.no-ip.biz
  6. RayWilliam

    Ещё Разок

    Скрытый текст/* * 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.model.actor.instance; import java.util.StringTokenizer; import javolution.text.TextBuilder; import com.l2jfrozen.Config; import com.l2jfrozen.gameserver.controllers.TradeController; import com.l2jfrozen.gameserver.model.L2TradeList; import com.l2jfrozen.gameserver.model.multisell.L2Multisell; import com.l2jfrozen.gameserver.network.L2GameClient; import com.l2jfrozen.gameserver.network.serverpackets.ActionFailed; import com.l2jfrozen.gameserver.network.serverpackets.BuyList; import com.l2jfrozen.gameserver.network.serverpackets.MyTargetSelected; import com.l2jfrozen.gameserver.network.serverpackets.NpcHtmlMessage; import com.l2jfrozen.gameserver.network.serverpackets.Ride; import com.l2jfrozen.gameserver.network.serverpackets.SellList; import com.l2jfrozen.gameserver.network.serverpackets.StatusUpdate; import com.l2jfrozen.gameserver.network.serverpackets.WearList; import com.l2jfrozen.gameserver.templates.L2NpcTemplate; import com.l2jfrozen.gameserver.model.actor.instance.L2ClassMasterInstance; import com.l2jfrozen.gameserver.model.base.ClassLevel; import com.l2jfrozen.gameserver.model.base.PlayerClass; /** * This class ... * * @version $Revision: 1.10.4.9 $ $Date: 2005/04/11 10:06:08 $ */ public class L2MerchantInstance extends L2FolkInstance { //private static Logger _log = Logger.getLogger(L2MerchantInstance.class.getName()); /** * @param template */ public L2MerchantInstance(int objectId, L2NpcTemplate template) { super(objectId, template); } @Override public String getHtmlPath(int npcId, int val) { String pom = ""; if(val == 0) { pom = "" + npcId; } else { pom = npcId + "-" + val; } return "data/html/merchant/" + pom + ".htm"; } private void showWearWindow(L2PcInstance player, int val) { player.tempInvetoryDisable(); if(Config.DEBUG) { _log.fine("Showing wearlist"); } L2TradeList list = TradeController.getInstance().getBuyList(val); if(list != null) { WearList bl = new WearList(list, player.getAdena(), player.getExpertiseIndex()); player.sendPacket(bl); list = null; bl = null; } else { _log.warning("no buylist with id:" + val); player.sendPacket(ActionFailed.STATIC_PACKET); } } private void showBuyWindow(L2PcInstance player, int val) { double taxRate = 0; if(getIsInTown()) { taxRate = getCastle().getTaxRate(); } player.tempInvetoryDisable(); if(Config.DEBUG) { _log.fine("Showing buylist"); } L2TradeList list = TradeController.getInstance().getBuyList(val); if(list != null && list.getNpcId().equals(String.valueOf(getNpcId()))) { BuyList bl = new BuyList(list, player.getAdena(), taxRate); player.sendPacket(bl); list = null; bl = null; } else { _log.warning("possible client hacker: " + player.getName() + " attempting to buy from GM shop! (L2MechantInstance)"); _log.warning("buylist id:" + val); } player.sendPacket(ActionFailed.STATIC_PACKET); } private void showSellWindow(L2PcInstance player) { if(Config.DEBUG) { _log.fine("Showing selllist"); } player.sendPacket(new SellList(player)); if(Config.DEBUG) { _log.fine("Showing sell window"); } player.sendPacket(ActionFailed.STATIC_PACKET); } @Override public void onBypassFeedback(L2PcInstance player, String command) { if(command.startsWith("ololo") if (((level >= 20 && jobLevel == 1 ) || (level >= 40 && jobLevel == 2 )) && Config.ALLOW_CLASS_MASTERS) { showChatWindow(player, classId.getId()); } else if (level >= 76 && Config.ALLOW_CLASS_MASTERS && classId.getId() < 88) { for (int i = 0; i < SECONDN_CLASS_IDS.length; i++) { if (classId.getId() == SECONDN_CLASS_IDS) { NpcHtmlMessage html = new NpcHtmlMessage(getObjectId()); TextBuilder sb = new TextBuilder(); sb.append("<html><body<table width=200>"); sb.append("<tr><td><center>"+CharTemplateTable.getClassNameById(player.getClassId().getId())+" Class Master:</center></td></tr>"); sb.append("<tr><td><br></td></tr>"); sb.append("<tr><td><a action=\"bypass -h npc_"+getObjectId()+"_change_class "+(88+i)+"\">Advance to "+CharTemplateTable.getClassNameById(88+i)+"</a></td></tr>"); sb.append("<tr><td><br></td></tr>"); sb.append("</table></body></html>"); html.setHtml(sb.toString()); player.sendPacket(html); break; } } } else { NpcHtmlMessage html = new NpcHtmlMessage(getObjectId()); TextBuilder sb = new TextBuilder(); sb.append("<html><body>"); switch (jobLevel) { case 1: sb.append("Come back here when you reach level 20 to change your class.<br>"); break; case 2: sb.append("Come back here when you reach level 40 to change your class.<br>"); break; case 3: sb.append("There are no more class changes for you.<br>"); break; } for (Quest q : Quest.findAllEvents()) sb.append("Event: <a action=\"bypass -h Quest "+q.getName()+"\">"+q.getDescr()+"</a><br>"); sb.append("</body></html>"); html.setHtml(sb.toString()); player.sendPacket(html); }} { StringTokenizer st = new StringTokenizer(command, " "); String actualCommand = st.nextToken(); // Get actual command if(actualCommand.equalsIgnoreCase("Buy")) { if(st.countTokens() < 1) return; int val = Integer.parseInt(st.nextToken()); showBuyWindow(player, val); } else if(actualCommand.equalsIgnoreCase("Sell")) { showSellWindow(player); } else if(actualCommand.equalsIgnoreCase("RentPet")) { if(Config.ALLOW_RENTPET) { if(st.countTokens() < 1) { showRentPetWindow(player); } else { int val = Integer.parseInt(st.nextToken()); tryRentPet(player, val); } } } else if(actualCommand.equalsIgnoreCase("Wear") && Config.ALLOW_WEAR) { if(st.countTokens() < 1) return; int val = Integer.parseInt(st.nextToken()); showWearWindow(player, val); } else if(actualCommand.equalsIgnoreCase("Multisell")) { if(st.countTokens() < 1) return; int val = Integer.parseInt(st.nextToken()); L2Multisell.getInstance().SeparateAndSend(val, player, false, getCastle().getTaxRate()); } else if(actualCommand.equalsIgnoreCase("Exc_Multisell")) { if(st.countTokens() < 1) return; int val = Integer.parseInt(st.nextToken()); L2Multisell.getInstance().SeparateAndSend(val, player, true, getCastle().getTaxRate()); } else { // this class dont know any other commands, let forward // the command to the parent class super.onBypassFeedback(player, command); } st = null; actualCommand = null; } public void showRentPetWindow(L2PcInstance player) { if(!Config.LIST_PET_RENT_NPC.contains(getTemplate().npcId)) return; TextBuilder html1 = new TextBuilder("<html><body>Pet Manager:<br>"); html1.append("You can rent a wyvern or strider for adena.<br>My prices:<br1>"); html1.append("<table border=0><tr><td>Ride</td></tr>"); html1.append("<tr><td>Wyvern</td><td>Strider</td></tr>"); html1.append("<tr><td><a action=\"bypass -h npc_%objectId%_RentPet 1\">30 sec/1800 adena</a></td><td><a action=\"bypass -h npc_%objectId%_RentPet 11\">30 sec/900 adena</a></td></tr>"); html1.append("<tr><td><a action=\"bypass -h npc_%objectId%_RentPet 2\">1 min/7200 adena</a></td><td><a action=\"bypass -h npc_%objectId%_RentPet 12\">1 min/3600 adena</a></td></tr>"); html1.append("<tr><td><a action=\"bypass -h npc_%objectId%_RentPet 3\">10 min/720000 adena</a></td><td><a action=\"bypass -h npc_%objectId%_RentPet 13\">10 min/360000 adena</a></td></tr>"); html1.append("<tr><td><a action=\"bypass -h npc_%objectId%_RentPet 4\">30 min/6480000 adena</a></td><td><a action=\"bypass -h npc_%objectId%_RentPet 14\">30 min/3240000 adena</a></td></tr>"); html1.append("</table>"); html1.append("</body></html>"); insertObjectIdAndShowChatWindow(player, html1.toString()); html1 = null; } public void tryRentPet(L2PcInstance player, int val) { if(player == null || player.getPet() != null || player.isMounted() || player.isRentedPet()) return; if(!player.disarmWeapons()) return; int petId; double price = 1; int cost[] = { 1800, 7200, 720000, 6480000 }; int ridetime[] = { 30, 60, 600, 1800 }; if(val > 10) { petId = 12526; val -= 10; price /= 2; } else { petId = 12621; } if(val < 1 || val > 4) return; price *= cost[val - 1]; int time = ridetime[val - 1]; if(!player.reduceAdena("Rent", (int) price, player.getLastFolkNPC(), true)) return; Ride mount = new Ride(player.getObjectId(), Ride.ACTION_MOUNT, petId); player.broadcastPacket(mount); player.setMountType(mount.getMountType()); player.startRentPet(time); mount = null; } @Override public void onActionShift(L2GameClient client) { L2PcInstance player = client.getActiveChar(); if(player == null) return; if(player.getAccessLevel().isGm()) { player.setTarget(this); MyTargetSelected my = new MyTargetSelected(getObjectId(), player.getLevel() - getLevel()); player.sendPacket(my); my = null; if(isAutoAttackable(player)) { StatusUpdate su = new StatusUpdate(getObjectId()); su.addAttribute(StatusUpdate.CUR_HP, (int) getCurrentHp()); su.addAttribute(StatusUpdate.MAX_HP, getMaxHp()); player.sendPacket(su); su = null; } NpcHtmlMessage html = new NpcHtmlMessage(getObjectId()); TextBuilder html1 = new TextBuilder("<html><body><table border=0>"); html1.append("<tr><td>Current Target:</td></tr>"); html1.append("<tr><td><br></td></tr>"); html1.append("<tr><td>Object ID: " + getObjectId() + "</td></tr>"); html1.append("<tr><td>Template ID: " + getTemplate().npcId + "</td></tr>"); html1.append("<tr><td><br></td></tr>"); html1.append("<tr><td>HP: " + getCurrentHp() + "</td></tr>"); html1.append("<tr><td>MP: " + getCurrentMp() + "</td></tr>"); html1.append("<tr><td>Level: " + getLevel() + "</td></tr>"); html1.append("<tr><td><br></td></tr>"); html1.append("<tr><td>Class: " + getClass().getName() + "</td></tr>"); html1.append("<tr><td><br></td></tr>"); //changed by terry 2005-02-22 21:45 html1.append("</table><table><tr><td><button value=\"Edit NPC\" action=\"bypass -h admin_edit_npc " + getTemplate().npcId + "\" width=100 height=15 back=\"sek.cbui94\" fore=\"sek.cbui92\"></td>"); html1.append("<td><button value=\"Kill\" action=\"bypass -h admin_kill\" width=40 height=15 back=\"sek.cbui94\" fore=\"sek.cbui92\"></td></tr>"); html1.append("<tr><td><button value=\"Show DropList\" action=\"bypass -h admin_show_droplist " + getTemplate().npcId + "\" width=100 height=15 back=\"sek.cbui94\" fore=\"sek.cbui92\"></td></tr>"); html1.append("<td><button value=\"Delete\" action=\"bypass -h admin_delete\" width=40 height=15 back=\"sek.cbui94\" fore=\"sek.cbui92\"></td></tr>"); html1.append("</table>"); if(player.isGM()) { html1.append("<button value=\"View Shop\" action=\"bypass -h admin_showShop " + getTemplate().npcId + "\" width=100 height=15 back=\"sek.cbui94\" fore=\"sek.cbui92\"></br>"); html1.append("<button value=\"Lease next week\" action=\"bypass -h npc_" + getObjectId() + "_Lease\" width=100 height=15 back=\"sek.cbui94\" fore=\"sek.cbui92\">"); html1.append("<button value=\"Abort current leasing\" action=\"bypass -h npc_" + getObjectId() + "_Lease next\" width=100 height=15 back=\"sek.cbui94\" fore=\"sek.cbui92\">"); html1.append("<button value=\"Manage items\" action=\"bypass -h npc_" + getObjectId() + "_Lease manage\" width=100 height=15 back=\"sek.cbui94\" fore=\"sek.cbui92\">"); } html1.append("</body></html>"); html.setHtml(html1.toString()); player.sendPacket(html); html = null; html1 = null; } player.sendPacket(ActionFailed.STATIC_PACKET); player = null; } }
  7. RayWilliam

    Ещё Разок

    †DeMoN†™ Поверьте я знаю Java на 30-40 %, но не могу учить постоянно, время не позволяет, И я так уже давно пробовал не получается, если бы я смог исправить бы, я бы не обращался на форум
  8. RayWilliam

    Ещё Разок

    эххх, поменять бы тебе глаза, я и не просил чтобы за меня сделали, я попросил чтобы мне помогли что и как, обьяснили и т.д
  9. RayWilliam

    Ещё Разок

    При компиляции идёт такая ошибка [javac] C:\Documents and Settings\Admin\Рабочий стол\L2jLink 1.4.0\gameserver\head-src\com\l2jfrozen\gameserver\model\actor\instance\L2MerchantInstance.java:154: ';' expected [javac] public void onBypassFeedback(L2PcInstance player, String command) [javac] ^ [javac] 1 error Если я сделаю public void onBypassFeedback(L2PcInstance player, String command); Даёт такие ошибки: [javac] C:\Documents and Settings\Admin\Рабочий стол\L2jLink 1.4.0\gameserver\head-src\com\l2jfrozen\gameserver\model\actor\instance\L2MerchantInstance.java:155: illegal start of type [javac] else if(command.startsWith("ololo"){ [javac] ^ [javac] C:\Documents and Settings\Admin\Рабочий стол\L2jLink 1.4.0\gameserver\head-src\com\l2jfrozen\gameserver\model\actor\instance\L2MerchantInstance.java:155: ';' expected [javac] else if(command.startsWith("ololo"){ [javac] ^ [javac] C:\Documents and Settings\Admin\Рабочий стол\L2jLink 1.4.0\gameserver\head-src\com\l2jfrozen\gameserver\model\actor\instance\L2MerchantInstance.java:155: illegal start of type [javac] else if(command.startsWith("ololo"){ [javac] ^ [javac] C:\Documents and Settings\Admin\Рабочий стол\L2jLink 1.4.0\gameserver\head-src\com\l2jfrozen\gameserver\model\actor\instance\L2MerchantInstance.java:155: ';' expected [javac] else if(command.startsWith("ololo"){ [javac] ^ [javac] C:\Documents and Settings\Admin\Рабочий стол\L2jLink 1.4.0\gameserver\head-src\com\l2jfrozen\gameserver\model\actor\instance\L2MerchantInstance.java:155: invalid method declaration; return type required [javac] else if(command.startsWith("ololo"){ [javac] ^ [javac] C:\Documents and Settings\Admin\Рабочий стол\L2jLink 1.4.0\gameserver\head-src\com\l2jfrozen\gameserver\model\actor\instance\L2MerchantInstance.java:155: illegal start of type [javac] else if(command.startsWith("ololo"){ [javac] ^ [javac] 6 errors Кусок кода: @Override public void onBypassFeedback(L2PcInstance player, String command) else if(command.startsWith("ololo"){ if (((level >= 20 && jobLevel == 1 ) || (level >= 40 && jobLevel == 2 )) && Config.ALLOW_CLASS_MASTERS) { showChatWindow(player, classId.getId()); } else if (level >= 76 && Config.ALLOW_CLASS_MASTERS && classId.getId() < 88) { for (int i = 0; i < SECONDN_CLASS_IDS.length; i++) { if (classId.getId() == SECONDN_CLASS_IDS[i]) { NpcHtmlMessage html = new NpcHtmlMessage(getObjectId()); TextBuilder sb = new TextBuilder(); sb.append("<html><body<table width=200>"); sb.append("<tr><td><center>"+CharTemplateTable.getClassNameById(player.getClassId().getId())+" Class Master:</center></td></tr>"); sb.append("<tr><td><br></td></tr>"); sb.append("<tr><td><a action=\"bypass -h npc_"+getObjectId()+"_change_class "+(88+i)+"\">Advance to "+CharTemplateTable.getClassNameById(88+i)+"</a></td></tr>"); sb.append("<tr><td><br></td></tr>"); sb.append("</table></body></html>"); html.setHtml(sb.toString()); player.sendPacket(html); break; } } } else { NpcHtmlMessage html = new NpcHtmlMessage(getObjectId()); TextBuilder sb = new TextBuilder(); sb.append("<html><body>"); switch (jobLevel) { case 1: sb.append("Come back here when you reach level 20 to change your class.<br>"); break; case 2: sb.append("Come back here when you reach level 40 to change your class.<br>"); break; case 3: sb.append("There are no more class changes for you.<br>"); break; } for (Quest q : Quest.findAllEvents()) sb.append("Event: <a action=\"bypass -h Quest "+q.getName()+"\">"+q.getDescr()+"</a><br>"); sb.append("</body></html>"); html.setHtml(sb.toString()); player.sendPacket(html); }} { Засунул в - L2MerchantInstance Что делать в этой сетуации помогите пожалуйста
  10. Нет не неповлияет)
  11. RayWilliam

    Ещё Разок

    Нет не помогает(
  12. RayWilliam

    Ацест Лвл

    ну тогда в конфигах указывай права
  13. Сделай в конфигах CnameTemplate = .* PetNameTemplate = .* Или если твоя сборка так не поддерживает ставь CnameTemplate = [A-Z][a-z]{3,3}[A-Za-z0-9]* PetNameTemplate = [A-Z][a-z]{3,3}[A-Za-z0-9]*
  14. RayWilliam

    Ещё Разок

    У меня такой нету - \html\classmaster сама папка classmaster Ого а можно просто так сделать <a action="bypass -h npc_%objectId%_change_class 1">1 Профессия</a><br> <a action="bypass -h npc_%objectId%_change_class 2">2 Профессия</a><br> <a action="bypass -h npc_%objectId%_change_class 3">3 Профессия</a><br>
  15. RayWilliam

    Ещё Разок

    Я искал класс мастера но не нашёл, хотел взять код Может вы подскажите код на получение профессии
  16. RayWilliam

    Ещё Разок

    По прокачке
  17. RayWilliam

    Ещё Разок

    Ребата, помогите пожалуйста, уже раньше открывал такую тему но не помогло и не кто не ответил Я хочу сделать через НПС чтобы профу можно было сменить, ну через ГМ ШОП Подскажите пожалуйста код в исходах и код в хтмл Сборка L2jLink 1.4.0 - Хроники Interlude
  18. RayWilliam

    Время Бафов.

    В xml меняй, а чтобы упростить задачу, ищи прогу которая меняет время баффов
  19. RayWilliam

    Ацест Лвл

    Acess Lvl - Дай себе 1, если не получиться то 2, если нет то 75, или 100 или 200, пробуй)
  20. RayWilliam

    Ацест Лвл

    Скрины перезалей
  21. чёт не то)_ Может быть у тебя баффер не поддерживает
  22. Ой с аськой ошибся - 616-051-400 Так а с баффами Ты врубил: EnableModifySkillDuration = True Надо True поставить
×
×
  • Создать...