-
Posts
515 -
Credits
0 -
Joined
-
Last visited
-
Feedback
0%
Everything posted by criss22
-
Help how i can import just Core.jar into eclipse?
criss22 posted a question in Request Server Development Help [L2J]
Hi all, how i can import just Core.jar into eclipse? -
Help Handlers error in GS.
criss22 replied to criss22's question in Request Server Development Help [L2J]
Solved. Close topic please! Thank you ! -
Hello and Happy New Year for all. I have one error in GameServer with i reload handlers. I think it is from shift+click script and i can't solve it. Anyone can help me? Thank you! [19:10:01] ERROR: Failed loading handler start! java.lang.InstantiationException at sun.reflect.InstantiationExceptionConstructorAccessorImpl.newInstance (Unknown Source) at java.lang.reflect.Constructor.newInstance(Unknown Source) at l2r.gameserver.handler.IHandler.registerByClass(IHandler.java:13) at handlers.MasterHandler.loadHandlers(MasterHandler.java:681) at handlers.MasterHandler.<init>(MasterHandler.java:695) at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Sou rce) at java.lang.reflect.Constructor.newInstance(Unknown Source) at java.lang.Class.newInstance(Unknown Source) at gr.sr.handler.ABLoader.loadScripts(Unknown Source) at handlers.loader.GlobalLoader.<init>(GlobalLoader.java:58) at handlers.loader.GlobalLoader.main(GlobalLoader.java:69) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at com.l2jserver.script.java.JavaScriptEngine.evalClass(JavaScriptEngine .java:464) at com.l2jserver.script.java.JavaScriptEngine.eval(JavaScriptEngine.java :116) at com.l2jserver.script.java.JavaScriptEngine.eval(JavaScriptEngine.java :122) at l2r.gameserver.scripting.L2ScriptEngineManager.executeScript(L2Script EngineManager.java:355) at l2r.gameserver.scripting.L2ScriptEngineManager.executeScript(L2Script EngineManager.java:315) at handlers.admincommandhandlers.AdminReload.useAdminCommand(AdminReload .java:253) at l2r.gameserver.network.clientpackets.DlgAnswer.runImpl(DlgAnswer.java :110) at l2r.gameserver.network.clientpackets.L2GameClientPacket.run(L2GameCli entPacket.java:71) at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) at java.lang.Thread.run(Unknown Source)
-
Help [-Skill-]*Learn all levels
criss22 replied to criss22's question in Request Server Development Help [L2J]
The skill which i learn it is lvl 1. For exemple for armor light. Max lv is 53 i think. Well, i don't want to player make 53 clicks to reach max level. Simple, 1 click=and skill level 53 -
Help [-Skill-]*Learn all levels
criss22 replied to criss22's question in Request Server Development Help [L2J]
Is not from Skill_Trees -
Help [-Skill-]*Learn all levels
criss22 replied to criss22's question in Request Server Development Help [L2J]
Someone can help me here? -
Hi everyone. I make server multiskill and i want to know how i can learn with 1 click all levels of skill?
-
Hi all, someone know from where i can get code for L2Tower for this type of captcha?
-
- 1
-
-
Thanks. Solved
-
Hi all, how i can set Rates from community board for premium? I need help syntax in Java. I have this: content = content.replace("%ratexp%", String.valueOf(Math.round(Config.RATE_XP))); content = content.replace("%ratesp%", String.valueOf(Math.round(Config.RATE_SP))); content = content.replace("%ratedrop%", String.valueOf(Math.round(Config.RATE_DROP_ITEMS))); And looks like http:// I want when player get Premium, to increase +1 for all rates. Thanks
-
Help [-Community Board-]*Voice Command
criss22 replied to criss22's question in Request Server Development Help [L2J]
Solved -
Help [-Community Board-]*Voice Command
criss22 posted a question in Request Server Development Help [L2J]
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 -
I speak about this http:// I solved. Topic can be closed. Thank you !
-
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.)
-
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.
-
Help [-Table-]*Premium Teleport
criss22 replied to criss22's question in Request Server Development Help [L2J]
I delete what i did. But teleport for noble still no working...at custom npc i mean. And this npc comes with project. -
Help [-Table-]*Premium Teleport
criss22 replied to criss22's question in Request Server Development Help [L2J]
But lol, i try to set zone for noble only, but no work...i still can teleport without noblesse. LOL? -
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
-
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
-
Help [-Teleport-]*Premium Tab
criss22 replied to criss22's question in Request Server Development Help [L2J]
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 -
Help [-Teleport-]*Premium Tab
criss22 replied to criss22's question in Request Server Development Help [L2J]
Well, i have here code for Normal and for Premium -
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!
-
Help [- First Page-]*Community Board
criss22 replied to criss22's question in Request Server Development Help [L2J]
Close Topic. No need core dev. Just bypasses xml... -
Help [- First Page-]*Community Board
criss22 replied to criss22's question in Request Server Development Help [L2J]
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 -
Help [- First Page-]*Community Board
criss22 replied to criss22's question in Request Server Development Help [L2J]
I want to 'move' this content to Home page. First page http://