Jump to content

criss22

Members
  • Posts

    505
  • Credits

  • Joined

  • Last visited

  • Feedback

    0%

Everything posted by criss22

  1. Yauuu, hello all. I want to ask if it's possible to make voice command available for CB. When i press .info, to open in CB. And how i can edit that. Thanks
  2. I speak about this http:// I solved. Topic can be closed. Thank you !
  3. This is voice command .giran .aden .ore etc etc. But i want when i enter in Safe zone, to type .Info with specific zone drop only for Safe. (When i enter in another farm zone, i want when player type .info, to have info about farm zone, not for Safe zone.)
  4. Hellou. Today i want to make something different. it is not hard, but i need an order how to start xD. I want to make voicecommandhandler for 5 zones. All info to be individual. for ex. Safe zone have info about low drop and Farm 1 to have info with mid drop. I think i must edit zones and add voicecommand on code. Or idk. I need a hint.
  5. I delete what i did. But teleport for noble still no working...at custom npc i mean. And this npc comes with project.
  6. But lol, i try to set zone for noble only, but no work...i still can teleport without noblesse. LOL?
  7. I try to make individual zones for premium. And i try to add in table Teleport, tab Premium, like fornoble. I make setting in L2TeleportLocation.java public void setIsPremium(boolean val) { _premiumService = val; } +++ private boolean _premiumService; +++ public boolean IsPremium() { return _premiumService; } TeleportLocationTable.java public void reloadAll() { _teleports.clear(); try (Connection con = L2DatabaseFactory.getInstance().getConnection(); Statement s = con.createStatement(); ResultSet rs = s.executeQuery("SELECT id, loc_x, loc_y, loc_z, price, fornoble, premium, itemId FROM teleport")) { L2TeleportLocation teleport; while (rs.next()) { teleport = new L2TeleportLocation(); teleport.setTeleId(rs.getInt("id")); teleport.setX(rs.getInt("loc_x")); teleport.setY(rs.getInt("loc_y")); teleport.setZ(rs.getInt("loc_z")); teleport.setPrice(rs.getInt("price")); teleport.setIsForNoble(rs.getInt("fornoble") == 1); teleport.setIsPremium(rs.getInt("premium") == 1); teleport.setItemId(rs.getInt("itemId")); _teleports.put(teleport.getTeleId(), teleport); } _log.info(getClass().getSimpleName() + ": Loaded " + _teleports.size() + " Teleport Location Templates."); } catch (Exception e) { _log.error(getClass().getSimpleName() + ": Error loading Teleport Table.", e); } if (Config.CUSTOM_TELEPORT_TABLE) { int _cTeleCount = _teleports.size(); try (Connection con = L2DatabaseFactory.getInstance().getConnection(); Statement s = con.createStatement(); ResultSet rs = s.executeQuery("SELECT id, loc_x, loc_y, loc_z, price, fornoble, premium, itemId FROM custom_teleport")) { L2TeleportLocation teleport; while (rs.next()) { teleport = new L2TeleportLocation(); teleport.setTeleId(rs.getInt("id")); teleport.setX(rs.getInt("loc_x")); teleport.setY(rs.getInt("loc_y")); teleport.setZ(rs.getInt("loc_z")); teleport.setPrice(rs.getInt("price")); teleport.setIsForNoble(rs.getInt("fornoble") == 1); teleport.setIsPremium(rs.getInt("premium") == 1); teleport.setItemId(rs.getInt("itemId")); _teleports.put(teleport.getTeleId(), teleport); } _cTeleCount = _teleports.size() - _cTeleCount; if (_cTeleCount > 0) { _log.info(getClass().getSimpleName() + ": Loaded " + _cTeleCount + " Custom Teleport Location Templates."); } } catch (Exception e) { _log.warn(getClass().getSimpleName() + ": Error while creating custom teleport table " + e.getMessage(), e); } } } Table Design http:// And in Teleports table i set premium to 1, and nothing happend
  8. Hello all. I make tab for real status for player with P. Atk, M. Atk, Atk. Spd., C. Speed. And i make it in TopBBSManagerm. Now, in TopBBSManager,java i have content = content.replace("%patk%", String.valueOf((int) ((L2Character) activeChar).getPAtk(null))); all good. When i add html to first page, i see real status. but when i add in Link http:// I see like that Where i must set private String replaceVars(L2PcInstance activeChar, String content) ? Thank you. Project: L2jSunrise High Five
  9. else if (command.startsWith(_servicesBBSCommand + "_teleport")) { BoardsManager.getInstance().addBypass(activeChar, "Service Teleport", command); content = HtmCache.getInstance().getHtm(activeChar, activeChar.getHtmlPrefix(), "data/html/CommunityBoard/services/gatekeeper/premium.htm"); separateAndSend(content, activeChar); if (!CommunityServicesConfigs.COMMUNITY_SERVICES_TP_ALLOW) { activeChar.sendMessage("This function is disabled by admin."); return; } if (!activeChar.isPremium() || activeChar.isInCombat() || activeChar.isJailed() || activeChar.isAlikeDead() || activeChar.isInOlympiadMode() || activeChar.inObserverMode() || SunriseEvents.isInEvent(activeChar) || OlympiadManager.getInstance().isRegistered(activeChar)) { activeChar.sendMessage("Cannot use at the moment."); return; } try { String tp = commandSeperator(command); Integer[] c = new Integer[3]; c[0] = TopListsLoader.getInstance().getTeleportInfo(Integer.parseInt(tp))[0]; c[1] = TopListsLoader.getInstance().getTeleportInfo(Integer.parseInt(tp))[1]; c[2] = TopListsLoader.getInstance().getTeleportInfo(Integer.parseInt(tp))[2]; boolean onlyForNobless = TopListsLoader.getInstance().getTeleportInfo(Integer.parseInt(tp))[3] == 1; int itemIdToGet = TopListsLoader.getInstance().getTeleportInfo(Integer.parseInt(tp))[4]; int price = TopListsLoader.getInstance().getTeleportInfo(Integer.parseInt(tp))[5]; if (!CommunityServicesConfigs.ALLOW_TELEPORT_DURING_SIEGE) { if (SiegeManager.getInstance().getSiege(c[0], c[1], c[2]) != null) { activeChar.sendPacket(SystemMessageId.NO_PORT_THAT_IS_IN_SIGE); return; } else if (TownManager.townHasCastleInSiege(c[0], c[1]) && activeChar.isInsideZone(ZoneIdType.TOWN)) { activeChar.sendPacket(SystemMessageId.NO_PORT_THAT_IS_IN_SIGE); return; } } if (Conditions.checkPlayerItemCount(activeChar, itemIdToGet, price)) { if (onlyForNobless && !activeChar.isNoble() && !activeChar.isGM()) { activeChar.sendMessage("Only noble chars can teleport there."); return; } if (activeChar.isTransformed()) { if ((activeChar.getTransformationId() == 9) || (activeChar.getTransformationId() == 8)) { activeChar.untransform(); } } if (activeChar.isInsideZone(ZoneIdType.PEACE) || activeChar.isGM()) { activeChar.setInstanceId(0); activeChar.teleToLocation(c[0], c[1], c[2]); } else { activeChar.abortCast(); activeChar.abortAttack(); activeChar.sendPacket(ActionFailed.STATIC_PACKET); activeChar.getAI().setIntention(CtrlIntention.AI_INTENTION_IDLE); activeChar.setTarget(activeChar); activeChar.disableAllSkills(); Broadcast.toSelfAndKnownPlayersInRadius(activeChar, new MagicSkillUse(activeChar, 1050, 1, 0, 0), 810000); activeChar.sendPacket(new SetupGauge(SetupGauge.BLUE, 0)); activeChar.setSkillCast(ThreadPoolManager.getInstance().scheduleGeneral(new Teleport(activeChar, c[0], c[1], c[2]), 0)); activeChar.forceIsCasting(10 + GameTimeController.getInstance().getGameTicks() + (0 / GameTimeController.MILLIS_IN_TICK)); } activeChar.destroyItemByItemId("Community Teleport", itemIdToGet, price, activeChar, true); } } catch (Exception e) { SecurityActions.startSecurity(activeChar, SecurityType.COMMUNITY_SYSTEM); } } else if (command.startsWith(_servicesBBSCommand + "_teleport")) { BoardsManager.getInstance().addBypass(activeChar, "Service Teleport", command); content = HtmCache.getInstance().getHtm(activeChar, activeChar.getHtmlPrefix(), "data/html/CommunityBoard/services/gatekeeper/normal.htm"); separateAndSend(content, activeChar); if (!CommunityServicesConfigs.COMMUNITY_SERVICES_TP_ALLOW) { activeChar.sendMessage("This function is disabled by admin."); return; } if (activeChar.isInCombat() || activeChar.isJailed() || activeChar.isAlikeDead() || activeChar.isInOlympiadMode() || activeChar.inObserverMode() || SunriseEvents.isInEvent(activeChar) || OlympiadManager.getInstance().isRegistered(activeChar)) { activeChar.sendMessage("Cannot use at the moment."); return; } try { String tp = commandSeperator(command); Integer[] c = new Integer[3]; c[0] = TopListsLoader.getInstance().getTeleportInfo(Integer.parseInt(tp))[0]; c[1] = TopListsLoader.getInstance().getTeleportInfo(Integer.parseInt(tp))[1]; c[2] = TopListsLoader.getInstance().getTeleportInfo(Integer.parseInt(tp))[2]; boolean onlyForNobless = TopListsLoader.getInstance().getTeleportInfo(Integer.parseInt(tp))[3] == 1; int itemIdToGet = TopListsLoader.getInstance().getTeleportInfo(Integer.parseInt(tp))[4]; int price = TopListsLoader.getInstance().getTeleportInfo(Integer.parseInt(tp))[5]; if (!CommunityServicesConfigs.ALLOW_TELEPORT_DURING_SIEGE) { if (SiegeManager.getInstance().getSiege(c[0], c[1], c[2]) != null) { activeChar.sendPacket(SystemMessageId.NO_PORT_THAT_IS_IN_SIGE); return; } else if (TownManager.townHasCastleInSiege(c[0], c[1]) && activeChar.isInsideZone(ZoneIdType.TOWN)) { activeChar.sendPacket(SystemMessageId.NO_PORT_THAT_IS_IN_SIGE); return; } } if (Conditions.checkPlayerItemCount(activeChar, itemIdToGet, price)) { if (onlyForNobless && !activeChar.isNoble() && !activeChar.isGM()) { activeChar.sendMessage("Only noble chars can teleport there."); return; } if (activeChar.isTransformed()) { if ((activeChar.getTransformationId() == 9) || (activeChar.getTransformationId() == 8)) { activeChar.untransform(); } } if (activeChar.isInsideZone(ZoneIdType.PEACE) || activeChar.isGM()) { activeChar.setInstanceId(0); activeChar.teleToLocation(c[0], c[1], c[2]); } else { activeChar.abortCast(); activeChar.abortAttack(); activeChar.sendPacket(ActionFailed.STATIC_PACKET); activeChar.getAI().setIntention(CtrlIntention.AI_INTENTION_IDLE); activeChar.setTarget(activeChar); activeChar.disableAllSkills(); Broadcast.toSelfAndKnownPlayersInRadius(activeChar, new MagicSkillUse(activeChar, 1050, 1, 0, 0), 810000); activeChar.sendPacket(new SetupGauge(SetupGauge.BLUE, 0)); activeChar.setSkillCast(ThreadPoolManager.getInstance().scheduleGeneral(new Teleport(activeChar, c[0], c[1], c[2]), 0)); activeChar.forceIsCasting(10 + GameTimeController.getInstance().getGameTicks() + (0 / GameTimeController.MILLIS_IN_TICK)); } activeChar.destroyItemByItemId("Community Teleport", itemIdToGet, price, activeChar, true); } } catch (Exception e) { SecurityActions.startSecurity(activeChar, SecurityType.COMMUNITY_SYSTEM); } } With this setting, without Premium, i can use teleport at Premium tab
  10. Well, i have here code for Normal and for Premium
  11. Hi all, how i can make Second Tab to work just for premium users? I try if (!activeChar.isPremium() && !activeChar.isGM()) { activeChar.sendMessage("Only Premium chars can teleport there."); return; } but no work..nothing happend!
  12. Close Topic. No need core dev. Just bypasses xml...
  13. My results. http:// Code at HomeBBS. Tell me someone what's wrong? /* * Copyright (C) 2004-2015 L2J Server * * This file is part of L2J Server. * * L2J Server 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 3 of the License, or * (at your option) any later version. * * L2J Server 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, see <http://www.gnu.org/licenses/>. */ package l2r.gameserver.communitybbs.Managers; import java.io.File; import java.util.List; import java.util.StringTokenizer; import l2r.gameserver.GameTimeController; import l2r.gameserver.ThreadPoolManager; import l2r.gameserver.cache.HtmCache; import l2r.gameserver.communitybbs.BoardsManager; import l2r.gameserver.data.sql.CharNameTable; import l2r.gameserver.data.sql.ClanTable; import l2r.gameserver.data.xml.impl.HennaData; import l2r.gameserver.data.xml.impl.ItemData; import l2r.gameserver.data.xml.impl.MultisellData; import l2r.gameserver.enums.CtrlIntention; import l2r.gameserver.enums.ZoneIdType; import l2r.gameserver.instancemanager.SiegeManager; import l2r.gameserver.instancemanager.TownManager; import l2r.gameserver.model.Elementals; import l2r.gameserver.model.actor.instance.L2PcInstance; import l2r.gameserver.model.entity.olympiad.OlympiadManager; import l2r.gameserver.model.itemcontainer.Inventory; import l2r.gameserver.model.items.L2Henna; import l2r.gameserver.model.items.instance.L2ItemInstance; import l2r.gameserver.network.SystemMessageId; import l2r.gameserver.network.serverpackets.ActionFailed; import l2r.gameserver.network.serverpackets.ExBuyList; import l2r.gameserver.network.serverpackets.ExBuySellList; import l2r.gameserver.network.serverpackets.ExShowVariationCancelWindow; import l2r.gameserver.network.serverpackets.ExShowVariationMakeWindow; import l2r.gameserver.network.serverpackets.HennaEquipList; import l2r.gameserver.network.serverpackets.HennaRemoveList; import l2r.gameserver.network.serverpackets.InventoryUpdate; import l2r.gameserver.network.serverpackets.MagicSkillUse; import l2r.gameserver.network.serverpackets.PartySmallWindowAll; import l2r.gameserver.network.serverpackets.PartySmallWindowDeleteAll; import l2r.gameserver.network.serverpackets.SetupGauge; import l2r.gameserver.network.serverpackets.ShowBoard; import l2r.gameserver.network.serverpackets.WareHouseDepositList; import l2r.gameserver.util.Broadcast; import l2r.gameserver.util.Util; import gr.sr.configsEngine.configs.impl.CommunityServicesConfigs; import gr.sr.configsEngine.configs.impl.IndividualVoteSystemConfigs; import gr.sr.interf.SunriseEvents; import gr.sr.javaBuffer.AutoBuff; import gr.sr.javaBuffer.BufferPacketCategories; import gr.sr.javaBuffer.BufferPacketSender; import gr.sr.javaBuffer.JavaBufferBypass; import gr.sr.javaBuffer.PlayerMethods; import gr.sr.javaBuffer.buffCommunity.dynamicHtmls.GenerateHtmls; import gr.sr.javaBuffer.runnable.BuffDeleter; import gr.sr.main.Conditions; import gr.sr.main.TopListsLoader; import gr.sr.securityEngine.SecurityActions; import gr.sr.securityEngine.SecurityType; import gr.sr.voteEngine.old.VoteHandler; /** * @author L2jSunrise Team * @Website www.l2jsunrise.com */ public class TopBBSManager extends BaseBBSManager { public String _bbshome = CommunityServicesConfigs.BYPASS_COMMAND; @Override public void cbByPass(String command, L2PcInstance activeChar) { if (!CommunityServicesConfigs.COMMUNITY_SERVICES_ALLOW) { activeChar.sendMessage("This function is disabled by admin."); return; } String path = "data/html/CommunityBoard/index.html"; String filepath = ""; String content = ""; if (command.equals(_bbshome + "")) { BoardsManager.getInstance().addBypass(activeChar, "Service Command", command); filepath = path + "main.htm"; content = HtmCache.getInstance().getHtm(activeChar, activeChar.getHtmlPrefix(), filepath); separateAndSend(content, activeChar); } else if (command.startsWith(_bbshome + ";gatekeeper")) { BoardsManager.getInstance().addBypass(activeChar, "Service Gatekeeper", command); StringTokenizer st = new StringTokenizer(command, ";"); st.nextToken(); st.nextToken(); String file = st.nextToken(); path = "data/html/CommunityBoard/services/gatekeeper/"; sendHtm(activeChar, filepath, path, file, command); } else if (command.startsWith(_bbshome + ";")) { StringTokenizer st = new StringTokenizer(command, ";"); st.nextToken(); String file = st.nextToken(); sendHtm(activeChar, filepath, path, file, command); } else if (command.startsWith(_bbshome + "_sendMultisell")) { BoardsManager.getInstance().addBypass(activeChar, "Service Multisell", command); if (!CommunityServicesConfigs.COMMUNITY_SERVICES_SHOP_ALLOW) { activeChar.sendMessage("This function is disabled by admin."); return; } if (!CommunityServicesConfigs.COMMUNITY_SERVICES_SHOP_NONPEACE && !activeChar.isInsideZone(ZoneIdType.PEACE)) { activeChar.sendMessage("You cannot use this function outside peace zone."); } else { try { String multisell = commandSeperator(command); int multi = Integer.valueOf(multisell); switch (multi) { case 90525: content = HtmCache.getInstance().getHtm(activeChar, activeChar.getHtmlPrefix(), "data/html/CommunityBoard/services/symbolMaker.htm"); break; case 90526: content = HtmCache.getInstance().getHtm(activeChar, activeChar.getHtmlPrefix(), "data/html/CommunityBoard/services/warehouse.htm"); break; case 90539: case 90540: case 90541: content = HtmCache.getInstance().getHtm(activeChar, activeChar.getHtmlPrefix(), "data/html/CommunityBoard/services/exclusiveShop.htm"); break; default: content = HtmCache.getInstance().getHtm(activeChar, activeChar.getHtmlPrefix(), "data/html/CommunityBoard/services/gmshop.htm"); break; } if ((multi == 90527) || (multi == 90528) || (multi == 90529) || (multi == 90530) || (multi == 90531) || (multi == 90532) || (multi == 90533) || (multi == 90534) || (multi == 90535) || (multi == 90536) || (multi == 90537) || (multi == 90538)) { content = HtmCache.getInstance().getHtm(activeChar, activeChar.getHtmlPrefix(), "data/html/CommunityBoard/services/blacksmith.htm"); } separateAndSend(content, activeChar); if (CommunityServicesConfigs.MULTISELL_LIST.contains(multi)) { activeChar.setIsUsingAioMultisell(true); MultisellData.getInstance().separateAndSend(multi, activeChar, null, false); } else { SecurityActions.startSecurity(activeChar, SecurityType.COMMUNITY_SYSTEM); } } catch (Exception e) { SecurityActions.startSecurity(activeChar, SecurityType.COMMUNITY_SYSTEM); } } } else if (command.startsWith(_bbshome + "_CommunitySell")) { BoardsManager.getInstance().addBypass(activeChar, "Service Sell", command); content = HtmCache.getInstance().getHtm(activeChar, activeChar.getHtmlPrefix(), "data/html/CommunityBoard/services/gmshop.htm"); separateAndSend(content, activeChar); activeChar.setIsUsingAioMultisell(true); activeChar.sendPacket(new ExBuyList(activeChar)); activeChar.sendPacket(new ExBuySellList(activeChar, 0, true)); } else if (command.startsWith(_bbshome + "_teleport")) { BoardsManager.getInstance().addBypass(activeChar, "Service Teleport", command); content = HtmCache.getInstance().getHtm(activeChar, activeChar.getHtmlPrefix(), "data/html/CommunityBoard/services/gatekeeper/main_gk.htm"); separateAndSend(content, activeChar); if (!CommunityServicesConfigs.COMMUNITY_SERVICES_TP_ALLOW) { activeChar.sendMessage("This function is disabled by admin."); return; } if (activeChar.isInCombat() || activeChar.isJailed() || activeChar.isAlikeDead() || activeChar.isInOlympiadMode() || activeChar.inObserverMode() || SunriseEvents.isInEvent(activeChar) || OlympiadManager.getInstance().isRegistered(activeChar)) { activeChar.sendMessage("Cannot use at the moment."); return; } try { String tp = commandSeperator(command); Integer[] c = new Integer[3]; c[0] = TopListsLoader.getInstance().getTeleportInfo(Integer.parseInt(tp))[0]; c[1] = TopListsLoader.getInstance().getTeleportInfo(Integer.parseInt(tp))[1]; c[2] = TopListsLoader.getInstance().getTeleportInfo(Integer.parseInt(tp))[2]; boolean onlyForNobless = TopListsLoader.getInstance().getTeleportInfo(Integer.parseInt(tp))[3] == 1; int itemIdToGet = TopListsLoader.getInstance().getTeleportInfo(Integer.parseInt(tp))[4]; int price = TopListsLoader.getInstance().getTeleportInfo(Integer.parseInt(tp))[5]; if (!CommunityServicesConfigs.ALLOW_TELEPORT_DURING_SIEGE) { if (SiegeManager.getInstance().getSiege(c[0], c[1], c[2]) != null) { activeChar.sendPacket(SystemMessageId.NO_PORT_THAT_IS_IN_SIGE); return; } else if (TownManager.townHasCastleInSiege(c[0], c[1]) && activeChar.isInsideZone(ZoneIdType.TOWN)) { activeChar.sendPacket(SystemMessageId.NO_PORT_THAT_IS_IN_SIGE); return; } } if (Conditions.checkPlayerItemCount(activeChar, itemIdToGet, price)) { if (onlyForNobless && !activeChar.isNoble() && !activeChar.isGM()) { activeChar.sendMessage("Only noble chars can teleport there."); return; } if (activeChar.isTransformed()) { if ((activeChar.getTransformationId() == 9) || (activeChar.getTransformationId() == 8)) { activeChar.untransform(); } } if (activeChar.isInsideZone(ZoneIdType.PEACE) || activeChar.isGM()) { activeChar.setInstanceId(0); activeChar.teleToLocation(c[0], c[1], c[2]); } else { activeChar.abortCast(); activeChar.abortAttack(); activeChar.sendPacket(ActionFailed.STATIC_PACKET); activeChar.getAI().setIntention(CtrlIntention.AI_INTENTION_IDLE); activeChar.setTarget(activeChar); activeChar.disableAllSkills(); Broadcast.toSelfAndKnownPlayersInRadius(activeChar, new MagicSkillUse(activeChar, 1050, 1, 0, 0), 810000); activeChar.sendPacket(new SetupGauge(SetupGauge.BLUE, 0)); activeChar.setSkillCast(ThreadPoolManager.getInstance().scheduleGeneral(new Teleport(activeChar, c[0], c[1], c[2]), 0)); activeChar.forceIsCasting(10 + GameTimeController.getInstance().getGameTicks() + (0 / GameTimeController.MILLIS_IN_TICK)); } activeChar.destroyItemByItemId("Community Teleport", itemIdToGet, price, activeChar, true); } } catch (Exception e) { SecurityActions.startSecurity(activeChar, SecurityType.COMMUNITY_SYSTEM); } } else if (command.startsWith(_bbshome + "_drawSymbol")) { BoardsManager.getInstance().addBypass(activeChar, "Service Symbol Add", command); content = HtmCache.getInstance().getHtm(activeChar, activeChar.getHtmlPrefix(), "data/html/CommunityBoard/services/symbolMaker.htm"); separateAndSend(content, activeChar); List<L2Henna> tato = HennaData.getInstance().getHennaList(activeChar.getClassId()); activeChar.sendPacket(new HennaEquipList(activeChar, tato)); } else if (command.startsWith(_bbshome + "_removeSymbol")) { BoardsManager.getInstance().addBypass(activeChar, "Service Symbol Remove", command); content = HtmCache.getInstance().getHtm(activeChar, activeChar.getHtmlPrefix(), "data/html/CommunityBoard/services/symbolMaker.htm"); separateAndSend(content, activeChar); boolean hasHennas = false; for (int i = 1; i <= 3; i++) { L2Henna henna = activeChar.getHennaEx().getHenna(i); if (henna != null) { hasHennas = true; } } if (hasHennas) { activeChar.sendPacket(new HennaRemoveList(activeChar)); } else { activeChar.sendMessage("You do not have dyes."); } } else if (command.startsWith(_bbshome + "_addAugment")) { BoardsManager.getInstance().addBypass(activeChar, "Service Augment Add", command); content = HtmCache.getInstance().getHtm(activeChar, activeChar.getHtmlPrefix(), "data/html/CommunityBoard/services/blacksmith.htm"); separateAndSend(content, activeChar); activeChar.sendPacket(new ExShowVariationMakeWindow()); } else if (command.startsWith(_bbshome + "_delAugment")) { BoardsManager.getInstance().addBypass(activeChar, "Service Augment Remove", command); content = HtmCache.getInstance().getHtm(activeChar, activeChar.getHtmlPrefix(), "data/html/CommunityBoard/services/blacksmith.htm"); separateAndSend(content, activeChar); activeChar.sendPacket(new ExShowVariationCancelWindow()); } else if (command.toLowerCase().startsWith(_bbshome + "_pwithdraw")) { BoardsManager.getInstance().addBypass(activeChar, "Service Private Wh Withdraw", command); content = HtmCache.getInstance().getHtm(activeChar, activeChar.getHtmlPrefix(), "data/html/CommunityBoard/services/warehouse.htm"); separateAndSend(content, activeChar); GenerateHtmls.showPWithdrawWindow(activeChar, null, (byte) 0); } else if (command.toLowerCase().startsWith(_bbshome + "_cwithdraw")) { BoardsManager.getInstance().addBypass(activeChar, "Service Clan Wh Withdraw", command); content = HtmCache.getInstance().getHtm(activeChar, activeChar.getHtmlPrefix(), "data/html/CommunityBoard/services/warehouse.htm"); separateAndSend(content, activeChar); GenerateHtmls.showCWithdrawWindow(activeChar, null, (byte) 0); } else if (command.startsWith(_bbshome + "_ndeposit")) { BoardsManager.getInstance().addBypass(activeChar, "Service Private Wh Deposit", command); content = HtmCache.getInstance().getHtm(activeChar, activeChar.getHtmlPrefix(), "data/html/CommunityBoard/services/warehouse.htm"); separateAndSend(content, activeChar); activeChar.sendPacket(ActionFailed.STATIC_PACKET); activeChar.setActiveWarehouse(activeChar.getWarehouse()); if (activeChar.getWarehouse().getSize() == activeChar.getWareHouseLimit()) { activeChar.sendPacket(SystemMessageId.WAREHOUSE_FULL); return; } activeChar.setIsUsingAioWh(true); activeChar.tempInventoryDisable(); activeChar.sendPacket(new WareHouseDepositList(activeChar, WareHouseDepositList.PRIVATE)); } else if (command.startsWith(_bbshome + "_clandeposit")) { BoardsManager.getInstance().addBypass(activeChar, "Service Clan Wh Deposit", command); content = HtmCache.getInstance().getHtm(activeChar, activeChar.getHtmlPrefix(), "data/html/CommunityBoard/services/warehouse.htm"); separateAndSend(content, activeChar); if (activeChar.getClan() == null) { activeChar.sendPacket(SystemMessageId.YOU_ARE_NOT_A_CLAN_MEMBER); return; } activeChar.sendPacket(ActionFailed.STATIC_PACKET); activeChar.setActiveWarehouse(activeChar.getClan().getWarehouse()); if (activeChar.getClan().getLevel() == 0) { activeChar.sendPacket(SystemMessageId.ONLY_LEVEL_1_CLAN_OR_HIGHER_CAN_USE_WAREHOUSE); return; } activeChar.setIsUsingAioWh(true); activeChar.setActiveWarehouse(activeChar.getClan().getWarehouse()); activeChar.tempInventoryDisable(); activeChar.sendPacket(new WareHouseDepositList(activeChar, WareHouseDepositList.CLAN)); } else if (command.startsWith(_bbshome + "_washPK")) { BoardsManager.getInstance().addBypass(activeChar, "Service Clean Pk", command); content = HtmCache.getInstance().getHtm(activeChar, activeChar.getHtmlPrefix(), "data/html/CommunityBoard/services/exclusiveShop_decreasePK.htm"); content = activeChar.getPkKills() > 0 ? content.replaceAll("%replace%", buttons(activeChar)) : content.replaceAll("%replace%", "<table width=750 height=20><tr><td align=center>You dont have PK Points to wash.</td></tr></table>"); separateAndSend(content, activeChar); } else if (command.startsWith(_bbshome + "_deletePK")) { content = HtmCache.getInstance().getHtm(activeChar, activeChar.getHtmlPrefix(), "data/html/CommunityBoard/services/exclusiveShop_decreasePK.htm"); content = content.replaceAll("%replace%", buttons(activeChar)); separateAndSend(content, activeChar); if (!CommunityServicesConfigs.COMMUNITY_SERVICES_WASH_PK_ALLOW) { activeChar.sendMessage("This function is disabled by admin."); return; } if (!CommunityServicesConfigs.COMMUNITY_SERVICES_WASH_PK_NONPEACE && !activeChar.isInsideZone(ZoneIdType.PEACE)) { activeChar.sendMessage("You cannot use this function outside peace zone."); } else { int i = Integer.parseInt(commandSeperator(command)); if (Conditions.checkPlayerItemCount(activeChar, CommunityServicesConfigs.COMMUNITY_SERVICES_WASH_PK_ID, CommunityServicesConfigs.COMMUNITY_SERVICES_WASH_PK_PRICE * i)) { int kills = activeChar.getPkKills(); if ((kills - i) >= 0) { activeChar.setPkKills(kills - i); activeChar.broadcastUserInfo(); activeChar.sendMessage(i + " PK points removed."); activeChar.destroyItemByItemId("Community Decrease PK", CommunityServicesConfigs.COMMUNITY_SERVICES_WASH_PK_ID, CommunityServicesConfigs.COMMUNITY_SERVICES_WASH_PK_PRICE * i, activeChar, true); } } } } else if (command.startsWith(_bbshome + "_vote")) { if (command.startsWith(_bbshome + "_vote_main")) { BoardsManager.getInstance().addBypass(activeChar, "Service Vote Main", command); content = HtmCache.getInstance().getHtm(activeChar, activeChar.getHtmlPrefix(), "data/html/CommunityBoard/services/vote.htm"); content = content.replaceAll("%voteBanners%", getVoteBanners(activeChar)); separateAndSend(content, activeChar); return; } if (command.contains(" ")) { final String[] subCommand = command.split(" "); String site = subCommand[1]; BoardsManager.getInstance().addBypass(activeChar, "Service Vote " + site, command); content = HtmCache.getInstance().getHtm(activeChar, activeChar.getHtmlPrefix(), "data/html/CommunityBoard/services/vote.htm"); content = content.replaceAll("%voteBanners%", getVoteBanners(activeChar)); separateAndSend(content, activeChar); if (!VoteHandler.voteChecks(activeChar, site)) { return; } VoteHandler.preActivateVoting(activeChar, site); } } else if (command.startsWith(_bbshome + "_atrEnchant")) { BoardsManager.getInstance().addBypass(activeChar, "Service Attribute Enchant", command); if (!CommunityServicesConfigs.COMMUNITY_SERVICES_ATTRIBUTE_MANAGER_ALLOW) { activeChar.sendMessage("This function is disabled by admin."); return; } if (!CommunityServicesConfigs.COMMUNITY_SERVICES_ATTRIBUTE_MANAGER_NONPEACE && !activeChar.isInsideZone(ZoneIdType.PEACE)) { activeChar.sendMessage("You cannot use this function outside peace zone."); return; } int currency = CommunityServicesConfigs.COMMUNITY_SERVICES_ATTRIBUTE_MANAGER_ID; String currencyName = ItemData.getInstance().getTemplate(currency).getName(); int weaponPrice = CommunityServicesConfigs.COMMUNITY_SERVICES_ATTRIBUTE_MANAGER_PRICE_WEAPON; int armorPrice = CommunityServicesConfigs.COMMUNITY_SERVICES_ATTRIBUTE_MANAGER_PRICE_ARMOR; int elementWeaponValue = CommunityServicesConfigs.COMMUNITY_SERVICES_ATTRIBUTE_LVL_FOR_WEAPON; int elementArmorValue = CommunityServicesConfigs.COMMUNITY_SERVICES_ATTRIBUTE_LVL_FOR_ARMOR; content = HtmCache.getInstance().getHtm(activeChar, activeChar.getHtmlPrefix(), "data/html/CommunityBoard/services/exclusiveShop_atrEnchant.htm"); content = content.replaceAll("%currency%", ItemData.getInstance().getTemplate(currency).getName()); content = content.replaceAll("%weaponCurrency%", String.valueOf(weaponPrice) + " " + currencyName); content = content.replaceAll("%armorCurrency%", String.valueOf(armorPrice) + " " + currencyName); content = content.replaceAll("%armorAttValue%", String.valueOf(elementArmorValue)); content = content.replaceAll("%weaponAttValue%", String.valueOf(elementWeaponValue)); if (command.startsWith(_bbshome + "_atrEnchantHtml")) { separateAndSend(content, activeChar); return; } final String[] subCommand = command.split(" "); String loc = subCommand[1]; int armorType = 0; switch (loc) { case "head": armorType = Inventory.PAPERDOLL_HEAD; break; case "chest": armorType = Inventory.PAPERDOLL_CHEST; break; case "gloves": armorType = Inventory.PAPERDOLL_GLOVES; break; case "feet": armorType = Inventory.PAPERDOLL_FEET; break; case "legs": armorType = Inventory.PAPERDOLL_LEGS; break; case "weapon": armorType = Inventory.PAPERDOLL_RHAND; break; default: separateAndSend(content, activeChar); activeChar.sendMessage("You cannot enchant items that are not equipped."); return; } String type = subCommand[2]; int typeId = 0; switch (type) { case "Fire": typeId = 0; break; case "Water": typeId = 1; break; case "Wind": typeId = 2; break; case "Earth": typeId = 3; break; case "Holy": typeId = 4; break; case "Dark": typeId = 5; break; default: separateAndSend(content, activeChar); activeChar.sendMessage("You cannot enchant the item. Wrong element."); return; } if (Conditions.checkPlayerItemCount(activeChar, currency, loc.equals("weapon") ? weaponPrice : armorPrice)) { L2ItemInstance parmorInstance = activeChar.getInventory().getPaperdollItem(armorType); if ((parmorInstance != null) && (parmorInstance.getLocationSlot() == armorType)) { byte elementtoAdd = (byte) typeId; byte opositeElement = Elementals.getOppositeElement(elementtoAdd); Elementals oldElement = parmorInstance.getElemental(elementtoAdd); switch (parmorInstance.getItem().getCrystalType()) { case NONE: case A: case B: case C: case D: activeChar.sendMessage("Invalid item grade."); return; default: break; } if ((parmorInstance.isWeapon() && (parmorInstance.getElementals() != null)) || (parmorInstance.isArmor() && (oldElement != null) && (parmorInstance.getElementals() != null) && (parmorInstance.getElementals().length >= 3))) { separateAndSend(content, activeChar); activeChar.sendPacket(SystemMessageId.ANOTHER_ELEMENTAL_POWER_ALREADY_ADDED); return; } if (parmorInstance.isWeapon()) { if ((oldElement != null) && (oldElement.getValue() >= elementWeaponValue)) { separateAndSend(content, activeChar); activeChar.sendMessage("You cannot add same attribute to item!"); return; } if (parmorInstance.getElementals() != null) { for (Elementals elm : parmorInstance.getElementals()) { if (parmorInstance.isEquipped()) { parmorInstance.getElemental(elm.getElement()).removeBonus(activeChar); } parmorInstance.clearElementAttr(elm.getElement()); } } } else if (parmorInstance.isArmor()) { if (parmorInstance.getElementals() != null) { for (Elementals elm : parmorInstance.getElementals()) { if (elm.getElement() == opositeElement) { separateAndSend(content, activeChar); activeChar.sendMessage("You cannot add opposite attribute to item!"); return; } if ((elm.getElement() == elementtoAdd) && (elm.getValue() >= elementArmorValue)) { separateAndSend(content, activeChar); activeChar.sendMessage("You cannot add same attribute to item!"); return; } } } } activeChar.destroyItemByItemId("Community Attribute Manager", currency, parmorInstance.isWeapon() ? weaponPrice : armorPrice, activeChar, true); activeChar.getInventory().unEquipItemInSlot(armorType); parmorInstance.setElementAttr(elementtoAdd, parmorInstance.isWeapon() ? elementWeaponValue : elementArmorValue); activeChar.getInventory().equipItem(parmorInstance); activeChar.sendMessage("Successfully added " + subCommand[2] + " attribute to your item."); final InventoryUpdate iu = new InventoryUpdate(); iu.addModifiedItem(parmorInstance); activeChar.sendInventoryUpdate(iu); } else { activeChar.sendMessage("You cannot attribute items that are not equipped!"); } } separateAndSend(content, activeChar); } else if (command.startsWith(_bbshome + "_changename")) { BoardsManager.getInstance().addBypass(activeChar, "Service Name Change", command); content = HtmCache.getInstance().getHtm(activeChar, activeChar.getHtmlPrefix(), "data/html/CommunityBoard/services/exclusiveShop.htm"); separateAndSend(content, activeChar); if (!CommunityServicesConfigs.COMMUNITY_SERVICES_NAME_CHANGE_ALLOW) { activeChar.sendMessage("This function is disabled by admin."); return; } if (!CommunityServicesConfigs.COMMUNITY_SERVICES_NAME_CHANGE_NONPEACE && !activeChar.isInsideZone(ZoneIdType.PEACE)) { activeChar.sendMessage("You cannot use this function outside peace zone."); } else { try { String val = commandSeperator(command); if (!Util.isAlphaNumeric(val)) { activeChar.sendMessage("Invalid character name."); return; } if (Conditions.checkPlayerItemCount(activeChar, CommunityServicesConfigs.COMMUNITY_SERVICES_NAME_CHANGE_ID, CommunityServicesConfigs.COMMUNITY_SERVICES_NAME_CHANGE_PRICE)) { if (CharNameTable.getInstance().getIdByName(val) > 0) { activeChar.sendMessage("Warning, name " + val + " already exists."); return; } activeChar.destroyItemByItemId("Community Name Change", CommunityServicesConfigs.COMMUNITY_SERVICES_NAME_CHANGE_ID, CommunityServicesConfigs.COMMUNITY_SERVICES_NAME_CHANGE_PRICE, activeChar, true); activeChar.setName(val); activeChar.getAppearance().setVisibleName(val); activeChar.store(); activeChar.sendMessage("Your name has been changed to " + val); activeChar.broadcastUserInfo(); if (activeChar.isInParty()) { // Delete party window for other party members activeChar.getParty().broadcastToPartyMembers(activeChar, new PartySmallWindowDeleteAll()); for (L2PcInstance member : activeChar.getParty().getMembers()) { // And re-add if (member != activeChar) { member.sendPacket(new PartySmallWindowAll(member, activeChar.getParty())); } } } if (activeChar.getClan() != null) { activeChar.getClan().broadcastClanStatus(); } } } catch (StringIndexOutOfBoundsException e) { activeChar.sendMessage("Player name box cannot be empty."); } } } // Change clan name else if (command.startsWith(_bbshome + "_changeclanname")) { BoardsManager.getInstance().addBypass(activeChar, "Service Clan Name Change", command); content = HtmCache.getInstance().getHtm(activeChar, activeChar.getHtmlPrefix(), "data/html/CommunityBoard/services/exclusiveShop.htm"); separateAndSend(content, activeChar); if (!CommunityServicesConfigs.COMMUNITY_SERVICES_CLAN_NAME_CHANGE_ALLOW) { activeChar.sendMessage("This function is disabled by admin."); return; } if (!CommunityServicesConfigs.COMMUNITY_SERVICES_CLAN_NAME_CHANGE_NONPEACE && !activeChar.isInsideZone(ZoneIdType.PEACE)) { activeChar.sendMessage("You cannot use this function outside peace zone."); } else { try { String val = commandSeperator(command); if ((activeChar.getClan() == null) || !activeChar.isClanLeader()) { activeChar.sendPacket(SystemMessageId.YOU_ARE_NOT_AUTHORIZED_TO_DO_THAT); return; } if (!Util.isAlphaNumeric(val)) { activeChar.sendPacket(SystemMessageId.CLAN_NAME_INCORRECT); return; } if (Conditions.checkPlayerItemCount(activeChar, CommunityServicesConfigs.COMMUNITY_SERVICES_CLAN_NAME_CHANGE_ID, CommunityServicesConfigs.COMMUNITY_SERVICES_CLAN_NAME_CHANGE_PRICE)) { if (ClanTable.getInstance().getClanByName(val) != null) { activeChar.sendMessage("Warning, clan name " + val + " already exists."); return; } activeChar.destroyItemByItemId("Community Clan Name Change", CommunityServicesConfigs.COMMUNITY_SERVICES_CLAN_NAME_CHANGE_ID, CommunityServicesConfigs.COMMUNITY_SERVICES_CLAN_NAME_CHANGE_PRICE, activeChar, true); activeChar.getClan().setName(val); activeChar.getClan().updateClanNameInDB(); activeChar.sendMessage("Your clan name has been changed to " + val); activeChar.broadcastUserInfo(); if (activeChar.isInParty()) { // Delete party window for other party members activeChar.getParty().broadcastToPartyMembers(activeChar, new PartySmallWindowDeleteAll()); for (L2PcInstance member : activeChar.getParty().getMembers()) { // And re-add if (member != activeChar) { member.sendPacket(new PartySmallWindowAll(member, activeChar.getParty())); } } } if (activeChar.getClan() != null) { activeChar.getClan().broadcastClanStatus(); } } } catch (StringIndexOutOfBoundsException e) { activeChar.sendMessage("Clan name box cannot be empty."); } } } else if (command.startsWith(_bbshome + "_buffer")) { BoardsManager.getInstance().addBypass(activeChar, "Service Buffer", command); content = HtmCache.getInstance().getHtm(activeChar, activeChar.getHtmlPrefix(), "data/html/CommunityBoard/services/buffer/main.htm"); separateAndSend(content, activeChar); } else if (command.startsWith(_bbshome + "_functions_buffer")) { final String[] subCommand = command.split("_"); if (((activeChar.isInCombat() || (activeChar.getPvpFlag() != 0)) && !activeChar.isInsideZone(ZoneIdType.PEACE)) || activeChar.isJailed() || activeChar.isAlikeDead() || activeChar.isInOlympiadMode() || activeChar.inObserverMode() || SunriseEvents.isInEvent(activeChar) || OlympiadManager.getInstance().isRegistered(activeChar)) { activeChar.sendMessage("Cannot use at the moment."); content = HtmCache.getInstance().getHtm(activeChar, activeChar.getHtmlPrefix(), "data/html/CommunityBoard/services/buffer/main.htm"); separateAndSend(content, activeChar); return; } // Page navigation, html command how to starts if (subCommand[4].startsWith("page")) { if (subCommand[5].isEmpty() || (subCommand[5] == null)) { return; } content = HtmCache.getInstance().getHtm(activeChar, activeChar.getHtmlPrefix(), "data/html/CommunityBoard/services/buffer/" + subCommand[5]); separateAndSend(content, activeChar); } // Method to remove all players buffs else if (subCommand[4].startsWith("removebuff")) { activeChar.stopAllEffects(); BufferPacketSender.sendPacket(activeChar, "functions.htm", BufferPacketCategories.COMMUNITY, 1); } // Method to restore HP/MP/CP else if (subCommand[4].startsWith("healme")) { BoardsManager.getInstance().addBypass(activeChar, "Service Buffer Heal", command); if ((activeChar.getPvpFlag() != 0) && !activeChar.isInsideZone(ZoneIdType.PEACE)) { activeChar.sendMessage("Cannot use this feature here with flag."); BufferPacketSender.sendPacket(activeChar, "functions.htm", BufferPacketCategories.COMMUNITY, 1); return; } activeChar.setCurrentHpMp(activeChar.getMaxHp(), activeChar.getMaxMp()); activeChar.setCurrentCp(activeChar.getMaxCp()); BufferPacketSender.sendPacket(activeChar, "functions.htm", BufferPacketCategories.COMMUNITY, 1); } // Method to give auto buffs depends on class else if (subCommand[4].startsWith("autobuff")) { BoardsManager.getInstance().addBypass(activeChar, "Service Buffer Auto Buff", command); if ((activeChar.getPvpFlag() != 0) && !activeChar.isInsideZone(ZoneIdType.PEACE)) { activeChar.sendMessage("Cannot use this feature here with flag."); BufferPacketSender.sendPacket(activeChar, "functions.htm", BufferPacketCategories.COMMUNITY, 1); return; } AutoBuff.autoBuff(activeChar); BufferPacketSender.sendPacket(activeChar, "functions.htm", BufferPacketCategories.COMMUNITY, 1); } // Send buffs from profile to player or party or pet else if (subCommand[4].startsWith("bufffor")) { if (subCommand[4].startsWith("buffforpet")) { JavaBufferBypass.callPetBuffCommand(activeChar, subCommand[5]); } else if (subCommand[4].startsWith("buffforparty")) { JavaBufferBypass.callPartyBuffCommand(activeChar, subCommand[5]); } else if (subCommand[4].startsWith("buffforme")) { JavaBufferBypass.callSelfBuffCommand(activeChar, subCommand[5]); } BufferPacketSender.sendPacket(activeChar, "main.htm", BufferPacketCategories.COMMUNITY, 1); } // Method to give single buffs else if (subCommand[4].startsWith("buff")) { JavaBufferBypass.callBuffCommand(activeChar, subCommand[5], subCommand[4], 1); } // Scheme create new profile else if (subCommand[4].startsWith("saveProfile")) { try { JavaBufferBypass.callSaveProfile(activeChar, subCommand[5], 1); } catch (Exception e) { activeChar.sendMessage("Please specify a valid profile name."); BufferPacketSender.sendPacket(activeChar, "newSchemeProfile.htm", BufferPacketCategories.COMMUNITY, 1); return; } } else if (subCommand[4].startsWith("showAvaliable")) { JavaBufferBypass.callAvailableCommand(activeChar, subCommand[4], subCommand[5], 1); } else if (subCommand[4].startsWith("add")) { JavaBufferBypass.callAddCommand(activeChar, subCommand[4], subCommand[5], subCommand[6], 1); } // Method to delete player's selected profile else if (subCommand[4].startsWith("deleteProfile")) { PlayerMethods.delProfile(subCommand[5], activeChar); BufferPacketSender.sendPacket(activeChar, "main.htm", BufferPacketCategories.COMMUNITY, 1); } else if (subCommand[4].startsWith("showBuffsToDelete")) { GenerateHtmls.showBuffsToDelete(activeChar, subCommand[5], "removeBuffs"); } else if (subCommand[4].startsWith("removeBuffs")) { ThreadPoolManager.getInstance().executeGeneral(new BuffDeleter(activeChar, subCommand[5], Integer.parseInt(subCommand[6]), 1)); } else if (subCommand[4].startsWith("showProfiles")) { GenerateHtmls.showSchemeToEdit(activeChar, subCommand[5]); } } else { separateAndSend("<html><body><br><br><center>Command : " + command + " needs core development</center><br><br></body></html>", activeChar); } } private String buttons(L2PcInstance activeChar) { String add = ""; final int[] PKS = { 1, 2, 5, 10, 25, 50, 100, 250, 500, 1000 }; for (int pk : PKS) { if (activeChar.getPkKills() <= pk) { break; } add += getPkButton(pk); } if (activeChar.getPkKills() != 0) { add += getPkButton(activeChar.getPkKills()); } return add; } private String getPkButton(int i) { return "<table width=750 height=20><tr><td align=center><button value=\"for " + i + " PK - " + (CommunityServicesConfigs.COMMUNITY_SERVICES_WASH_PK_PRICE * i) + " " + ItemData.getInstance().getTemplate(CommunityServicesConfigs.COMMUNITY_SERVICES_WASH_PK_ID).getName() + " \" action=\"bypass " + _bbshome + "_deletePK " + i + "\" width=280 height=22 back=\"L2UI_ct1.button_df\" fore=\"L2UI_ct1.button_df\"></td></tr></table>"; } private String commandSeperator(String command) { StringTokenizer st = new StringTokenizer(command, " "); st.nextToken(); String dat = st.nextToken(); return dat; } private class Teleport implements Runnable { L2PcInstance _activeChar; private final int _x, _y, _z; Teleport(L2PcInstance activeChar, int x, int y, int z) { _activeChar = activeChar; _x = x; _y = y; _z = z; } @Override public void run() { _activeChar.setInstanceId(0); _activeChar.teleToLocation(_x, _y, _z, true); _activeChar.setIsCastingNow(false); _activeChar.enableAllSkills(); } } private void sendHtm(L2PcInstance activeChar, String filepath, String path, String file, String command) { String content = ""; filepath = path + file + ".htm"; File filecom = new File(filepath); if (!filecom.exists()) { content = "<html><body><br><br><center>The command " + command + " points to file(" + filepath + ") that NOT exists.</center></body></html>"; separateAndSend(content, activeChar); return; } content = HtmCache.getInstance().getHtm(activeChar, activeChar.getHtmlPrefix(), filepath); if (content.isEmpty()) { content = "<html><body><br><br><center>Content Empty: The command " + command + " points to an invalid or empty html file(" + filepath + ").</center></body></html>"; } separateAndSend(content, activeChar); } @Override protected void separateAndSend(String html, L2PcInstance acha) { html = html.replace("\t", ""); html = html.replace("%command%", _bbshome); if (html.length() < 8180) { acha.sendPacket(new ShowBoard(html, "101")); acha.sendPacket(new ShowBoard(null, "102")); acha.sendPacket(new ShowBoard(null, "103")); } else if (html.length() < (8180 * 2)) { acha.sendPacket(new ShowBoard(html.substring(0, 8180), "101")); acha.sendPacket(new ShowBoard(html.substring(8180, html.length()), "102")); acha.sendPacket(new ShowBoard(null, "103")); } else if (html.length() < (8180 * 3)) { acha.sendPacket(new ShowBoard(html.substring(0, 8180), "101")); acha.sendPacket(new ShowBoard(html.substring(8180, 8180 * 2), "102")); acha.sendPacket(new ShowBoard(html.substring(8180 * 2, html.length()), "103")); } } public static String getVoteBanners(L2PcInstance activeChar) { String voteBanners = ""; if (IndividualVoteSystemConfigs.VOTE_MANAGER_ALLOW_HOPZONE) { voteBanners += "<tr><td width=540 height=58 align=center valign=top>" + "<table border=0 width=540 height=38 cellspacing=4 cellpadding=3 bgcolor=232836>" + "<tr><td width=40 align=right valign=top>" + "<img src=\"icon.etc_orcish_talisman_i00\" width=32 height=32>" + "</td><td width=520 align=left valign=top>" + "<font color=\"a22020\">Vote in Hopzone</font><br1> <font color=c1b33a>Info:</font> You can vote " + VoteHandler.getWhenCanVote(activeChar, "HopZone") + "" + "</td><td width=80 height=39 align=right>" + "<table border=0 cellspacing=0 cellpadding=0 width=80>" + "<tr>" + "<td width=40 align=right valign=center>" + "Vote</td>" + "<td width=40 align=right valign=center>" + "<button value=\"\" action=\"bypass " + CommunityServicesConfigs.BYPASS_COMMAND + "_vote HopZone\" width=32 height=32 back=\"L2UI_ct1.MiniMap_DF_PlusBtn_Red_Down\" fore=\"L2UI_ct1.MiniMap_DF_PlusBtn_Red\">" + "</td>" + "</tr>" + "</table>" + "</td>" + "</tr>" + "</table>" + "</td>" + "</tr>"; } if (IndividualVoteSystemConfigs.VOTE_MANAGER_ALLOW_TOPZONE) { voteBanners += "<tr><td width=540 height=58 align=center valign=top>" + "<table border=0 width=540 height=38 cellspacing=4 cellpadding=3 bgcolor=232836>" + "<tr><td width=40 align=right valign=top>" + "<img src=\"icon.etc_barka_badge_officer_i02\" width=32 height=32>" + "</td><td width=520 align=left valign=top>" + "<font color=\"a22020\">Vote in Topzone</font><br1> <font color=c1b33a>Info:</font> You can vote " + VoteHandler.getWhenCanVote(activeChar, "TopZone") + "" + "</td><td width=80 height=39 align=right>" + "<table border=0 cellspacing=0 cellpadding=0 width=80>" + "<tr>" + "<td width=40 align=right valign=center>" + "Vote</td>" + "<td width=40 align=right valign=center>" + "<button value=\"\" action=\"bypass " + CommunityServicesConfigs.BYPASS_COMMAND + "_vote TopZone\" width=32 height=32 back=\"L2UI_ct1.MiniMap_DF_PlusBtn_Red_Down\" fore=\"L2UI_ct1.MiniMap_DF_PlusBtn_Red\">" + "</td>" + "</tr>" + "</table>" + "</td>" + "</tr>" + "</table>" + "</td>" + "</tr>"; } if (IndividualVoteSystemConfigs.VOTE_MANAGER_ALLOW_TOPCO) { voteBanners += "<tr><td width=540 height=58 align=center valign=top>" + "<table border=0 width=540 height=38 cellspacing=4 cellpadding=3 bgcolor=232836>" + "<tr><td width=40 align=right valign=top>" + "<img src=\"icon.etc_jewel_white_i00\" width=32 height=32>" + "</td><td width=520 align=left valign=top>" + "<font color=\"a22020\">Vote in Top.co</font><br1> <font color=c1b33a>Info:</font> You can vote " + VoteHandler.getWhenCanVote(activeChar, "L2TopCo") + "" + "</td><td width=80 height=39 align=right>" + "<table border=0 cellspacing=0 cellpadding=0 width=80>" + "<tr>" + "<td width=40 align=right valign=center>" + "Vote</td>" + "<td width=40 align=right valign=center>" + "<button value=\"\" action=\"bypass " + CommunityServicesConfigs.BYPASS_COMMAND + "_vote L2TopCo\" width=32 height=32 back=\"L2UI_ct1.MiniMap_DF_PlusBtn_Red_Down\" fore=\"L2UI_ct1.MiniMap_DF_PlusBtn_Red\">" + "</td>" + "</tr>" + "</table>" + "</td>" + "</tr>" + "</table>" + "</td>" + "</tr>"; } if (IndividualVoteSystemConfigs.VOTE_MANAGER_ALLOW_NETWORK) { voteBanners += "<tr><td width=540 height=58 align=center valign=top>" + "<table border=0 width=540 height=38 cellspacing=4 cellpadding=3 bgcolor=232836>" + "<tr><td width=40 align=right valign=top>" + "<img src=\"icon.etc_Symbol_of_dawn_i00\" width=32 height=32>" + "</td><td width=520 align=left valign=top>" + "<font color=\"a22020\">Vote in L2NetWork</font><br1> <font color=c1b33a>Info:</font> You can vote " + VoteHandler.getWhenCanVote(activeChar, "L2NetWork") + "" + "</td><td width=80 height=39 align=right>" + "<table border=0 cellspacing=0 cellpadding=0 width=80>" + "<tr>" + "<td width=40 align=right valign=center>" + "Vote</td>" + "<td width=40 align=right valign=center>" + "<button value=\"\" action=\"bypass " + CommunityServicesConfigs.BYPASS_COMMAND + "_vote L2NetWork\" width=32 height=32 back=\"L2UI_ct1.MiniMap_DF_PlusBtn_Red_Down\" fore=\"L2UI_ct1.MiniMap_DF_PlusBtn_Red\">" + "</td>" + "</tr>" + "</table>" + "</td>" + "</tr>" + "</table>" + "</td>" + "</tr>"; } if (IndividualVoteSystemConfigs.VOTE_MANAGER_ALLOW_GAMEBYTES) { voteBanners += "<tr><td width=540 height=58 align=center valign=top>" + "<table border=0 width=540 height=38 cellspacing=4 cellpadding=3 bgcolor=232836>" + "<tr><td width=40 align=right valign=top>" + "<img src=\"icon.etc_nutrients_of_cupid_i00\" width=32 height=32>" + "</td><td width=520 align=left valign=top>" + "<font color=\"a22020\">Vote in Gamebytes</font><br1> <font color=c1b33a>Info:</font> You can vote " + VoteHandler.getWhenCanVote(activeChar, "GameBytes") + "" + "</td><td width=80 height=39 align=right>" + "<table border=0 cellspacing=0 cellpadding=0 width=80>" + "<tr>" + "<td width=40 align=right valign=center>" + "Vote</td>" + "<td width=40 align=right valign=center>" + "<button value=\"\" action=\"bypass " + CommunityServicesConfigs.BYPASS_COMMAND + "_vote GameBytes\" width=32 height=32 back=\"L2UI_ct1.MiniMap_DF_PlusBtn_Red_Down\" fore=\"L2UI_ct1.MiniMap_DF_PlusBtn_Red\">" + "</td>" + "</tr>" + "</table>" + "</td>" + "</tr>" + "</table>" + "</td>" + "</tr>"; } if (IndividualVoteSystemConfigs.VOTE_MANAGER_ALLOW_TOPGS00) { voteBanners += "<tr><td width=540 height=58 align=center valign=top>" + "<table border=0 width=540 height=38 cellspacing=4 cellpadding=3 bgcolor=232836>" + "<tr><td width=40 align=right valign=top>" + "<img src=\"icon.etc_badge_gold_i00\" width=32 height=32>" + "</td><td width=520 align=left valign=top>" + "<font color=\"a22020\">Vote in TopGs200</font><br1> <font color=c1b33a>Info:</font> You can vote " + VoteHandler.getWhenCanVote(activeChar, "TopGs200") + "" + "</td><td width=80 height=39 align=right>" + "<table border=0 cellspacing=0 cellpadding=0 width=80>" + "<tr>" + "<td width=40 align=right valign=center>" + "Vote</td>" + "<td width=40 align=right valign=center>" + "<button value=\"\" action=\"bypass " + CommunityServicesConfigs.BYPASS_COMMAND + "_vote TopGs200\" width=32 height=32 back=\"L2UI_ct1.MiniMap_DF_PlusBtn_Red_Down\" fore=\"L2UI_ct1.MiniMap_DF_PlusBtn_Red\">" + "</td>" + "</tr>" + "</table>" + "</td>" + "</tr>" + "</table>" + "</td>" + "</tr>"; } if (IndividualVoteSystemConfigs.VOTE_MANAGER_ALLOW_TOPSERVERS200) { voteBanners += "<tr><td width=540 height=58 align=center valign=top>" + "<table border=0 width=540 height=38 cellspacing=4 cellpadding=3 bgcolor=232836>" + "<tr><td width=40 align=right valign=top>" + "<img src=\"icon.energy_condenser_i00\" width=32 height=32>" + "</td><td width=520 align=left valign=top>" + "<font color=\"a22020\">Vote in TopServer200</font><br1> <font color=c1b33a>Info:</font> You can vote " + VoteHandler.getWhenCanVote(activeChar, "TopServers200") + "" + "</td><td width=80 height=39 align=right>" + "<table border=0 cellspacing=0 cellpadding=0 width=80>" + "<tr>" + "<td width=40 align=right valign=center>" + "Vote</td>" + "<td width=40 align=right valign=center>" + "<button value=\"\" action=\"bypass " + CommunityServicesConfigs.BYPASS_COMMAND + "_vote TopServers200\" width=32 height=32 back=\"L2UI_ct1.MiniMap_DF_PlusBtn_Red_Down\" fore=\"L2UI_ct1.MiniMap_DF_PlusBtn_Red\">" + "</td>" + "</tr>" + "</table>" + "</td>" + "</tr>" + "</table>" + "</td>" + "</tr>"; } if (IndividualVoteSystemConfigs.ENABLE_TRIES) { if (Integer.parseInt(activeChar.getVar("vote_tries", "9999")) == 9999) { activeChar.setVar("vote_tries", String.valueOf(IndividualVoteSystemConfigs.TRIES_AMOUNT)); } voteBanners += "<tr><td width=540 align=center valign=top><br>Tries: <font color=AE9977>" + activeChar.getVar("vote_tries", "0") + "</font></td></tr>"; } return voteBanners; } @Override public void parsewrite(String url, String ar1, String ar2, String ar3, String ar4, String ar5, L2PcInstance activeChar) { } public static TopBBSManager getInstance() { return SingletonHolder._instance; } private static class SingletonHolder { protected static final TopBBSManager _instance = new TopBBSManager(); } } Please
  14. I want to 'move' this content to Home page. First page http://
  15. All what i want, i want to make Homepage like Services from Region page. With gm shop, teleport,wh,changename...etc etc
  16. Hello everyone. Who can tell me where i can find in java First Page of Community Board? Maybe i am stupid and i no have knowledge somethimes, but it is happend now. A simple questions no have answers. So, Where ? l2r.gameserver.communitybbs { If it's here, in what location ? } l2r.gameserver.communitybbs.BB { If it's here, in what location ? } l2r.gameserver.communitybbsManagers { If it's here, in what location ? } Thank you !
  17. I can't do this. I don't know how to do.
  18. I just want to see how i can use shift+click on community board to can import into L2jsunrise. I don't get help in my post. I know about Mobius....i wanna still use Sunrise.
  19. And i need another Client? Or edit L2.ini?
  20. Yes, it is calling L2jMobius. I hear about this project goods. But, whne i log from Client, i get this... javax.crypto.BadPaddingException: Message is larger than modulus at java.base/sun.security.rsa.RSACore.parseMsg(RSACore.java:214) at java.base/sun.security.rsa.RSACore.crtCrypt(RSACore.java:166) at java.base/sun.security.rsa.RSACore.rsa(RSACore.java:122) at java.base/com.sun.crypto.provider.RSACipher.doFinal(RSACipher.java:365) at java.base/com.sun.crypto.provider.RSACipher.engineDoFinal(RSACipher.java:404) at java.base/javax.crypto.Cipher.doFinal(Cipher.java:2420) at org.l2jmobius.loginserver.network.clientpackets.RequestAuthLogin.run(RequestAuthLogin.java:87) at org.l2jmobius.loginserver.network.clientpackets.RequestAuthLogin.run(RequestAuthLogin.java:47) at org.l2jmobius.loginserver.network.LoginClient.channelRead0(LoginClient.java:104) at org.l2jmobius.loginserver.network.LoginClient.channelRead0(LoginClient.java:47) at io.netty.channel.SimpleChannelInboundHandler.channelRead(SimpleChannelInboundHandler.java:105) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:310) at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:284) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:310) at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:284) at io.netty.handler.codec.ByteToMessageCodec.channelRead(ByteToMessageCodec.java:103) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:310) at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:284) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1434) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:965) at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:163) at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:646) at io.netty.channel.nio.NioEventLoop.processSelectedKeysPlain(NioEventLoop.java:546) at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:500) at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:460) at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:884) at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30) at java.base/java.lang.Thread.run(Thread.java:835) Can tell me someone what it is this?
  21. Why Login server doesn't start? http:// When i click there, nothing happend...sht of java. What i need?
  22. Solved, was from Separate JRE. I selected my java. Can close topic
×
×
  • Create New...

AdBlock Extension Detected!

Our website is made possible by displaying online advertisements to our members.

Please disable AdBlock browser extension first, to be able to use our community.

I've Disabled AdBlock