SteveDogs 1082 Опубликовано 20 июня, 2013 Есть исходы? Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Enfiz132 0 Опубликовано 20 июня, 2013 В 20.06.2013 в 16:18, ENERGODAR сказал: Есть исходы? нету Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
SteveDogs 1082 Опубликовано 20 июня, 2013 В 20.06.2013 в 16:32, Enfiz132 сказал: нету Тогда скинь сюда конфиг custom.cfg Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Enfiz132 0 Опубликовано 20 июня, 2013 скайп cherep310 Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Enfiz132 0 Опубликовано 21 июня, 2013 C:\l2j\gameserver\lib это Ядро???? Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
meX 144 Опубликовано 21 июня, 2013 Откуда у него исходный код от PW ? В конфигах тоже нету Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Enfiz132 0 Опубликовано 23 июня, 2013 (изменено) В 18.06.2013 в 13:37, Saick сказал: Ядро, скинь UseItem.java Код (Показать контент) ]// Decompiled by DJ v3.11.11.95 Copyright 2009 Atanas Neshkov Date: 23.06.2013 12:33:13 // Home Page: http://members.fortu...neshkov/dj.html http://www.neshkov.com/dj.html - Check often for new version! // Decompiler options: packimports(3) // Source File Name: UseItem.java package net.sf.l2j.gameserver.network.clientpackets; import java.util.logging.Logger; import net.sf.l2j.gameserver.cache.Static; import net.sf.l2j.gameserver.model.L2ItemInstance; import net.sf.l2j.gameserver.model.PcInventory; import net.sf.l2j.gameserver.model.actor.instance.L2PcInstance; import net.sf.l2j.gameserver.network.L2GameClient; import net.sf.l2j.gameserver.network.serverpackets.EnchantResult; import net.sf.l2j.gameserver.network.serverpackets.ShowCalculator; import net.sf.l2j.gameserver.templates.*; import scripts.items.IItemHandler; import scripts.items.ItemHandler; // Referenced classes of package net.sf.l2j.gameserver.network.clientpackets: // L2GameClientPacket public final class UseItem extends L2GameClientPacket { public UseItem() { } protected void readImpl() { _objectId = readD(); } protected void runImpl() { L2PcInstance player; L2ItemInstance item; int itemId; label0: { player = ((L2GameClient)getClient()).getActiveChar(); if(player == null) return; item = player.getInventory().getItemByObjectId(_objectId); if(item == null) return; itemId = item.getItemId(); if(itemId == 57 || player.isParalyzed()) return; if(!item.isEquipable()) { if(System.currentTimeMillis() - player.gCPBA() < 200L) return; player.sCPBA(); } if(player.isStunned() || player.isSleeping() || player.isAfraid() || player.isParalyzed() || player.isFakeDeath()) return; if(player.isDead() || player.isAlikeDead()) return; if(player.getPrivateStoreType() != 0) { player.sendPacket(Static.CANNOT_TRADE_DISCARD_DROP_ITEM_WHILE_IN_SHOPMODE); return; } if(player.getActiveTradeList() != null) { player.cancelActiveTrade(); return; } if(player.getActiveWarehouse() != null) { player.cancelActiveWarehouse(); return; } if(player.getActiveEnchantItem() != null) { player.setActiveEnchantItem(null); player.sendPacket(new EnchantResult(0, true)); return; } synchronized(player.getInventory()) { if(!player.isFishing() || itemId >= 6535 && itemId <= 6540) break label0; player.sendPacket(Static.CANNOT_DO_WHILE_FISHING_3); } return; } if(!item.getItem().isForWolf() && !item.getItem().isForHatchling() && !item.getItem().isForStrider() && !item.getItem().isForBabyPet()) break MISSING_BLOCK_LABEL_286; player.sendPacket(Static.CANNOT_EQUIP_PET_ITEM); pcinventory; JVM INSTR monitorexit ; return; if(!item.isEquipable()) goto _L2; else goto _L1 _L1: int bodyPart; bodyPart = item.getItem().getBodyPart(); if(!player.isInOlympiadMode() || !item.isHeroItem() && !item.notForOly()) break MISSING_BLOCK_LABEL_331; player.sendActionFailed(); pcinventory; JVM INSTR monitorexit ; return; bodyPart; JVM INSTR lookupswitch 3: default 398 // 128: 368 // 256: 368 // 16384: 368; goto _L3 _L4 _L4 _L4 _L4: if(!player.isCursedWeaponEquiped() && itemId != 6408) goto _L6; else goto _L5 _L5: player.sendActionFailed(); pcinventory; JVM INSTR monitorexit ; return; _L6: player.equipWeapon(item); goto _L7 _L3: player.useEquippableItem(item, true); _L7: pcinventory; JVM INSTR monitorexit ; return; _L2: L2Weapon weaponItem = player.getActiveWeaponItem(); if(itemId != 4393) goto _L9; else goto _L8 _L8: player.sendPacket(new ShowCalculator(4393)); pcinventory; JVM INSTR monitorexit ; return; _L9: if(weaponItem == null) break MISSING_BLOCK_LABEL_514; if(!item.isLure() || weaponItem.getItemType() != L2WeaponType.ROD) goto _L11; else goto _L10 _L10: player.getInventory().setPaperdollItem(8, item); player.broadcastUserInfo(); player.sendItems(false); pcinventory; JVM INSTR monitorexit ; return; _L11: if(itemId != 8192 || weaponItem.getItemType() == L2WeaponType.BOW) break MISSING_BLOCK_LABEL_514; player.sendMessage("\u0418\u0441\u043F\u043E\u043B\u044C\u0437\u0443\u0435\u0442\u0441\u044F \u0441 \u043B\u0443\u043A\u043E\u043C"); pcinventory; JVM INSTR monitorexit ; return; IItemHandler handler = ItemHandler.getInstance().getItemHandler(itemId); if(handler != null) handler.useItem(player, item); pcinventory; JVM INSTR monitorexit ; goto _L12 exception; throw exception; _L12: } public String getType() { return "[C] UseItem"; } private static Logger _log = Logger.getLogger(net/sf/l2j/gameserver/network/clientpackets/UseItem.getName()); private int _objectId; } Изменено 23 июня, 2013 пользователем Ога Правильно оформляем длинные посты ! Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Demoncool 1110 Опубликовано 23 июня, 2013 Добавляй, еще в конфиг.ява прописать нужно Показать контент if (item.getItemType() == L2WeaponType.BOW) { int classid = activeChar.getClassId().getId(); if (Config.BOW_PENALTY.contains(Integer.valueOf(classid))) { if ((!activeChar.isInOlympiadMode()) || (Config.BOW_PENALTY_ON_OLYMP)) { SystemMessage sm = new SystemMessage(SystemMessageId.S1_CANNOT_BE_USED); sm.addItemName(itemId); activeChar.sendPacket(sm); return; } } } Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
ioioioii 549 Опубликовано 23 июня, 2013 господи, почитал посмеялся вывод: что это за [мат]?? тс ну ты и [мат]! Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Demoncool 1110 Опубликовано 23 июня, 2013 В 23.06.2013 в 09:34, Enfiz132 сказал: Код (Показать контент) ]// Decompiled by DJ v3.11.11.95 Copyright 2009 Atanas Neshkov Date: 23.06.2013 12:33:13 // Home Page: http://members.fortu...neshkov/dj.html http://www.neshkov.com/dj.html - Check often for new version! // Decompiler options: packimports(3) // Source File Name: UseItem.java package net.sf.l2j.gameserver.network.clientpackets; import java.util.logging.Logger; import net.sf.l2j.gameserver.cache.Static; import net.sf.l2j.gameserver.model.L2ItemInstance; import net.sf.l2j.gameserver.model.PcInventory; import net.sf.l2j.gameserver.model.actor.instance.L2PcInstance; import net.sf.l2j.gameserver.network.L2GameClient; import net.sf.l2j.gameserver.network.serverpackets.EnchantResult; import net.sf.l2j.gameserver.network.serverpackets.ShowCalculator; import net.sf.l2j.gameserver.templates.*; import scripts.items.IItemHandler; import scripts.items.ItemHandler; // Referenced classes of package net.sf.l2j.gameserver.network.clientpackets: // L2GameClientPacket public final class UseItem extends L2GameClientPacket { public UseItem() { } protected void readImpl() { _objectId = readD(); } protected void runImpl() { L2PcInstance player; L2ItemInstance item; int itemId; label0: { player = ((L2GameClient)getClient()).getActiveChar(); if(player == null) return; item = player.getInventory().getItemByObjectId(_objectId); if(item == null) return; itemId = item.getItemId(); if(itemId == 57 || player.isParalyzed()) return; if(!item.isEquipable()) { if(System.currentTimeMillis() - player.gCPBA() < 200L) return; player.sCPBA(); } if(player.isStunned() || player.isSleeping() || player.isAfraid() || player.isParalyzed() || player.isFakeDeath()) return; if(player.isDead() || player.isAlikeDead()) return; if(player.getPrivateStoreType() != 0) { player.sendPacket(Static.CANNOT_TRADE_DISCARD_DROP_ITEM_WHILE_IN_SHOPMODE); return; } if(player.getActiveTradeList() != null) { player.cancelActiveTrade(); return; } if(player.getActiveWarehouse() != null) { player.cancelActiveWarehouse(); return; } if(player.getActiveEnchantItem() != null) { player.setActiveEnchantItem(null); player.sendPacket(new EnchantResult(0, true)); return; } synchronized(player.getInventory()) { if(!player.isFishing() || itemId >= 6535 && itemId <= 6540) break label0; player.sendPacket(Static.CANNOT_DO_WHILE_FISHING_3); } return; } if(!item.getItem().isForWolf() && !item.getItem().isForHatchling() && !item.getItem().isForStrider() && !item.getItem().isForBabyPet()) break MISSING_BLOCK_LABEL_286; player.sendPacket(Static.CANNOT_EQUIP_PET_ITEM); pcinventory; JVM INSTR monitorexit ; return; if(!item.isEquipable()) goto _L2; else goto _L1 _L1: int bodyPart; bodyPart = item.getItem().getBodyPart(); if(!player.isInOlympiadMode() || !item.isHeroItem() && !item.notForOly()) break MISSING_BLOCK_LABEL_331; player.sendActionFailed(); pcinventory; JVM INSTR monitorexit ; return; bodyPart; JVM INSTR lookupswitch 3: default 398 // 128: 368 // 256: 368 // 16384: 368; goto _L3 _L4 _L4 _L4 _L4: if(!player.isCursedWeaponEquiped() && itemId != 6408) goto _L6; else goto _L5 _L5: player.sendActionFailed(); pcinventory; JVM INSTR monitorexit ; return; _L6: player.equipWeapon(item); goto _L7 _L3: player.useEquippableItem(item, true); _L7: pcinventory; JVM INSTR monitorexit ; return; _L2: L2Weapon weaponItem = player.getActiveWeaponItem(); if(itemId != 4393) goto _L9; else goto _L8 _L8: player.sendPacket(new ShowCalculator(4393)); pcinventory; JVM INSTR monitorexit ; return; _L9: if(weaponItem == null) break MISSING_BLOCK_LABEL_514; if(!item.isLure() || weaponItem.getItemType() != L2WeaponType.ROD) goto _L11; else goto _L10 _L10: player.getInventory().setPaperdollItem(8, item); player.broadcastUserInfo(); player.sendItems(false); pcinventory; JVM INSTR monitorexit ; return; _L11: if(itemId != 8192 || weaponItem.getItemType() == L2WeaponType.BOW) break MISSING_BLOCK_LABEL_514; player.sendMessage("\u0418\u0441\u043F\u043E\u043B\u044C\u0437\u0443\u0435\u0442\u0441\u044F \u0441 \u043B\u0443\u043A\u043E\u043C"); pcinventory; JVM INSTR monitorexit ; return; IItemHandler handler = ItemHandler.getInstance().getItemHandler(itemId); if(handler != null) handler.useItem(player, item); pcinventory; JVM INSTR monitorexit ; goto _L12 exception; throw exception; _L12: } public String getType() { return "[C] UseItem"; } private static Logger _log = Logger.getLogger(net/sf/l2j/gameserver/network/clientpackets/UseItem.getName()); private int _objectId; } Не очень у вас декомпил вышел Показать контент package net.sf.l2j.gameserver.network.clientpackets; import java.util.logging.Logger; import net.sf.l2j.gameserver.cache.Static; import net.sf.l2j.gameserver.model.L2ItemInstance; import net.sf.l2j.gameserver.model.PcInventory; import net.sf.l2j.gameserver.model.actor.instance.L2PcInstance; import net.sf.l2j.gameserver.network.L2GameClient; import net.sf.l2j.gameserver.network.serverpackets.EnchantResult; import net.sf.l2j.gameserver.network.serverpackets.ShowCalculator; import net.sf.l2j.gameserver.templates.L2Item; import net.sf.l2j.gameserver.templates.L2Weapon; import net.sf.l2j.gameserver.templates.L2WeaponType; import scripts.items.IItemHandler; import scripts.items.ItemHandler; public final class UseItem extends L2GameClientPacket { private static Logger _log = Logger.getLogger(UseItem.class.getName()); private int _objectId; protected void readImpl() { this._objectId = readD(); } protected void runImpl() { L2PcInstance player = ((L2GameClient)getClient()).getActiveChar(); if (player == null) { return; } L2ItemInstance item = player.getInventory().getItemByObjectId(this._objectId); if (item == null) { return; } int itemId = item.getItemId(); if ((itemId == 57) || (player.isParalyzed())) { return; } if (!item.isEquipable()) { if (System.currentTimeMillis() - player.gCPBA() < 200L) return; player.sCPBA(); } if ((player.isStunned()) || (player.isSleeping()) || (player.isAfraid()) || (player.isFakeDeath())) { return; } if ((player.isDead()) || (player.isAlikeDead())) { return; } if (player.getPrivateStoreType() != 0) { player.sendPacket(Static.CANNOT_TRADE_DISCARD_DROP_ITEM_WHILE_IN_SHOPMODE); return; } if (player.getActiveTradeList() != null) { player.cancelActiveTrade(); return; } if (player.getActiveWarehouse() != null) { player.cancelActiveWarehouse(); return; } if (player.getActiveEnchantItem() != null) { player.setActiveEnchantItem(null); player.sendPacket(new EnchantResult(0, true)); return; } synchronized (player.getInventory()) { if ((player.isFishing()) && ((itemId < 6535) || (itemId > 6540))) { player.sendPacket(Static.CANNOT_DO_WHILE_FISHING_3); return; } if ((item.getItem().isForWolf()) || (item.getItem().isForHatchling()) || (item.getItem().isForStrider()) || (item.getItem().isForBabyPet())) { player.sendPacket(Static.CANNOT_EQUIP_PET_ITEM); return; } if (item.isEquipable()) { if (((player.isInOlympiadMode()) || (player.getChannel() > 3)) && ((item.isHeroItem()) || (item.notForOly()))) { player.sendActionFailed(); return; } switch (item.getItem().getBodyPart()) { case 128: case 256: case 16384: if ((player.isCursedWeaponEquiped()) || (itemId == 6408)) { player.sendActionFailed(); return; } player.equipWeapon(item); break; default: player.useEquippableItem(item, true); } return; } L2Weapon weaponItem = player.getActiveWeaponItem(); if (itemId == 4393) { player.sendPacket(new ShowCalculator(4393)); return; } if (weaponItem != null) { if ((item.isLure()) && (weaponItem.getItemType() == L2WeaponType.ROD)) { player.getInventory().setPaperdollItem(8, item); player.broadcastUserInfo(); player.sendItems(false); return; } if ((itemId == 8192) && (weaponItem.getItemType() != L2WeaponType.BOW)) { player.sendMessage("\u0418\u0441\u043F\u043E\u043B\u044C\u0437\u0443\u0435\u0442\u0441\u044F \u0441 \u043B\u0443\u043A\u043E\u043C"); return; } } IItemHandler handler = ItemHandler.getInstance().getItemHandler(itemId); if (handler != null) handler.useItem(player, item); } } } Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Enfiz132 0 Опубликовано 23 июня, 2013 (изменено) В 23.06.2013 в 09:38, Demoncool сказал: Добавляй, еще в конфиг.ява прописать нужно Показать контент if (item.getItemType() == L2WeaponType.BOW) { int classid = activeChar.getClassId().getId(); if (Config.BOW_PENALTY.contains(Integer.valueOf(classid))) { if ((!activeChar.isInOlympiadMode()) || (Config.BOW_PENALTY_ON_OLYMP)) { SystemMessage sm = new SystemMessage(SystemMessageId.S1_CANNOT_BE_USED); sm.addItemName(itemId); activeChar.sendPacket(sm); return; } } } Показать контент package net.sf.l2j; import java.io.*; import java.math.BigInteger; import java.util.List; import java.util.Properties; import java.util.concurrent.TimeUnit; import java.util.logging.Logger; import javolution.text.TextBuilder; import javolution.util.*; import net.sf.l2j.gameserver.model.actor.instance.L2PcInstance; import net.sf.l2j.util.Location; import net.sf.l2j.util.TimeLogger; // Referenced classes of package net.sf.l2j: // Server public final class Config { /* member class not found */ class PvpColor {} /* member class not found */ class AltBColor {} /* member class not found */ class EventReward {} /* member class not found */ class ObjectSetType {} /* member class not found */ class ObjectMapType {} /* member class not found */ class IdFactoryType {} /* member class not found */ class L2WalkerAllowed {} public static void load() { if(Server.serverMode == 1) { try { Properties serverSettings = new Properties(); InputStream is = new FileInputStream(new File("./config/server.cfg")); serverSettings.load(is); is.close(); GAMESERVER_HOSTNAME = serverSettings.getProperty("GameserverHostname"); PORT_GAME = Integer.parseInt(serverSettings.getProperty("GameserverPort", "7777")); EXTERNAL_HOSTNAME = serverSettings.getProperty("ExternalHostname", "*"); INTERNAL_HOSTNAME = serverSettings.getProperty("InternalHostname", "*"); GAME_SERVER_LOGIN_PORT = Integer.parseInt(serverSettings.getProperty("LoginPort", "9014")); GAME_SERVER_LOGIN_HOST = serverSettings.getProperty("LoginHost", "127.0.0.1"); REQUEST_ID = Integer.parseInt(serverSettings.getProperty("RequestServerID", "0")); ACCEPT_ALTERNATE_ID = Boolean.parseBoolean(serverSettings.getProperty("AcceptAlternateID", "True")); DATABASE_DRIVER = serverSettings.getProperty("Driver", "com.mysql.jdbc.Driver"); DATABASE_URL = serverSettings.getProperty("URL", "jdbc:mysql://localhost/l2jdb"); DATABASE_LOGIN = serverSettings.getProperty("Login", "root"); DATABASE_PASSWORD = serverSettings.getProperty("Password", ""); DATABASE_MAX_CONNECTIONS = Integer.parseInt(serverSettings.getProperty("MaximumDbConnections", "10")); DATAPACK_ROOT = (new File(serverSettings.getProperty("DatapackRoot", "."))).getCanonicalFile(); CNAME_TEMPLATE = serverSettings.getProperty("CnameTemplate", ".*"); PET_NAME_TEMPLATE = serverSettings.getProperty("PetNameTemplate", ".*"); MAX_CHARACTERS_NUMBER_PER_ACCOUNT = Integer.parseInt(serverSettings.getProperty("CharMaxNumber", "0")); MAXIMUM_ONLINE_USERS = Integer.parseInt(serverSettings.getProperty("MaximumOnlineUsers", "100")); MIN_PROTOCOL_REVISION = Integer.parseInt(serverSettings.getProperty("MinProtocolRevision", "660")); MAX_PROTOCOL_REVISION = Integer.parseInt(serverSettings.getProperty("MaxProtocolRevision", "665")); SHOW_PROTOCOL_VERSIONS = Boolean.parseBoolean(serverSettings.getProperty("ShowProtocolsInConsole", "False")); if(MIN_PROTOCOL_REVISION > MAX_PROTOCOL_REVISION) throw new Error("MinProtocolRevision is bigger than MaxProtocolRevision in server configuration file."); DEADLOCKCHECK_INTERVAL = Integer.parseInt(serverSettings.getProperty("DeadLockCheck", "10000")); GCTaskDelay = Integer.parseInt(serverSettings.getProperty("GCTaskDelay", "0")); RESTART_HOUR = Integer.parseInt(serverSettings.getProperty("AutoRestartHour", "0")); SERVER_SERIAL_KEY = serverSettings.getProperty("SerialKey", "None"); if(SERVER_SERIAL_KEY.equals("None") || SERVER_SERIAL_KEY.length() < 40) throw new Error("Failed to load SerialKey."); WEBSERVER_REFRESH_STATS = Integer.parseInt(serverSettings.getProperty("WebServerRefreshTime", "15")); WEBSERVER_PORT = Integer.parseInt(serverSettings.getProperty("WebServerPort", "37567")); WEBSERVER_FOLDER = serverSettings.getProperty("WebServerFolder", "data/webserver/"); WEBSERVER_PAGE = serverSettings.getProperty("WebServerIndex", "index.html"); } catch(Exception e) { e.printStackTrace(); throw new Error("Failed to Load ./config/server.cfg File."); } try { Properties optionsSettings = new Properties(); InputStream is = new FileInputStream(new File("./config/options.cfg")); optionsSettings.load(is); is.close(); EVERYBODY_HAS_ADMIN_RIGHTS = Boolean.parseBoolean(optionsSettings.getProperty("EverybodyHasAdminRights", "false")); DEBUG = Boolean.parseBoolean(optionsSettings.getProperty("Debug", "false")); ASSERT = Boolean.parseBoolean(optionsSettings.getProperty("Assert", "false")); DEVELOPER = Boolean.parseBoolean(optionsSettings.getProperty("Developer", "false")); TEST_SERVER = Boolean.parseBoolean(optionsSettings.getProperty("TestServer", "false")); SERVER_LIST_TESTSERVER = Boolean.parseBoolean(optionsSettings.getProperty("TestServer", "false")); SERVER_LIST_BRACKET = Boolean.valueOf(optionsSettings.getProperty("ServerListBrackets", "false")).booleanValue(); SERVER_LIST_CLOCK = Boolean.valueOf(optionsSettings.getProperty("ServerListClock", "false")).booleanValue(); SERVER_GMONLY = Boolean.valueOf(optionsSettings.getProperty("ServerGMOnly", "false")).booleanValue(); AUTODESTROY_ITEM_AFTER = Integer.parseInt(optionsSettings.getProperty("AutoDestroyDroppedItemAfter", "0")); HERB_AUTO_DESTROY_TIME = Integer.parseInt(optionsSettings.getProperty("AutoDestroyHerbTime", "15")) * 1000; PROTECTED_ITEMS = optionsSettings.getProperty("ListOfProtectedItems"); LIST_PROTECTED_ITEMS = new FastList(); String arr$[] = PROTECTED_ITEMS.split(","); int len$ = arr$.length; for(int i$ = 0; i$ < len$; i$++) { String id = arr$[i$]; LIST_PROTECTED_ITEMS.add(Integer.valueOf(Integer.parseInt(id))); } DESTROY_DROPPED_PLAYER_ITEM = Boolean.valueOf(optionsSettings.getProperty("DestroyPlayerDroppedItem", "false")).booleanValue(); DESTROY_EQUIPABLE_PLAYER_ITEM = Boolean.valueOf(optionsSettings.getProperty("DestroyEquipableItem", "false")).booleanValue(); SAVE_DROPPED_ITEM = Boolean.valueOf(optionsSettings.getProperty("SaveDroppedItem", "false")).booleanValue(); EMPTY_DROPPED_ITEM_TABLE_AFTER_LOAD = Boolean.valueOf(optionsSettings.getProperty("EmptyDroppedItemTableAfterLoad", "false")).booleanValue(); SAVE_DROPPED_ITEM_INTERVAL = Integer.parseInt(optionsSettings.getProperty("SaveDroppedItemInterval", "0")) * 60000; CLEAR_DROPPED_ITEM_TABLE = Boolean.valueOf(optionsSettings.getProperty("ClearDroppedItemTable", "false")).booleanValue(); PRECISE_DROP_CALCULATION = Boolean.valueOf(optionsSettings.getProperty("PreciseDropCalculation", "True")).booleanValue(); MULTIPLE_ITEM_DROP = Boolean.valueOf(optionsSettings.getProperty("MultipleItemDrop", "True")).booleanValue(); COORD_SYNCHRONIZE = Integer.parseInt(optionsSettings.getProperty("CoordSynchronize", "-1")); ONLY_GM_ITEMS_FREE = Boolean.valueOf(optionsSettings.getProperty("OnlyGMItemsFree", "True")).booleanValue(); ALLOW_WAREHOUSE = Boolean.valueOf(optionsSettings.getProperty("AllowWarehouse", "True")).booleanValue(); WAREHOUSE_CACHE = Boolean.valueOf(optionsSettings.getProperty("WarehouseCache", "False")).booleanValue(); WAREHOUSE_CACHE_TIME = Integer.parseInt(optionsSettings.getProperty("WarehouseCacheTime", "15")); ALLOW_FREIGHT = Boolean.valueOf(optionsSettings.getProperty("AllowFreight", "True")).booleanValue(); ALLOW_WEAR = Boolean.valueOf(optionsSettings.getProperty("AllowWear", "False")).booleanValue(); WEAR_DELAY = Integer.parseInt(optionsSettings.getProperty("WearDelay", "5")); WEAR_PRICE = Integer.parseInt(optionsSettings.getProperty("WearPrice", "10")); ALLOW_LOTTERY = Boolean.valueOf(optionsSettings.getProperty("AllowLottery", "False")).booleanValue(); ALLOW_RACE = Boolean.valueOf(optionsSettings.getProperty("AllowRace", "False")).booleanValue(); ALLOW_WATER = Boolean.valueOf(optionsSettings.getProperty("AllowWater", "False")).booleanValue(); ALLOW_RENTPET = Boolean.valueOf(optionsSettings.getProperty("AllowRentPet", "False")).booleanValue(); ALLOW_DISCARDITEM = Boolean.valueOf(optionsSettings.getProperty("AllowDiscardItem", "True")).booleanValue(); ALLOWFISHING = Boolean.valueOf(optionsSettings.getProperty("AllowFishing", "False")).booleanValue(); ALLOW_MANOR = Boolean.parseBoolean(optionsSettings.getProperty("AllowManor", "False")); ALLOW_BOAT = Boolean.valueOf(optionsSettings.getProperty("AllowBoat", "False")).booleanValue(); ALLOW_RAID_BOSS_PUT = Boolean.valueOf(optionsSettings.getProperty("AllowRaidBossPetrified", "True")).booleanValue(); ALLOW_NPC_WALKERS = Boolean.valueOf(optionsSettings.getProperty("AllowNpcWalkers", "true")).booleanValue(); ALLOW_CURSED_WEAPONS = Boolean.valueOf(optionsSettings.getProperty("AllowCursedWeapons", "False")).booleanValue(); ALLOW_L2WALKER_CLIENT = L2WalkerAllowed.valueOf(optionsSettings.getProperty("AllowL2Walker", "False")); L2WALKER_REVISION = Integer.parseInt(optionsSettings.getProperty("L2WalkerRevision", "537")); AUTOBAN_L2WALKER_ACC = Boolean.valueOf(optionsSettings.getProperty("AutobanL2WalkerAcc", "False")).booleanValue(); GM_EDIT = Boolean.valueOf(optionsSettings.getProperty("GMEdit", "False")).booleanValue(); ACTIVATE_POSITION_RECORDER = Boolean.valueOf(optionsSettings.getProperty("ActivatePositionRecorder", "False")).booleanValue(); DEFAULT_GLOBAL_CHAT = optionsSettings.getProperty("GlobalChat", "ON"); DEFAULT_TRADE_CHAT = optionsSettings.getProperty("TradeChat", "ON"); LOG_CHAT = Boolean.valueOf(optionsSettings.getProperty("LogChat", "false")).booleanValue(); LOG_ITEMS = Boolean.valueOf(optionsSettings.getProperty("LogItems", "false")).booleanValue(); GMAUDIT = Boolean.valueOf(optionsSettings.getProperty("GMAudit", "False")).booleanValue(); COMMUNITY_TYPE = optionsSettings.getProperty("CommunityType", "old").toLowerCase(); BBS_DEFAULT = optionsSettings.getProperty("BBSDefault", "_bbshome"); SHOW_LEVEL_COMMUNITYBOARD = Boolean.valueOf(optionsSettings.getProperty("ShowLevelOnCommunityBoard", "False")).booleanValue(); SHOW_STATUS_COMMUNITYBOARD = Boolean.valueOf(optionsSettings.getProperty("ShowStatusOnCommunityBoard", "True")).booleanValue(); NAME_PAGE_SIZE_COMMUNITYBOARD = Integer.parseInt(optionsSettings.getProperty("NamePageSizeOnCommunityBoard", "50")); NAME_PER_ROW_COMMUNITYBOARD = Integer.parseInt(optionsSettings.getProperty("NamePerRowOnCommunityBoard", "5")); ZONE_TOWN = Integer.parseInt(optionsSettings.getProperty("ZoneTown", "0")); MAX_DRIFT_RANGE = Integer.parseInt(optionsSettings.getProperty("MaxDriftRange", "300")); MIN_NPC_ANIMATION = Integer.parseInt(optionsSettings.getProperty("MinNPCAnimation", "10")); MAX_NPC_ANIMATION = Integer.parseInt(optionsSettings.getProperty("MaxNPCAnimation", "20")); MIN_MONSTER_ANIMATION = Integer.parseInt(optionsSettings.getProperty("MinMonsterAnimation", "5")); MAX_MONSTER_ANIMATION = Integer.parseInt(optionsSettings.getProperty("MaxMonsterAnimation", "20")); SERVER_NEWS = Boolean.valueOf(optionsSettings.getProperty("ShowServerNews", "False")).booleanValue(); SHOW_NPC_LVL = Boolean.valueOf(optionsSettings.getProperty("ShowNpcLevel", "False")).booleanValue(); FORCE_INVENTORY_UPDATE = Boolean.valueOf(optionsSettings.getProperty("ForceInventoryUpdate", "False")).booleanValue(); AUTODELETE_INVALID_QUEST_DATA = Boolean.valueOf(optionsSettings.getProperty("AutoDeleteInvalidQuestData", "False")).booleanValue(); THREADING_MODEL = Integer.parseInt(optionsSettings.getProperty("ThreadingModel", "1")); THREAD_P_MOVE = Integer.parseInt(optionsSettings.getProperty("ThreadPoolSizeMove", "50")); THREAD_P_EFFECTS = Integer.parseInt(optionsSettings.getProperty("ThreadPoolSizeEffects", "20")); THREAD_P_GENERAL = Integer.parseInt(optionsSettings.getProperty("ThreadPoolSizeGeneral", "26")); IO_PACKET_THREAD_CORE_SIZE = Integer.parseInt(optionsSettings.getProperty("UrgentPacketThreadCoreSize", "2")); GENERAL_PACKET_THREAD_CORE_SIZE = Integer.parseInt(optionsSettings.getProperty("GeneralPacketThreadCoreSize", "8")); GENERAL_THREAD_CORE_SIZE = Integer.parseInt(optionsSettings.getProperty("GeneralThreadCoreSize", "8")); NPC_AI_MAX_THREAD = Integer.parseInt(optionsSettings.getProperty("NpcAiMaxThread", "10")); PLAYER_AI_MAX_THREAD = Integer.parseInt(optionsSettings.getProperty("PlayerAiMaxThread", "20")); DELETE_DAYS = Integer.parseInt(optionsSettings.getProperty("DeleteCharAfterDays", "7")); DEFAULT_PUNISH = Integer.parseInt(optionsSettings.getProperty("DefaultPunish", "2")); DEFAULT_PUNISH_PARAM = Integer.parseInt(optionsSettings.getProperty("DefaultPunishParam", "0")); LAZY_CACHE = Boolean.valueOf(optionsSettings.getProperty("LazyCache", "False")).booleanValue(); PACKET_LIFETIME = Integer.parseInt(optionsSettings.getProperty("PacketLifeTime", "0")); BYPASS_VALIDATION = Boolean.valueOf(optionsSettings.getProperty("BypassValidation", "True")).booleanValue(); GAMEGUARD_ENFORCE = Boolean.valueOf(optionsSettings.getProperty("GameGuardEnforce", "False")).booleanValue(); GAMEGUARD_PROHIBITACTION = Boolean.valueOf(optionsSettings.getProperty("GameGuardProhibitAction", "False")).booleanValue(); GRIDS_ALWAYS_ON = Boolean.parseBoolean(optionsSettings.getProperty("GridsAlwaysOn", "False")); GRID_NEIGHBOR_TURNON_TIME = Integer.parseInt(optionsSettings.getProperty("GridNeighborTurnOnTime", "30")); GRID_NEIGHBOR_TURNOFF_TIME = Integer.parseInt(optionsSettings.getProperty("GridNeighborTurnOffTime", "300")); GEODATA = Integer.parseInt(optionsSettings.getProperty("GeoData", "0")); FORCE_GEODATA = Boolean.parseBoolean(optionsSettings.getProperty("ForceGeoData", "True")); ACCEPT_GEOEDITOR_CONN = Boolean.parseBoolean(optionsSettings.getProperty("AcceptGeoeditorConn", "False")); USE_3D_MAP = Boolean.valueOf(optionsSettings.getProperty("Use3DMap", "False")).booleanValue(); PATH_NODE_RADIUS = Integer.parseInt(optionsSettings.getProperty("PathNodeRadius", "50")); NEW_NODE_ID = Integer.parseInt(optionsSettings.getProperty("NewNodeId", "7952")); SELECTED_NODE_ID = Integer.parseInt(optionsSettings.getProperty("NewNodeId", "7952")); LINKED_NODE_ID = Integer.parseInt(optionsSettings.getProperty("NewNodeId", "7952")); NEW_NODE_TYPE = optionsSettings.getProperty("NewNodeType", "npc"); COUNT_PACKETS = Boolean.valueOf(optionsSettings.getProperty("CountPacket", "false")).booleanValue(); DUMP_PACKET_COUNTS = Boolean.valueOf(optionsSettings.getProperty("DumpPacketCounts", "false")).booleanValue(); DUMP_INTERVAL_SECONDS = Integer.parseInt(optionsSettings.getProperty("PacketDumpInterval", "60")); MINIMUM_UPDATE_DISTANCE = Integer.parseInt(optionsSettings.getProperty("MaximumUpdateDistance", "50")); MINIMUN_UPDATE_TIME = Integer.parseInt(optionsSettings.getProperty("MinimumUpdateTime", "500")); CHECK_KNOWN = Boolean.valueOf(optionsSettings.getProperty("CheckKnownList", "false")).booleanValue(); KNOWNLIST_FORGET_DELAY = Integer.parseInt(optionsSettings.getProperty("KnownListForgetDelay", "10000")); } Показать контент catch(Exception e) { e.printStackTrace(); throw new Error("Failed to Load ./config/options.cfg File."); } try { Properties telnetSettings = new Properties(); InputStream is = new FileInputStream(new File("./config/telnet.cfg")); telnetSettings.load(is); is.close(); IS_TELNET_ENABLED = Boolean.valueOf(telnetSettings.getProperty("EnableTelnet", "false")).booleanValue(); } catch(Exception e) { e.printStackTrace(); throw new Error("Failed to Load ./config/telnet.cfg File."); } try { Properties idSettings = new Properties(); InputStream is = new FileInputStream(new File("./config/idfactory.cfg")); idSettings.load(is); is.close(); MAP_TYPE = ObjectMapType.valueOf(idSettings.getProperty("L2Map", "WorldObjectMap")); SET_TYPE = ObjectSetType.valueOf(idSettings.getProperty("L2Set", "WorldObjectSet")); IDFACTORY_TYPE = IdFactoryType.valueOf(idSettings.getProperty("IDFactory", "Compaction")); BAD_ID_CHECKING = Boolean.valueOf(idSettings.getProperty("BadIdChecking", "True")).booleanValue(); } catch(Exception e) { e.printStackTrace(); throw new Error("Failed to Load ./config/idfactory.cfg File."); } try { Properties otherSettings = new Properties(); InputStream is = new FileInputStream(new File("./config/other.cfg")); otherSettings.load(is); is.close(); DEEPBLUE_DROP_RULES = Boolean.parseBoolean(otherSettings.getProperty("UseDeepBlueDropRules", "True")); ALLOW_GUARDS = Boolean.valueOf(otherSettings.getProperty("AllowGuards", "False")).booleanValue(); EFFECT_CANCELING = Boolean.valueOf(otherSettings.getProperty("CancelLesserEffect", "True")).booleanValue(); ALLOW_WYVERN_UPGRADER = Boolean.valueOf(otherSettings.getProperty("AllowWyvernUpgrader", "False")).booleanValue(); INVENTORY_MAXIMUM_NO_DWARF = Integer.parseInt(otherSettings.getProperty("MaximumSlotsForNoDwarf", "80")); INVENTORY_MAXIMUM_DWARF = Integer.parseInt(otherSettings.getProperty("MaximumSlotsForDwarf", "100")); INVENTORY_MAXIMUM_GM = Integer.parseInt(otherSettings.getProperty("MaximumSlotsForGMPlayer", "250")); MAX_ITEM_IN_PACKET = Math.max(INVENTORY_MAXIMUM_NO_DWARF, Math.max(INVENTORY_MAXIMUM_DWARF, INVENTORY_MAXIMUM_GM)); WAREHOUSE_SLOTS_NO_DWARF = Integer.parseInt(otherSettings.getProperty("MaximumWarehouseSlotsForNoDwarf", "100")); WAREHOUSE_SLOTS_DWARF = Integer.parseInt(otherSettings.getProperty("MaximumWarehouseSlotsForDwarf", "120")); WAREHOUSE_SLOTS_CLAN = Integer.parseInt(otherSettings.getProperty("MaximumWarehouseSlotsForClan", "150")); FREIGHT_SLOTS = Integer.parseInt(otherSettings.getProperty("MaximumFreightSlots", "20")); AUGMENT_EXCLUDE_NOTDONE = Boolean.parseBoolean(otherSettings.getProperty("AugmentExcludeNotdone", "false")); HP_REGEN_MULTIPLIER = Double.parseDouble(otherSettings.getProperty("HpRegenMultiplier", "100")) / 100D; MP_REGEN_MULTIPLIER = Double.parseDouble(otherSettings.getProperty("MpRegenMultiplier", "100")) / 100D; CP_REGEN_MULTIPLIER = Double.parseDouble(otherSettings.getProperty("CpRegenMultiplier", "100")) / 100D; RAID_HP_REGEN_MULTIPLIER = Double.parseDouble(otherSettings.getProperty("RaidHpRegenMultiplier", "100")) / 100D; RAID_MP_REGEN_MULTIPLIER = Double.parseDouble(otherSettings.getProperty("RaidMpRegenMultiplier", "100")) / 100D; RAID_DEFENCE_MULTIPLIER = Double.parseDouble(otherSettings.getProperty("RaidDefenceMultiplier", "100")) / 100D; RAID_MINION_RESPAWN_TIMER = Integer.parseInt(otherSettings.getProperty("RaidMinionRespawnTime", "300000")); RAID_MIN_RESPAWN_MULTIPLIER = Float.parseFloat(otherSettings.getProperty("RaidMinRespawnMultiplier", "1.0")); RAID_MAX_RESPAWN_MULTIPLIER = Float.parseFloat(otherSettings.getProperty("RaidMaxRespawnMultiplier", "1.0")); UNSTUCK_INTERVAL = Integer.parseInt(otherSettings.getProperty("UnstuckInterval", "300")); PLAYER_SPAWN_PROTECTION = Integer.parseInt(otherSettings.getProperty("PlayerSpawnProtection", "0")); PLAYER_FAKEDEATH_UP_PROTECTION = Integer.parseInt(otherSettings.getProperty("PlayerFakeDeathUpProtection", "0")); PARTY_XP_CUTOFF_METHOD = otherSettings.getProperty("PartyXpCutoffMethod", "percentage"); PARTY_XP_CUTOFF_PERCENT = Double.parseDouble(otherSettings.getProperty("PartyXpCutoffPercent", "3.")); PARTY_XP_CUTOFF_LEVEL = Integer.parseInt(otherSettings.getProperty("PartyXpCutoffLevel", "30")); RESPAWN_RESTORE_CP = Double.parseDouble(otherSettings.getProperty("RespawnRestoreCP", "0")) / 100D; RESPAWN_RESTORE_HP = Double.parseDouble(otherSettings.getProperty("RespawnRestoreHP", "70")) / 100D; RESPAWN_RESTORE_MP = Double.parseDouble(otherSettings.getProperty("RespawnRestoreMP", "70")) / 100D; RESPAWN_RANDOM_ENABLED = Boolean.parseBoolean(otherSettings.getProperty("RespawnRandomInTown", "False")); RESPAWN_RANDOM_MAX_OFFSET = Integer.parseInt(otherSettings.getProperty("RespawnRandomMaxOffset", "50")); MAX_PVTSTORE_SLOTS_DWARF = Integer.parseInt(otherSettings.getProperty("MaxPvtStoreSlotsDwarf", "5")); MAX_PVTSTORE_SLOTS_OTHER = Integer.parseInt(otherSettings.getProperty("MaxPvtStoreSlotsOther", "4")); STORE_SKILL_COOLTIME = Boolean.parseBoolean(otherSettings.getProperty("StoreSkillCooltime", "true")); PET_RENT_NPC = otherSettings.getProperty("ListPetRentNpc", "30827"); LIST_PET_RENT_NPC = new FastList(); String arr$[] = PET_RENT_NPC.split(","); int len$ = arr$.length; for(int i$ = 0; i$ < len$; i$++) { String id = arr$[i$]; LIST_PET_RENT_NPC.add(Integer.valueOf(Integer.parseInt(id))); } NONDROPPABLE_ITEMS = otherSettings.getProperty("ListOfNonDroppableItems", "1147,425,1146,461,10,2368,7,6,2370,2369,5598"); LIST_NONDROPPABLE_ITEMS = new FastList(); arr$ = NONDROPPABLE_ITEMS.split(","); len$ = arr$.length; for(int i$ = 0; i$ < len$; i$++) { String id = arr$[i$]; LIST_NONDROPPABLE_ITEMS.add(Integer.valueOf(Integer.parseInt(id))); } ANNOUNCE_MAMMON_SPAWN = Boolean.parseBoolean(otherSettings.getProperty("AnnounceMammonSpawn", "True")); ALT_PRIVILEGES_ADMIN = Boolean.parseBoolean(otherSettings.getProperty("AltPrivilegesAdmin", "False")); ALT_PRIVILEGES_SECURE_CHECK = Boolean.parseBoolean(otherSettings.getProperty("AltPrivilegesSecureCheck", "True")); ALT_PRIVILEGES_DEFAULT_LEVEL = Integer.parseInt(otherSettings.getProperty("AltPrivilegesDefaultLevel", "100")); MASTERACCESS_LEVEL = Integer.parseInt(otherSettings.getProperty("MasterAccessLevel", "127")); GM_HERO_AURA = Boolean.parseBoolean(otherSettings.getProperty("GMHeroAura", "True")); GM_STARTUP_INVULNERABLE = Boolean.parseBoolean(otherSettings.getProperty("GMStartupInvulnerable", "True")); GM_STARTUP_INVISIBLE = Boolean.parseBoolean(otherSettings.getProperty("GMStartupInvisible", "True")); GM_STARTUP_SILENCE = Boolean.parseBoolean(otherSettings.getProperty("GMStartupSilence", "True")); GM_STARTUP_AUTO_LIST = Boolean.parseBoolean(otherSettings.getProperty("GMStartupAutoList", "True")); GM_ADMIN_MENU_STYLE = otherSettings.getProperty("GMAdminMenuStyle", "modern"); PETITIONING_ALLOWED = Boolean.parseBoolean(otherSettings.getProperty("PetitioningAllowed", "True")); MAX_PETITIONS_PER_PLAYER = Integer.parseInt(otherSettings.getProperty("MaxPetitionsPerPlayer", "5")); MAX_PETITIONS_PENDING = Integer.parseInt(otherSettings.getProperty("MaxPetitionsPending", "25")); JAIL_IS_PVP = Boolean.valueOf(otherSettings.getProperty("JailIsPvp", "True")).booleanValue(); JAIL_DISABLE_CHAT = Boolean.valueOf(otherSettings.getProperty("JailDisableChat", "True")).booleanValue(); DEATH_PENALTY_CHANCE = Integer.parseInt(otherSettings.getProperty("DeathPenaltyChance", "20")); String ArmEncTable[] = otherSettings.getProperty("ArmorEnchantTable", "").split(";"); String arr$[] = ArmEncTable; int len$ = arr$.length; for(int i$ = 0; i$ < len$; i$++) { String aet = arr$[i$]; try { ARMOR_ENCHANT_TABLE.add(Float.valueOf(aet)); continue; } catch(NumberFormatException nfe) { } if(!aet.equals("")) System.out.println((new StringBuilder()).append("invalid config property -> ArmorEnchantTable \"").append(aet).append("\"").toString()); } String FullArmEncTable[] = otherSettings.getProperty("FullArmorEnchantTable", "").split(";"); String arr$[] = FullArmEncTable; int len$ = arr$.length; for(int i$ = 0; i$ < len$; i$++) { String faet = arr$[i$]; try { FULL_ARMOR_ENCHANT_TABLE.add(Float.valueOf(faet)); } catch(NumberFormatException nfe) { if(!faet.equals("")) System.out.println((new StringBuilder()).append("invalid config property -> ArmorEnchantTable \"").append(faet).append("\"").toString()); } } } catch(Exception e) { e.printStackTrace(); throw new Error("Failed to Load ./config/other.cfg File."); } try { Properties enchSettings = new Properties(); InputStream is = new FileInputStream(new File("./config/enchants.cfg")); enchSettings.load(is); is.close(); ENCHANT_MAX_WEAPON = Integer.parseInt(enchSettings.getProperty("EnchantMaxWeapon", "16")); ENCHANT_MAX_ARMOR = Integer.parseInt(enchSettings.getProperty("EnchantMaxArmor", "16")); ENCHANT_MAX_JEWELRY = Integer.parseInt(enchSettings.getProperty("EnchantMaxJewelry", "16")); ENCHANT_SAFE_MAX = Integer.parseInt(enchSettings.getProperty("EnchantSafeMax", "3")); ENCHANT_SAFE_MAX_FULL = Integer.parseInt(enchSettings.getProperty("EnchantSafeMaxFull", "4")); ENCHANT_CHANCE_WEAPON_CRYSTAL = Integer.parseInt(enchSettings.getProperty("EnchantChanceWeaponCrystal", "100")); ENCHANT_CHANCE_ARMOR_CRYSTAL = Integer.parseInt(enchSettings.getProperty("EnchantChanceArmorCrystal", "100")); ENCHANT_CHANCE_JEWELRY_CRYSTAL = Integer.parseInt(enchSettings.getProperty("EnchantChanceJewelryCrystal", "100")); ENCHANT_CHANCE_NEXT = Integer.parseInt(enchSettings.getProperty("EnchantXX", "15")); ENCHANT_FAILED_NUM = Integer.parseInt(enchSettings.getProperty("EnchantFailed", "0")); MAGIC_CHANCE_BEFORE_NEXT = Float.parseFloat(enchSettings.getProperty("MagicEnchantSuccesRateBeforeXX", "25.0")); MAGIC_CHANCE_AFTER_NEXT = Float.parseFloat(enchSettings.getProperty("MagicEnchantSuccesRateAfterXX", "35.0")); WEAPON_CHANCE_BEFORE_NEXT = Float.parseFloat(enchSettings.getProperty("WeaponEnchantSuccesRateBeforeXX", "30.0")); WEAPON_CHANCE_AFTER_NEXT = Float.parseFloat(enchSettings.getProperty("WeaponEnchantSuccesRateAfterXX", "30.0")); String ArmEncTable[] = enchSettings.getProperty("ArmorEnchantTable", "").split(";"); String arr$[] = ArmEncTable; int len$ = arr$.length; for(int i$ = 0; i$ < len$; i$++) { String aet = arr$[i$]; try { ARMOR_ENCHANT_TABLE.add(Float.valueOf(aet)); continue; } catch(NumberFormatException nfe) { } if(!aet.equals("")) System.out.println((new StringBuilder()).append("invalid config property -> ArmorEnchantTable \"").append(aet).append("\"").toString()); } String FullArmEncTable[] = enchSettings.getProperty("FullArmorEnchantTable", "").split(";"); String arr$[] = FullArmEncTable; int len$ = arr$.length; for(int i$ = 0; i$ < len$; i$++) { String faet = arr$[i$]; try { FULL_ARMOR_ENCHANT_TABLE.add(Float.valueOf(faet)); continue; } catch(NumberFormatException nfe) { } if(!faet.equals("")) System.out.println((new StringBuilder()).append("invalid config property -> ArmorEnchantTable \"").append(faet).append("\"").toString()); } MULT_ENCH = Integer.parseInt(enchSettings.getProperty("EnchMultisell", "0")); String propertySplit[] = enchSettings.getProperty("EnchMultisellLists", "0,0").split(";"); String arr$[] = propertySplit; int len$ = arr$.length; for(int i$ = 0; i$ < len$; i$++) { String augs = arr$[i$]; String aug[] = augs.split(","); try { MULT_ENCHS.put(Integer.valueOf(aug[0]), Integer.valueOf(aug[1])); continue; } catch(NumberFormatException nfe) { } if(!aug.equals("")) System.out.println((new StringBuilder()).append("enchant.cfg: EnchMultisellLists error: ").append(aug[0]).toString()); } ENCHANT_PENALTY = Boolean.valueOf(enchSettings.getProperty("EnchantPenalty", "True")).booleanValue(); ENCHANT_HERO_WEAPONS = Boolean.valueOf(enchSettings.getProperty("EnchHeroWeapons", "False")).booleanValue(); ENCHANT_ALT_PACKET = true; if(ENCHANT_ALT_PACKET) { ENCHANT_ALT_MAGICCAHNCE = Integer.parseInt(enchSettings.getProperty("EnchantAltMagicChance", "65")); propertySplit = enchSettings.getProperty("EnchantAltMagicSteps", "1,100;2,100").split(";"); arr$ = propertySplit; len$ = arr$.length; for(int i$ = 0; i$ < len$; i$++) { String augs = arr$[i$]; String aug[] = augs.split(","); try { ENCHANT_ALT_MAGICSTEPS.put(Integer.valueOf(aug[0]), Integer.valueOf(aug[1])); continue; } catch(NumberFormatException nfe) { } if(!aug.equals("")) System.out.println((new StringBuilder()).append("enchant.cfg: EnchantAltMagicSteps error: ").append(aug[0]).toString()); } ENCHANT_ALT_WEAPONCAHNCE = Integer.parseInt(enchSettings.getProperty("EnchantAltWeaponChance", "75")); ENCHANT_ALT_WEAPONFAILBLESS = Integer.parseInt(enchSettings.getProperty("EnchantAltWeaponBlessFail", "0")); ENCHANT_ALT_WEAPONFAILCRYST = Integer.parseInt(enchSettings.getProperty("EnchantAltWeaponCrystallFail", "0")); propertySplit = enchSettings.getProperty("EnchantAltWeaponSteps", "1,100;2,100").split(";"); arr$ = propertySplit; len$ = arr$.length; for(int i$ = 0; i$ < len$; i$++) { String augs = arr$[i$]; String aug[] = augs.split(","); try { ENCHANT_ALT_WEAPONSTEPS.put(Integer.valueOf(aug[0]), Integer.valueOf(aug[1])); continue; } catch(NumberFormatException nfe) { } if(!aug.equals("")) System.out.println((new StringBuilder()).append("enchant.cfg: EnchantAltWeaponSteps error: ").append(aug[0]).toString()); } ENCHANT_ALT_ARMORCAHNCE = Integer.parseInt(enchSettings.getProperty("EnchantAltArmorChance", "75")); ENCHANT_ALT_ARMORFAILBLESS = Integer.parseInt(enchSettings.getProperty("EnchantAltArmorBlessFail", "0")); ENCHANT_ALT_ARMORFAILCRYST = Integer.parseInt(enchSettings.getProperty("EnchantAltArmorCrystallFail", "0")); propertySplit = enchSettings.getProperty("EnchantAltArmorSteps", "1,100;2,100").split(";"); arr$ = propertySplit; len$ = arr$.length; for(int i$ = 0; i$ < len$; i$++) { String augs = arr$[i$]; String aug[] = augs.split(","); try { ENCHANT_ALT_ARMORSTEPS.put(Integer.valueOf(aug[0]), Integer.valueOf(aug[1])); continue; } catch(NumberFormatException nfe) { } if(!aug.equals("")) System.out.println((new StringBuilder()).append("enchant.cfg: EnchantAltArmorSteps error: ").append(aug[0]).toString()); } ENCHANT_ALT_JEWERLYCAHNCE = Integer.parseInt(enchSettings.getProperty("EnchantAltJewerlyChance", "75")); ENCHANT_ALT_JEWERLYFAILBLESS = Integer.parseInt(enchSettings.getProperty("EnchantAltJewerlyBlessFail", "0")); ENCHANT_ALT_JEWERLYFAILCRYST = Integer.parseInt(enchSettings.getProperty("EnchantAltJewerlyCrystallFail", "0")); propertySplit = enchSettings.getProperty("EnchantAltJewerlySteps", "1,100;2,100").split(";"); arr$ = propertySplit; len$ = arr$.length; for(int i$ = 0; i$ < len$; i$++) { String augs = arr$[i$]; String aug[] = augs.split(","); try { ENCHANT_ALT_JEWERLYSTEPS.put(Integer.valueOf(aug[0]), Integer.valueOf(aug[1])); continue; } catch(NumberFormatException nfe) { } if(!aug.equals("")) System.out.println((new StringBuilder()).append("enchant.cfg: EnchantAltJewerlySteps error: ").append(aug[0]).toString()); } } propertySplit = null; ENCH_ANTI_CLICK = Boolean.parseBoolean(enchSettings.getProperty("AntiClick", "False")); ENCH_ANTI_CLICK_STEP = Integer.parseInt(enchSettings.getProperty("AntiClickStep", "10")); } catch(Exception e) { e.printStackTrace(); throw new Error("Failed to Load ./config/enchants.cfg File."); } try { Показать контент Properties serviseSet = new Properties(); InputStream is = new FileInputStream(new File("./config/services.cfg")); serviseSet.load(is); is.close(); STOCK_SERTIFY = Integer.parseInt(serviseSet.getProperty("Sertify", "3435")); SERTIFY_PRICE = Integer.parseInt(serviseSet.getProperty("SertifyPrice", "10")); FIRST_BALANCE = Integer.parseInt(serviseSet.getProperty("StartBalance", "0")); DONATE_COIN = Integer.parseInt(serviseSet.getProperty("StockCoin", "5962")); DONATE_COIN_NEMA = serviseSet.getProperty("StockCoinName", "Gold Golem"); DONATE_RATE = Integer.parseInt(serviseSet.getProperty("CoinConvert", "10")); NALOG_NPS = Integer.parseInt(serviseSet.getProperty("StockTax", "10")); VAL_NAME = serviseSet.getProperty("CoinConvertName", "P."); PAGE_LIMIT = Integer.parseInt(serviseSet.getProperty("PageLimit", "10")); AUGMENT_COIN = Integer.parseInt(serviseSet.getProperty("AugmentCoin", "4355")); ENCHANT_COIN = Integer.parseInt(serviseSet.getProperty("EnchantCoin", "4356")); AUGMENT_COIN_NAME = serviseSet.getProperty("AugmentCoinName", "Blue Eva"); ENCHANT_COIN_NAME = serviseSet.getProperty("EnchantCoinName", "Gold Einhasad"); AUGMENT_PRICE = Integer.parseInt(serviseSet.getProperty("AugmentPrice", "5")); ENCHANT_PRICE = Integer.parseInt(serviseSet.getProperty("EnchantPrice", "3")); AUGSALE_COIN = Integer.parseInt(serviseSet.getProperty("AugsaleCoin", "5962")); AUGSALE_PRICE = Integer.parseInt(serviseSet.getProperty("AugsalePrice", "20")); AUGSALE_COIN_NAME = serviseSet.getProperty("AugsaleCoinName", "Gold Golem"); String propertySplit[] = serviseSet.getProperty("Augsales", "3250,10").split(";"); String arr$[] = propertySplit; int len$ = arr$.length; for(int i$ = 0; i$ < len$; i$++) { String augs = arr$[i$]; String aug[] = augs.split(","); try { AUGSALE_TABLE.put(Integer.valueOf(aug[0]), Integer.valueOf(aug[1])); continue; } catch(NumberFormatException nfe) { } if(!aug.equals("")) System.out.println((new StringBuilder()).append("services.cfg: magicbuff error: ").append(aug[0]).toString()); } propertySplit = null; SOB_ID = Integer.parseInt(serviseSet.getProperty("SobSkill", "0")); SOB_NPC = Integer.parseInt(serviseSet.getProperty("SobNpc", "0")); SOB_COIN = Integer.parseInt(serviseSet.getProperty("SobCoin", "5962")); SOB_PRICE_ONE = Integer.parseInt(serviseSet.getProperty("SobPriceOne", "5")); SOB_PRICE_TWO = Integer.parseInt(serviseSet.getProperty("SobPriceTwo", "10")); SOB_COIN_NAME = serviseSet.getProperty("SobCoinName", "Gold Golem"); BUFFER_ID = Integer.parseInt(serviseSet.getProperty("Buffer", "40001")); propertySplit = serviseSet.getProperty("Magical", "1204,2").split(";"); arr$ = propertySplit; len$ = arr$.length; for(int i$ = 0; i$ < len$; i$++) { String buffs = arr$[i$]; String pbuff[] = buffs.split(","); try { M_BUFF.put(Integer.valueOf(pbuff[0]), Integer.valueOf(pbuff[1])); continue; } catch(NumberFormatException nfe) { } if(!pbuff.equals("")) System.out.println((new StringBuilder()).append("services.cfg: magicbuff error: ").append(pbuff[0]).toString()); } propertySplit = null; propertySplit = serviseSet.getProperty("Fighter", "1204,2").split(";"); arr$ = propertySplit; len$ = arr$.length; for(int i$ = 0; i$ < len$; i$++) { String buffs = arr$[i$]; String pbuff[] = buffs.split(","); try { F_BUFF.put(Integer.valueOf(pbuff[0]), Integer.valueOf(pbuff[1])); continue; } catch(NumberFormatException nfe) { } if(!pbuff.equals("")) System.out.println((new StringBuilder()).append("services.cfg: fightbuff error: ").append(pbuff[0]).toString()); } propertySplit = serviseSet.getProperty("ForbiddenProfileBuffs", "4,72,76,77,78,82,83,86,91,94,99,109,110,111,112,121,123,130,131,139,176,222,282,287,292,297,298,313,317,334,350,351,355,356,357,359,360,396,406,410,411,413,414,415,416,417,420,421,423,424,425,438,439,442,443,445,446,447,1001,1374,1410,1418,1427,3158,3142,3132,3133,3134,3135,3136,3199,3200,3201,3202,3203,3633,5104,5105").split(","); arr$ = propertySplit; len$ = arr$.length; for(int i$ = 0; i$ < len$; i$++) { String buff = arr$[i$]; try { F_PROFILE_BUFFS.add(Integer.valueOf(buff)); continue; } catch(NumberFormatException nfe) { } if(!buff.equals("")) System.out.println((new StringBuilder()).append("services.cfg: ForbiddenProfileBuffs error: ").append(buff).toString()); } propertySplit = serviseSet.getProperty("AdditionBuffs", "8888,7777").split(","); arr$ = propertySplit; len$ = arr$.length; for(int i$ = 0; i$ < len$; i$++) { String buff = arr$[i$]; try { C_ALLOWED_BUFFS.add(Integer.valueOf(buff)); continue; } catch(NumberFormatException nfe) { } if(!buff.equals("")) System.out.println((new StringBuilder()).append("services.cfg: AdditionBuffs error: ").append(buff).toString()); } POST_CHARBRIEF = Boolean.valueOf(serviseSet.getProperty("NewbeiBrief", "False")).booleanValue(); POST_BRIEFAUTHOR = serviseSet.getProperty("BriefAuthor", ":0"); POST_BRIEFTHEME = serviseSet.getProperty("BriefTheme", ""); POST_BRIEFTEXT = serviseSet.getProperty("BriefText", ""); POST_NPCNAME = serviseSet.getProperty("BriefNpc", "Ahosey"); ALLOW_CLASS_MASTERS = Boolean.valueOf(serviseSet.getProperty("AllowClassMasters", "False")).booleanValue(); propertySplit = serviseSet.getProperty("ClassMasterPrices", "1,57,50000;2,57,500000;3,57,5000000").split(";"); arr$ = propertySplit; len$ = arr$.length; for(int i$ = 0; i$ < len$; i$++) { String augs = arr$[i$]; String aug[] = augs.split(","); try { CLASS_MASTERS_PRICES.put(Integer.valueOf(Integer.parseInt(aug[0])), new EventReward(Integer.parseInt(aug[1]), Integer.parseInt(aug[2]), 0)); continue; } catch(NumberFormatException nfe) { } if(!aug.equals("")) System.out.println((new StringBuilder()).append("services.cfg: ClassMasterPrices error: ").append(aug).toString()); } REWARD_SHADOW = Boolean.valueOf(serviseSet.getProperty("AllowShadowReward", "False")).booleanValue(); MASTER_NPCNAME = serviseSet.getProperty("MasterNpc", "PvP Server"); ALLOW_CLAN_LEVEL = Boolean.valueOf(serviseSet.getProperty("AllowClanLevel", "False")).booleanValue(); MCLAN_COIN = Integer.parseInt(serviseSet.getProperty("MClanCoin", "5962")); MCLAN_COIN_NAME = serviseSet.getProperty("MClanCoinName", "Gold Golem"); CLAN_LVL6 = Integer.parseInt(serviseSet.getProperty("Level6", "10")); CLAN_LVL7 = Integer.parseInt(serviseSet.getProperty("Level7", "20")); CLAN_LVL8 = Integer.parseInt(serviseSet.getProperty("Level8", "30")); CLAN_COIN = Integer.parseInt(serviseSet.getProperty("ClanCoin", "5962")); CLAN_COIN_NAME = serviseSet.getProperty("ClanCoinName", "Gold Golem"); CLAN_POINTS = Integer.parseInt(serviseSet.getProperty("ClanPoints", "1000")); CLAN_POINTS_PRICE = Integer.parseInt(serviseSet.getProperty("ClanPointsPrice", "5")); ALLOW_DSHOP = Boolean.valueOf(serviseSet.getProperty("AllowDonateShop", "False")).booleanValue(); ALLOW_CSHOP = Boolean.valueOf(serviseSet.getProperty("AllowChinaShop", "False")).booleanValue(); ALLOW_FAKE_PLAYERS = Boolean.parseBoolean(serviseSet.getProperty("AllowFakePlayers", "False")); FAKE_PLAYERS_PERCENT = Integer.parseInt(serviseSet.getProperty("FakePlayersCount", "100")); ONLINE_PERC = Float.parseFloat(serviseSet.getProperty("FakePlayersPercent", "0")); FAKE_PLAYERS_DELAY = Integer.parseInt(serviseSet.getProperty("FakePlayersDelay", "600000")); PWHERO_COIN = Integer.parseInt(serviseSet.getProperty("BBSHeroCoin", "5962")); PWHERO_PRICE = Integer.parseInt(serviseSet.getProperty("BBSHeroCoinDayPrice", "999")); PWHERO_FPRICE = Integer.parseInt(serviseSet.getProperty("BBSHeroCoinForeverPrice", "999")); PWHERO_MINDAYS = Integer.parseInt(serviseSet.getProperty("BBSHeroMinDays", "1")); PWHERO_TRANPRICE = Integer.parseInt(serviseSet.getProperty("BBSHeroCoinTransferPrice", "999")); PWCSKILLS_COIN = Integer.parseInt(serviseSet.getProperty("BBSCustomSkillCoin", "5962")); PWCSKILLS_PRICE = Integer.parseInt(serviseSet.getProperty("BBSCustomSkillPrice", "999")); PWENCHSKILL_COIN = Integer.parseInt(serviseSet.getProperty("BBSEnchantSkillCoin", "5962")); PWENCHSKILL_PRICE = Integer.parseInt(serviseSet.getProperty("BBSEnchantSkillPrice", "999")); PWCNGSKILLS_COIN = Integer.parseInt(serviseSet.getProperty("BBSTransferSkillCoin", "0")); PWCNGSKILLS_PRICE = Integer.parseInt(serviseSet.getProperty("BBSTransferSkillPrice", "999")); BBS_AUC_ITEM_COIN = Integer.parseInt(serviseSet.getProperty("AucItemCoin", "4037")); BBS_AUC_ITEM_PRICE = Integer.parseInt(serviseSet.getProperty("AucItemPrice", "1")); BBS_AUC_ITEM_NAME = serviseSet.getProperty("AucItemName", "Coin Of Luck"); BBS_AUC_AUG_COIN = Integer.parseInt(serviseSet.getProperty("AucAugCoin", "4037")); BBS_AUC_AUG_PRICE = Integer.parseInt(serviseSet.getProperty("AucAugPrice", "1")); BBS_AUC_AUG_NAME = serviseSet.getProperty("AucAugName", "Coin Of Luck"); BBS_AUC_SKILL_COIN = Integer.parseInt(serviseSet.getProperty("AucSkillCoin", "4037")); BBS_AUC_SKILL_PRICE = Integer.parseInt(serviseSet.getProperty("AucSkillPrice", "1")); BBS_AUC_SKILL_NAME = serviseSet.getProperty("AucSkillName", "Coin Of Luck"); BBS_AUC_HERO_COIN = Integer.parseInt(serviseSet.getProperty("AucHeroCoin", "4037")); BBS_AUC_HERO_PRICE = Integer.parseInt(serviseSet.getProperty("AucHeroPrice", "1")); BBS_AUC_HERO_NAME = serviseSet.getProperty("AucHeroName", "Coin Of Luck"); propertySplit = serviseSet.getProperty("BBSCustomSkills", "9999,9").split(";"); arr$ = propertySplit; len$ = arr$.length; for(int i$ = 0; i$ < len$; i$++) { String augs = arr$[i$]; String aug[] = augs.split(","); try { PWCSKILLS.put(Integer.valueOf(aug[0]), Integer.valueOf(aug[1])); continue; } catch(NumberFormatException nfe) { } if(!aug.equals("")) System.out.println((new StringBuilder()).append("services.cfg: BBSCustomSkills error: ").append(aug[0]).toString()); } PWNCOLOR_COIN = Integer.parseInt(serviseSet.getProperty("BBSColorNameCoin", "5962")); PWNCOLOR_PRICE = Integer.parseInt(serviseSet.getProperty("BBSColorNamePrice", "999")); PWNCOLOR_COINNAME = serviseSet.getProperty("BBSColorNameCoinName", "Gold Golem"); PWTCOLOR_COIN = Integer.parseInt(serviseSet.getProperty("BBSColorTitleCoin", "5962")); PWTCOLOR_PRICE = Integer.parseInt(serviseSet.getProperty("BBSColorTitlePrice", "999")); PWTCOLOR_COINNAME = serviseSet.getProperty("BBSColorTitleCoinName", "Gold Golem"); PWCNGCLASS_COIN = Integer.parseInt(serviseSet.getProperty("BBSChangeClassCoin", "5962")); PWCNGCLASS_PRICE = Integer.parseInt(serviseSet.getProperty("BBSChangeClassPrice", "999")); int count = 0; propertySplit = serviseSet.getProperty("BBSPaintColors", "00FF00,00FF00").split(";"); String arr$[] = propertySplit; int len$ = arr$.length; for(int i$ = 0; i$ < len$; i$++) { String augs = arr$[i$]; String aug[] = augs.split(","); try { PWCOLOURS.put(Integer.valueOf(count), new AltBColor(Integer.decode((new StringBuilder()).append("0x").append(aug[0]).toString()).intValue(), aug[1])); } catch(NumberFormatException nfe) { if(!aug.equals("")) System.out.println((new StringBuilder()).append("services.cfg: BBSPaintColors error: ").append(aug[0]).toString()); } count++; } PWHERO_COINNAME = serviseSet.getProperty("BBSHeroCoinName", "Gold Golem"); PWCSKILLS_COINNAME = serviseSet.getProperty("BBSCustomSkillCoinName", "Gold Golem"); PWENCHSKILL_COINNAME = serviseSet.getProperty("BBSEnchantSkillCoinName", "Gold Golem"); PREMIUM_ENABLE = Boolean.parseBoolean(serviseSet.getProperty("PremiumEnable", "False")); BBS_ONLY_PEACE = Boolean.parseBoolean(serviseSet.getProperty("BbsPeace", "True")); PREMIUM_COIN = Integer.parseInt(serviseSet.getProperty("PremiumCoin", "5962")); PREMIUM_PRICE = Integer.parseInt(serviseSet.getProperty("PremiumPrice", "5962")); PREMIUM_COINNAME = serviseSet.getProperty("PremiumCoinName", "Gold Golem"); propertySplit = serviseSet.getProperty("PremiumDayPrice", "99,2220").split(";"); arr$ = propertySplit; len$ = arr$.length; for(int i$ = 0; i$ < len$; i$++) { String augs = arr$[i$]; String aug[] = augs.split(","); try { PREMIUM_DAY_PRICES.put(Integer.valueOf(Integer.parseInt(aug[0])), Integer.valueOf(Integer.parseInt(aug[1]))); continue; } catch(NumberFormatException nfe) { } if(!aug.equals("")) System.out.println((new StringBuilder()).append("services.cfg: PremiumDayPrice error: ").append(aug).toString()); } PREMIUM_EXP = Float.parseFloat(serviseSet.getProperty("PremiumExp", "1.3")); PREMIUM_SP = Float.parseFloat(serviseSet.getProperty("PremiumSp", "1.3")); PREMIUM_ITEMDROP = Float.parseFloat(serviseSet.getProperty("PremiumDropItem", "1.3")); PREMIUM_ITEMDROPMUL = Float.parseFloat(serviseSet.getProperty("PremiumDropMul", "1.3")); PREMIUM_SPOILRATE = Float.parseFloat(serviseSet.getProperty("PremiumDropSpoil", "1.3")); PREMIUM_ADENAMUL = Float.parseFloat(serviseSet.getProperty("PremiumAdenaMul", "1.3")); PREMIUM_ENCH = Integer.parseInt(serviseSet.getProperty("PremiumEnchRate", "0")); PREMIUM_CHKSKILLS = Boolean.parseBoolean(serviseSet.getProperty("PremiumCheckSkills", "True")); PREMIUM_ANOOUNCE = Boolean.parseBoolean(serviseSet.getProperty("PremiumAnnounceEnter", "False")); PREMIUM_ANNOUNCE_PHRASE = serviseSet.getProperty("PremiumAnnouncePhrase", "\u0418\u0433\u0440\u043E\u043A %player% \u0432\u043E\u0448\u0435\u043B \u0432 \u0438\u0433\u0440\u0443."); PREMIUM_START_DAYS = Integer.parseInt(serviseSet.getProperty("PremiumNewCharDays", "0")); L2JMOD_ALLOW_WEDDING = Boolean.valueOf(serviseSet.getProperty("AllowWedding", "False")).booleanValue(); L2JMOD_WEDDING_PRICE = Integer.parseInt(serviseSet.getProperty("WeddingPrice", "250000000")); L2JMOD_WEDDING_PUNISH_INFIDELITY = Boolean.parseBoolean(serviseSet.getProperty("WeddingPunishInfidelity", "True")); L2JMOD_WEDDING_TELEPORT = Boolean.parseBoolean(serviseSet.getProperty("WeddingTeleport", "True")); L2JMOD_WEDDING_TELEPORT_PRICE = Integer.parseInt(serviseSet.getProperty("WeddingTeleportPrice", "50000")); L2JMOD_WEDDING_TELEPORT_DURATION = Integer.parseInt(serviseSet.getProperty("WeddingTeleportDuration", "60")); L2JMOD_WEDDING_SAMESEX = Boolean.parseBoolean(serviseSet.getProperty("WeddingAllowSameSex", "False")); L2JMOD_WEDDING_FORMALWEAR = Boolean.parseBoolean(serviseSet.getProperty("WeddingFormalWear", "True")); L2JMOD_WEDDING_DIVORCE_COSTS = Integer.parseInt(serviseSet.getProperty("WeddingDivorceCosts", "20")); L2TOP_ENABLE = Boolean.parseBoolean(serviseSet.getProperty("L2TopEnable", "False")); VS_VREF = Boolean.parseBoolean(serviseSet.getProperty("VoteRef", "False")); L2TOP_SERV_ID = Integer.parseInt(serviseSet.getProperty("L2TopServerId", "0")); L2TOP_SERV_KEY = serviseSet.getProperty("L2TopServerKey", "0"); L2TOP_UPDATE_DELAY = (int)TimeUnit.MINUTES.toMillis(Integer.parseInt(serviseSet.getProperty("L2TopUpdateDelay", "5"))); L2TOP_OFFLINE_ITEM = Integer.parseInt(serviseSet.getProperty("L2TopOfflineId", "0")); L2TOP_OFFLINE_COUNT = Integer.parseInt(serviseSet.getProperty("L2TopOfflineCount", "0")); L2TOP_OFFLINE_LOC = serviseSet.getProperty("L2TopOfflineLoc", "INVENTORY"); propertySplit = serviseSet.getProperty("L2TopOnlineRewards", "57,13,100;57,13,100").split(";"); arr$ = propertySplit; len$ = arr$.length; for(int i$ = 0; i$ < len$; i$++) { String augs = arr$[i$]; String aug[] = augs.split(","); try { L2TOP_ONLINE_REWARDS.add(new EventReward(Integer.parseInt(aug[0]), Integer.parseInt(aug[1]), Integer.parseInt(aug[2]))); continue; } catch(NumberFormatException nfe) { } if(!aug.equals("")) System.out.println((new StringBuilder()).append("additions.cfg: CbRewards error: ").append(aug).toString()); } propertySplit = null; EXPOSTB_COIN = Integer.parseInt(serviseSet.getProperty("EpBriefCoin", "4037")); EXPOSTB_PRICE = Integer.parseInt(serviseSet.getProperty("EpBriefPrice", "1")); EXPOSTB_NAME = serviseSet.getProperty("EpBriefCoinName", "Coin Of Luck"); EXPOSTA_COIN = Integer.parseInt(serviseSet.getProperty("EpItemCoin", "4037")); EXPOSTA_PRICE = Integer.parseInt(serviseSet.getProperty("EpItemPrice", "5")); EXPOSTA_NAME = serviseSet.getProperty("EpItemCoinName", "Coin Of Luck"); PC_CAFE_ENABLED = Boolean.parseBoolean(serviseSet.getProperty("PcCafeEnable", "False")); PC_CAFE_INTERVAL = (int)TimeUnit.MINUTES.toMillis(Integer.parseInt(serviseSet.getProperty("PcCafeUpdateDelay", "60"))); PC_CAFE_BONUS = Integer.parseInt(serviseSet.getProperty("PcCafeUpdateBonus", "60")); PC_CAFE_DOUBLE_CHANCE = Integer.parseInt(serviseSet.getProperty("PcCafeUpdateDoubleChance", "60")); } catch(Exception e) { e.printStackTrace(); throw new Error("Failed to Load ./config/services.cfg File."); } try { Properties eventsSettings = new Properties(); InputStream is = new FileInputStream(new File("./config/events.cfg")); eventsSettings.load(is); is.close(); MASS_PVP = Boolean.valueOf(eventsSettings.getProperty("AllowMassPvP", "False")).booleanValue(); MPVP_RTIME = Long.parseLong(eventsSettings.getProperty("AfterServetStart", "60")); MPVP_REG = Long.parseLong(eventsSettings.getProperty("Registration", "15")); MPVP_ANC = Long.parseLong(eventsSettings.getProperty("AnnouncePeriod", "2")); MPVP_TP = Long.parseLong(eventsSettings.getProperty("Teleport", "5")); MPVP_PR = Long.parseLong(eventsSettings.getProperty("Buff", "60")); MPVP_MAX = Long.parseLong(eventsSettings.getProperty("Battle", "60")); MPVP_NEXT = Long.parseLong(eventsSettings.getProperty("Next", "24")); MPVP_MAXC = Integer.parseInt(eventsSettings.getProperty("Rounds", "5")); MPVP_NPC = Integer.parseInt(eventsSettings.getProperty("RegNpc", "5")); MPVP_CREW = Integer.parseInt(eventsSettings.getProperty("RoundReward", "4355")); MPVP_CREWC = Integer.parseInt(eventsSettings.getProperty("RoundCount", "3")); MPVP_EREW = Integer.parseInt(eventsSettings.getProperty("FinalReward", "4355")); MPVP_EREWC = Integer.parseInt(eventsSettings.getProperty("FinalCount", "30")); MPVP_LVL = Integer.parseInt(eventsSettings.getProperty("MinLelev", "76")); MPVP_MAXP = Integer.parseInt(eventsSettings.getProperty("MaxPlayers", "60")); MPVP_NOBL = Boolean.valueOf(eventsSettings.getProperty("OnlyNobless", "True")).booleanValue(); TVT_NOBL = Boolean.valueOf(eventsSettings.getProperty("TvTOnlyNobless", "True")).booleanValue(); String propertySplit[] = eventsSettings.getProperty("Npc", "116530,76141,-2730").split(","); MPVP_NPCLOC = new Location(Integer.parseInt(propertySplit[0]), Integer.parseInt(propertySplit[1]), Integer.parseInt(propertySplit[2])); propertySplit = eventsSettings.getProperty("Back", "116530,76141,-2730").split(","); MPVP_TPLOC = new Location(Integer.parseInt(propertySplit[0]), Integer.parseInt(propertySplit[1]), Integer.parseInt(propertySplit[2])); propertySplit = eventsSettings.getProperty("Cycle", "-92939,-251113,-3331").split(","); MPVP_CLOC = new Location(Integer.parseInt(propertySplit[0]), Integer.parseInt(propertySplit[1]), Integer.parseInt(propertySplit[2])); propertySplit = eventsSettings.getProperty("Final", "-92939,-251113,-3331").split(","); MPVP_WLOC = new Location(Integer.parseInt(propertySplit[0]), Integer.parseInt(propertySplit[1]), Integer.parseInt(propertySplit[2])); TVT_EVENT_ENABLED = Boolean.parseBoolean(eventsSettings.getProperty("TvTEventEnabled", "false")); TVT_EVENT_INTERVAL = Integer.parseInt(eventsSettings.getProperty("TvTEventInterval", "18000")); TVT_EVENT_PARTICIPATION_TIME = Integer.parseInt(eventsSettings.getProperty("TvTEventParticipationTime", "3600")); TVT_EVENT_RUNNING_TIME = Integer.parseInt(eventsSettings.getProperty("TvTEventRunningTime", "1800")); TVT_EVENT_PARTICIPATION_NPC_ID = Integer.parseInt(eventsSettings.getProperty("TvTEventParticipationNpcId", "0")); String arr$[]; int len$; if(TVT_EVENT_PARTICIPATION_NPC_ID == 0) { TVT_EVENT_ENABLED = false; System.out.println("TvTEventEngine[Config.load()]: invalid config property -> TvTEventParticipationNpcId"); } else { propertySplit = eventsSettings.getProperty("TvTEventParticipationNpcCoordinates", "0,0,0").split(","); if(propertySplit.length < 3) { TVT_EVENT_ENABLED = false; System.out.println("TvTEventEngine[Config.load()]: invalid config property -> TvTEventParticipationNpcCoordinates"); } else { TVT_EVENT_PARTICIPATION_NPC_COORDINATES[0] = Integer.parseInt(propertySplit[0]); TVT_EVENT_PARTICIPATION_NPC_COORDINATES[1] = Integer.parseInt(propertySplit[1]); TVT_EVENT_PARTICIPATION_NPC_COORDINATES[2] = Integer.parseInt(propertySplit[2]); TVT_EVENT_MIN_PLAYERS_IN_TEAMS = Integer.parseInt(eventsSettings.getProperty("TvTEventMinPlayersInTeams", "1")); TVT_EVENT_MAX_PLAYERS_IN_TEAMS = Integer.parseInt(eventsSettings.getProperty("TvTEventMaxPlayersInTeams", "20")); TVT_EVENT_MIN_LVL = (byte)Integer.parseInt(eventsSettings.getProperty("TvTEventMinPlayerLevel", "1")); TVT_EVENT_MAX_LVL = (byte)Integer.parseInt(eventsSettings.getProperty("TvTEventMaxPlayerLevel", "80")); TVT_EVENT_RESPAWN_TELEPORT_DELAY = Integer.parseInt(eventsSettings.getProperty("TvTEventRespawnTeleportDelay", "20")); TVT_EVENT_START_LEAVE_TELEPORT_DELAY = Integer.parseInt(eventsSettings.getProperty("TvTEventStartLeaveTeleportDelay", "20")); TVT_EVENT_TEAM_1_NAME = eventsSettings.getProperty("TvTEventTeam1Name", "Team1"); propertySplit = eventsSettings.getProperty("TvTEventTeam1Coordinates", "0,0,0").split(","); if(propertySplit.length < 3) { TVT_EVENT_ENABLED = false; System.out.println("TvTEventEngine[Config.load()]: invalid config property -> TvTEventTeam1Coordinates"); } else { TVT_EVENT_TEAM_1_COORDINATES[0] = Integer.parseInt(propertySplit[0]); TVT_EVENT_TEAM_1_COORDINATES[1] = Integer.parseInt(propertySplit[1]); TVT_EVENT_TEAM_1_COORDINATES[2] = Integer.parseInt(propertySplit[2]); TVT_EVENT_TEAM_2_NAME = eventsSettings.getProperty("TvTEventTeam2Name", "Team2"); propertySplit = eventsSettings.getProperty("TvTEventTeam2Coordinates", "0,0,0").split(","); if(propertySplit.length < 3) { TVT_EVENT_ENABLED = false; System.out.println("TvTEventEngine[Config.load()]: invalid config property -> TvTEventTeam2Coordinates"); } else { TVT_EVENT_TEAM_2_COORDINATES[0] = Integer.parseInt(propertySplit[0]); TVT_EVENT_TEAM_2_COORDINATES[1] = Integer.parseInt(propertySplit[1]); TVT_EVENT_TEAM_2_COORDINATES[2] = Integer.parseInt(propertySplit[2]); propertySplit = eventsSettings.getProperty("TvTEventReward", "57,100000").split(";"); arr$ = propertySplit; len$ = arr$.length; for(int i$ = 0; i$ < len$; i$++) { String reward = arr$[i$]; String rewardSplit[] = reward.split(","); if(rewardSplit.length != 2) { System.out.println((new StringBuilder()).append("TvTEventEngine[Config.load()]: invalid config property -> TvTEventReward \"").append(reward).append("\"").toString()); continue; } try { TVT_EVENT_REWARDS.add(new int[] { Integer.valueOf(rewardSplit[0]).intValue(), Integer.valueOf(rewardSplit[1]).intValue() }); continue; } catch(NumberFormatException nfe) { } if(!reward.equals("")) System.out.println((new StringBuilder()).append("TvTEventEngine[Config.load()]: invalid config property -> TvTEventReward \"").append(reward).append("\"").toString()); } TVT_EVENT_TARGET_TEAM_MEMBERS_ALLOWED = Boolean.parseBoolean(eventsSettings.getProperty("TvTEventTargetTeamMembersAllowed", "true")); TVT_EVENT_POTIONS_ALLOWED = Boolean.parseBoolean(eventsSettings.getProperty("TvTEventPotionsAllowed", "false")); TVT_EVENT_SUMMON_BY_ITEM_ALLOWED = Boolean.parseBoolean(eventsSettings.getProperty("TvTEventSummonByItemAllowed", "false")); propertySplit = eventsSettings.getProperty("TvTEventDoorsCloseOpenOnStartEnd", "").split(";"); arr$ = propertySplit; len$ = arr$.length; for(int i$ = 0; i$ < len$; i$++) { String door = arr$[i$]; try { TVT_EVENT_DOOR_IDS.add(Integer.valueOf(door)); continue; } catch(NumberFormatException nfe) { } if(!door.equals("")) System.out.println((new StringBuilder()).append("TvTEventEngine[Config.load()]: invalid config property -> TvTEventDoorsCloseOpenOnStartEnd \"").append(door).append("\"").toString()); } propertySplit = eventsSettings.getProperty("TvTEventAllowedPotionsList", "").split(","); arr$ = propertySplit; len$ = arr$.length; for(int i$ = 0; i$ < len$; i$++) { String potion = arr$[i$]; try { TVT_WHITE_POTINS.add(Integer.valueOf(potion)); continue; } catch(NumberFormatException nfe) { } if(!potion.equals("")) System.out.println((new StringBuilder()).append("TvTEventEngine[Config.load()]: invalid config property -> TvTEventAllowedPotionsList \"").append(potion).append("\"").toString()); } } } } } TVT_NO_PASSIVE = Boolean.parseBoolean(eventsSettings.getProperty("TvTNoPassive", "False")); ALLOW_SCH = Boolean.valueOf(eventsSettings.getProperty("AllowSchuttgart", "False")).booleanValue(); SCH_NEXT = Integer.parseInt(eventsSettings.getProperty("SchNext", "24")); SCH_RESTART = Integer.parseInt(eventsSettings.getProperty("SchRestart", "60")); SCH_TIME1 = Integer.parseInt(eventsSettings.getProperty("SchWave1", "120000")); SCH_TIME2 = Integer.parseInt(eventsSettings.getProperty("SchWave2", "30000")); SCH_TIME3 = Integer.parseInt(eventsSettings.getProperty("SchWave3", "15000")); SCH_TIME4 = Integer.parseInt(eventsSettings.getProperty("SchWave4", "15000")); SCH_TIME5 = Integer.parseInt(eventsSettings.getProperty("SchWave5", "15000")); SCH_TIME6 = Integer.parseInt(eventsSettings.getProperty("SchWave6", "15000")); SCH_TIMEBOSS = Integer.parseInt(eventsSettings.getProperty("SchWaveBoss", "400000")); SCH_MOB1 = Integer.parseInt(eventsSettings.getProperty("SchMob1", "80100")); SCH_MOB2 = Integer.parseInt(eventsSettings.getProperty("SchMob2", "80101")); SCH_MOB3 = Integer.parseInt(eventsSettings.getProperty("SchMob3", "80101")); SCH_MOB4 = Integer.parseInt(eventsSettings.getProperty("SchMob4", "80100")); SCH_MOB5 = Integer.parseInt(eventsSettings.getProperty("SchMob5", "80102")); SCH_MOB6 = Integer.parseInt(eventsSettings.getProperty("SchMob6", "80103")); SCH_BOSS = Integer.parseInt(eventsSettings.getProperty("SchBoss", "80104")); SCH_ALLOW_SHOP = Boolean.valueOf(eventsSettings.getProperty("SchAllowShop", "False")).booleanValue(); SCH_SHOP = Integer.parseInt(eventsSettings.getProperty("SchShopId", "80105")); SCH_SHOPTIME = Integer.parseInt(eventsSettings.getProperty("SchShopTimeout", "20")); OPEN_SEASON = Boolean.valueOf(eventsSettings.getProperty("AllowOpenSeason", "False")).booleanValue(); OS_NEXT = Integer.parseInt(eventsSettings.getProperty("OsNext", "600")); OS_RESTART = Integer.parseInt(eventsSettings.getProperty("OsAfterRestart", "60")); OS_BATTLE = Integer.parseInt(eventsSettings.getProperty("OsBattlePeriod", "2")); OS_FAIL_NEXT = Integer.parseInt(eventsSettings.getProperty("OsFailNext", "120")); OS_REGTIME = Integer.parseInt(eventsSettings.getProperty("OsRegTime", "300")); OS_ANNDELAY = Integer.parseInt(eventsSettings.getProperty("OsAnnounceDelay", "15")); OS_MINLVL = Integer.parseInt(eventsSettings.getProperty("OsMinLevel", "76")); OS_MINPLAYERS = Integer.parseInt(eventsSettings.getProperty("OsMinPlayers", "10")); propertySplit = eventsSettings.getProperty("OsRewards", "4037,500,100;4355,15,100").split(";"); arr$ = propertySplit; len$ = arr$.length; for(int i$ = 0; i$ < len$; i$++) { String augs = arr$[i$]; String aug[] = augs.split(","); try { OS_REWARDS.add(new EventReward(Integer.parseInt(aug[0]), Integer.parseInt(aug[1]), Integer.parseInt(aug[2]))); continue; } catch(NumberFormatException nfe) { } if(!aug.equals("")) System.out.println((new StringBuilder()).append("events.cfg: OsRewards error: ").append(aug[0]).toString()); } ELH_ENABLE = Boolean.parseBoolean(eventsSettings.getProperty("LastHeroEnable", "False")); ELH_ARTIME = Long.parseLong(eventsSettings.getProperty("LhAfterRestart", "30")); ELH_REGTIME = Long.parseLong(eventsSettings.getProperty("LhRegPeriod", "30")); ELH_ANNDELAY = Long.parseLong(eventsSettings.getProperty("LhAnounceDelay", "30")); ELH_TPDELAY = Long.parseLong(eventsSettings.getProperty("LhTeleportDelay", "30")); ELH_NEXT = Long.parseLong(eventsSettings.getProperty("LhNextStart", "30")); ELH_MINLVL = Integer.parseInt(eventsSettings.getProperty("LhPlayerMinLvl", "76")); ELH_MINP = Integer.parseInt(eventsSettings.getProperty("LhMinPlayers", "76")); ELH_MAXP = Integer.parseInt(eventsSettings.getProperty("LhMaxPlayers", "76")); ELH_NPCID = Integer.parseInt(eventsSettings.getProperty("LhRegNpcId", "55558")); propertySplit = eventsSettings.getProperty("LhRegNpcLoc", "83101,148396,-3407").split(","); ELH_NPCLOC = new Location(Integer.parseInt(propertySplit[0]), Integer.parseInt(propertySplit[1]), Integer.parseInt(propertySplit[2])); ELH_NPCTOWN = eventsSettings.getProperty("LhRegNpcTown", "\u0413\u0438\u0440\u0430\u043D\u0435"); propertySplit = eventsSettings.getProperty("LhBattleLoc", "83101,148396,-3407").split(","); ELH_TPLOC = new Location(Integer.parseInt(propertySplit[0]), Integer.parseInt(propertySplit[1]), Integer.parseInt(propertySplit[2])); ELH_TICKETID = Integer.parseInt(eventsSettings.getProperty("LhTicketId", "0")); ELH_TICKETCOUNT = Integer.parseInt(eventsSettings.getProperty("LhTicketCount", "0")); propertySplit = eventsSettings.getProperty("LhRewards", "9901,500,100;57,1,100").split(";"); arr$ = propertySplit; len$ = arr$.length; for(int i$ = 0; i$ < len$; i$++) { String augs = arr$[i$]; String aug[] = augs.split(","); try { ELH_REWARDS.add(new EventReward(Integer.parseInt(aug[0]), Integer.parseInt(aug[1]), Integer.parseInt(aug[2]))); continue; } catch(NumberFormatException nfe) { } if(!aug.equals("")) System.out.println((new StringBuilder()).append("events.cfg: LhRewards error: ").append(aug[0]).toString()); } propertySplit = eventsSettings.getProperty("FightClubItems", "1234").split(","); arr$ = propertySplit; len$ = arr$.length; for(int i$ = 0; i$ < len$; i$++) { String id = arr$[i$]; FC_ALLOWITEMS.add(Integer.valueOf(Integer.parseInt(id))); } Изменено 23 июня, 2013 пользователем Enfiz132 Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Enfiz132 0 Опубликовано 23 июня, 2013 /config/l2custom.cfg (Показать контент) { Properties customSettings = new Properties(); InputStream is = new FileInputStream(new File("./config/l2custom.cfg")); customSettings.load(is); is.close(); ALLOW_HERO_SUBSKILL = Boolean.parseBoolean(customSettings.getProperty("CustomHeroSubSkill", "False")); SUB_START_LVL = Byte.parseByte(customSettings.getProperty("SubStartLvl", "40")); RUN_SPD_BOOST = Integer.parseInt(customSettings.getProperty("RunSpeedBoost", "0")); MAX_RUN_SPEED = Integer.parseInt(customSettings.getProperty("MaxRunSpeed", "250")); MAX_PCRIT_RATE = Integer.parseInt(customSettings.getProperty("MaxPCritRate", "500")); MAX_MCRIT_RATE = Integer.parseInt(customSettings.getProperty("MaxMCritRate", "300")); MAX_PATK_SPEED = Integer.parseInt(customSettings.getProperty("MaxPAtkSpeed", "1500")); MAX_MATK_SPEED = Integer.parseInt(customSettings.getProperty("MaxMAtkSpeed", "1900")); MAX_MAX_HP = Integer.parseInt(customSettings.getProperty("MaxMaxHp", "30000")); BUFFS_MAX_AMOUNT = Byte.parseByte(customSettings.getProperty("MaxBuffAmount", "24")); MAX_SUBCLASS = Byte.parseByte(customSettings.getProperty("MaxSubClasses", "3")); AUTO_LOOT = Boolean.parseBoolean(customSettings.getProperty("AutoLoot", "False")); AUTO_LOOT_RAID = Boolean.parseBoolean(customSettings.getProperty("AutoLootRaid", "False")); ALT_EPIC_JEWERLY = Boolean.parseBoolean(customSettings.getProperty("AutoLootEpicJewerly", "False")); USE_CHAT_FILTER = Boolean.parseBoolean(customSettings.getProperty("UseChatFilter", "True")); ALT_GAME_NEW_CHAR_ALWAYS_IS_NOBLE = Boolean.parseBoolean(customSettings.getProperty("AltNewCharAlwaysIsNoble", "False")); ALT_START_LEVEL = Integer.parseInt(customSettings.getProperty("AltStartedLevel", "0")); ALT_ALLOW_AUGMENT_ON_OLYMP = Boolean.parseBoolean(customSettings.getProperty("AllowAugmnetOlympiad", "True")); ALT_ALLOW_OFFLINE_TRADE = Boolean.parseBoolean(customSettings.getProperty("AllowOfflineTrade", "False")); ALT_ALLOW_AUC = Boolean.parseBoolean(customSettings.getProperty("AllowAuction", "True")); ALT_GAME_SUBCLASS_WITHOUT_QUESTS = Boolean.parseBoolean(customSettings.getProperty("AltSubClassWithoutQuests", "False")); AUTO_LEARN_SKILLS = Boolean.parseBoolean(customSettings.getProperty("AutoLearnSkills", "false")); ALT_WEIGHT_LIMIT = Double.parseDouble(customSettings.getProperty("AltWeightLimit", "1")); STARTING_ADENA = Integer.parseInt(customSettings.getProperty("StartingAdena", "100")); WYVERN_SPEED = Integer.parseInt(customSettings.getProperty("WyvernSpeed", "100")); STRIDER_SPEED = Integer.parseInt(customSettings.getProperty("StriderSpeed", "80")); WATER_SPEED = Integer.parseInt(customSettings.getProperty("WaterSpeed", "60")); AUGMENT_BASESTAT = Integer.parseInt(customSettings.getProperty("AugmentBasestat", "1")); AUGMENT_SKILL = Integer.parseInt(customSettings.getProperty("AugmentSkill", "11")); ALLOW_RUPOR = Boolean.parseBoolean(customSettings.getProperty("AllowRupor", "False")); RUPOR_ID = Integer.parseInt(customSettings.getProperty("RuporId", "50002")); KICK_L2WALKER = Boolean.parseBoolean(customSettings.getProperty("L2WalkerProtection", "True")); ALLOW_RAID_PVP = Boolean.parseBoolean(customSettings.getProperty("AllowRaidPvpZones", "True")); CP_REUSE_TIME = Long.parseLong(customSettings.getProperty("CpReuseTime", "200")); MANA_RESTORE = Long.parseLong(customSettings.getProperty("ManaRestore", "800")); ANTIBUFF_SKILLID = Integer.parseInt(customSettings.getProperty("AntiBuffSkillId", "2276")); MAGIC_CRIT_EXP = Double.parseDouble(customSettings.getProperty("MagicCritExp", "4")); BLOW_CHANCE_FRONT = Integer.parseInt(customSettings.getProperty("BlowChanceFront", "50")); BLOW_CHANCE_BEHIND = Integer.parseInt(customSettings.getProperty("BlowChanceBehind", "70")); BLOW_CHANCE_SIDE = Integer.parseInt(customSettings.getProperty("BlowChanceSide", "60")); BLOW_DAMAGE_HEAVY = Double.parseDouble(customSettings.getProperty("BlowDamageHeavy", "1")); BLOW_DAMAGE_LIGHT = Double.parseDouble(customSettings.getProperty("BlowDamageLight", "1")); BLOW_DAMAGE_ROBE = Double.parseDouble(customSettings.getProperty("BlowDamageRobe", "1")); SONLINE_ANNOUNE = Boolean.parseBoolean(customSettings.getProperty("AnnounceOnline", "False")); SONLINE_ANNOUNCE_DELAY = Integer.parseInt(customSettings.getProperty("AnnounceDelay", "10")); SONLINE_SHOW_MAXONLINE = Boolean.parseBoolean(customSettings.getProperty("ShowMaxOnline", "False")); SONLINE_SHOW_MAXONLINE_DATE = Boolean.parseBoolean(customSettings.getProperty("ShowMaxOnlineDate", "False")); SONLINE_SHOW_OFFLINE = Boolean.parseBoolean(customSettings.getProperty("ShowOfflineTraders", "False")); SONLINE_LOGIN_ONLINE = Boolean.parseBoolean(customSettings.getProperty("AnnounceOnLogin", "False")); SONLINE_LOGIN_MAX = Boolean.parseBoolean(customSettings.getProperty("ShowLoginMaxOnline", "False")); SONLINE_LOGIN_DATE = Boolean.parseBoolean(customSettings.getProperty("ShowLoginMaxOnlineDate", "False")); SONLINE_LOGIN_OFFLINE = Boolean.parseBoolean(customSettings.getProperty("ShowLoginOfflineTraders", "False")); AUTO_ANNOUNCE_ALLOW = Boolean.parseBoolean(customSettings.getProperty("AutoAnnouncementsAllow", "False")); AUTO_ANNOUNCE_DELAY = Integer.parseInt(customSettings.getProperty("AutoAnnouncementsDelay", "600000")); String propertySplit[] = customSettings.getProperty("ForbiddenOlympItems", "1234").split(","); String arr$[] = propertySplit; int len$ = arr$.length; for(int i$ = 0; i$ < len$; i$++) { Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты