Emrys Posted September 29, 2009 Share Posted September 29, 2009 /* * This program is free software: you can redistribute it and/or modify it under * the terms of the GNU General Public License as published by the Free Software * Foundation, either version 3 of the License, or (at your option) any later * version. * * This program is distributed in the hope that it will be useful, but WITHOUT * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more * details. * * You should have received a copy of the GNU General Public License along with * this program. If not, see <http://www.gnu.org/licenses/>. */ package handlers.voicedcommandhandlers; import javolution.text.TextBuilder; import java.io.IOException; import java.security.MessageDigest; import java.security.NoSuchAlgorithmException; import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.SQLException; import java.util.ArrayList; import java.util.Collection; import java.util.Collections; import java.util.Comparator; import java.util.HashMap; import java.util.List; import java.util.Map; import java.util.StringTokenizer; import java.util.logging.Logger; import net.sf.l2j.Base64; import net.sf.l2j.Config; import net.sf.l2j.L2DatabaseFactory; import net.sf.l2j.gameserver.communitybbs.Manager.RegionBBSManager; import net.sf.l2j.gameserver.handler.IVoicedCommandHandler; import net.sf.l2j.gameserver.model.L2World; import net.sf.l2j.gameserver.model.actor.instance.L2PcInstance; import net.sf.l2j.gameserver.network.serverpackets.InventoryUpdate; import net.sf.l2j.gameserver.network.serverpackets.NpcHtmlMessage; import net.sf.l2j.gameserver.network.serverpackets.PartySmallWindowAll; import net.sf.l2j.gameserver.network.serverpackets.PartySmallWindowDeleteAll; /** * * @author TheEnd * */ public class UserControlPanel implements IVoicedCommandHandler { private static final String[] _voicedCommands = { "ucp", "ucep_changename", "ucp_hero", "ucp_titile", "ucp_nokarma", "ucp_revive", "ucp_NameGreen", "ucp_NameRed", "ucp_NameBlue", "ucp_NameYellow", "ucp_noble", "ucp_rep" }; public boolean useVoicedCommand(String command, L2PcInstance activeChar, String target) { if (command.equalsIgnoreCase("ucp")) { activeChar.sendMessage("Uses:ucep_changename,ucp_hero,ucp_titile,ucp_nokarma,ucp_revive,ucp_NameGreen,ucp_NameRed,ucp_NameBlue,ucp_NameYellow,ucp_noble,ucp_rep"); } else if (command.startsWith("ucp_changename")) { InventoryUpdate iu = new InventoryUpdate(); activeChar.getInventory().destroyItemByItemId("Item", x, y, activeChar, activeChar.getTarget()); try { String val = command.substring(17); L2World.getInstance().removeFromAllPlayers(activeChar); activeChar.setName(val); activeChar.store(); L2World.getInstance().addToAllPlayers(activeChar); activeChar.sendMessage("Your name has changed."); activeChar.broadcastUserInfo(); if (activeChar.isInParty()) { // Delete party window for other party members activeChar.getParty().broadcastToPartyMembers(activeChar, new PartySmallWindowDeleteAll()); for (L2PcInstance member : activeChar.getParty().getPartyMembers()) { // And re-add if (member != activeChar) member.sendPacket(new PartySmallWindowAll(member, activeChar.getParty())); } } if (activeChar.getClan() != null) { activeChar.getClan().broadcastClanStatus(); } RegionBBSManager.getInstance().changeCommunityBoard(); } catch (StringIndexOutOfBoundsException e) { //Case of empty character name activeChar.sendMessage("Wrong Usage"); } } else if (command.equalsIgnoreCase("ucp_hero")) { InventoryUpdate iu = new InventoryUpdate(); activeChar.getInventory().destroyItemByItemId("Item", x, y, activeChar, activeChar.getTarget()); activeChar.setHero(true); } else if(command.equalsIgnoreCase("ucp_title")) { String val = command.substring(17); activeChar.setTitle(val); } else if (command.equalsIgnoreCase("ucp_nokarma")) { InventoryUpdate iu = new InventoryUpdate(); activeChar.getInventory().destroyItemByItemId("Item", x, y, activeChar, activeChar.getTarget()); activeChar.setKarma(0); } else if (command.equalsIgnoreCase("ucp_revive")) { InventoryUpdate iu = new InventoryUpdate(); activeChar.getInventory().destroyItemByItemId("Item", x, y, activeChar, activeChar.getTarget()); activeChar.doRevive(); activeChar.setCurrentHp(100); } else if (command.equalsIgnoreCase("ucp_NameGreen")) { InventoryUpdate iu = new InventoryUpdate(); activeChar.getInventory().destroyItemByItemId("Item", x, y, activeChar, activeChar.getTarget()); activeChar.getAppearance().setNameColor(127, 255, 0); } else if (command.equalsIgnoreCase("ucp_NameRed")) { InventoryUpdate iu = new InventoryUpdate(); activeChar.getInventory().destroyItemByItemId("Item", x, y, activeChar, activeChar.getTarget()); activeChar.getAppearance().setNameColor(255, 69, 0); } else if (command.equalsIgnoreCase("ucp_NameBlue")) { InventoryUpdate iu = new InventoryUpdate(); activeChar.getInventory().destroyItemByItemId("Item", x, y, activeChar, activeChar.getTarget()); activeChar.getAppearance().setNameColor(92, 172, 238); } else if (command.equalsIgnoreCase("ucp_NameYellow")) { InventoryUpdate iu = new InventoryUpdate(); activeChar.getInventory().destroyItemByItemId("Item", x, y, activeChar, activeChar.getTarget()); activeChar.getAppearance().setNameColor(255, 215, 0); } else if (command.equalsIgnoreCase("ucp_noble")) { if(activeChar.isNoble()) { activeChar.sendMessage("You Are Already Noblesse!"); } else { InventoryUpdate iu = new InventoryUpdate(); activeChar.getInventory().destroyItemByItemId("Item", x, y, activeChar, activeChar.getTarget()); activeChar.setNoble(true); activeChar.sendMessage("You Are Now a Noble."); activeChar.broadcastUserInfo(); } } else if (command.equalsIgnoreCase("ucp_rep")) { InventoryUpdate iu = new InventoryUpdate(); activeChar.getInventory().destroyItemByItemId("Item", x, y, activeChar, activeChar.getTarget()); activeChar.getClan().setReputationScore(5000, true); } return true; } public String[] getVoicedCommandList() { return _voicedCommands; } } make a file UserAccountControl.java I made it for Fun so It isnt tested.... x= item ID y= amount Quote Link to comment Share on other sites More sharing options...
CнαossMαsteя Posted September 29, 2009 Share Posted September 29, 2009 hmm seems intresting but what it does ? ;D Quote Link to comment Share on other sites More sharing options...
Matim Posted September 29, 2009 Share Posted September 29, 2009 Yea, nice work TheEnd..also you could make config for X/Y..but without its also good. Good Job ;) hmm seems intresting but what it does ? ;D Read the code. Quote Link to comment Share on other sites More sharing options...
Emrys Posted September 29, 2009 Author Share Posted September 29, 2009 Yea, nice work TheEnd..also you could make config for X/Y..but without its also good. Good Job ;) Read the code. yes But I would need 2 Configs for every command :D Quote Link to comment Share on other sites More sharing options...
Horus Posted September 29, 2009 Share Posted September 29, 2009 TheEnd there is no need to force an InventoryUpdate since its already hardcoded in the methods you use ;) DestroyItem, and so son. Quote Link to comment Share on other sites More sharing options...
mgbhard Posted September 30, 2009 Share Posted September 30, 2009 Check the titile vs title Quote Link to comment Share on other sites More sharing options...
Nik Posted September 30, 2009 Share Posted September 30, 2009 yes But I would need 2 Configs for every command :D its possible to be done only with 1 config for all the commands... just think how Quote Link to comment Share on other sites More sharing options...
xDunno Posted September 30, 2009 Share Posted September 30, 2009 TheEnd can u give more information about this ? ^^ B/c i read i watch code but i dont realy understand for what is this one xD Quote Link to comment Share on other sites More sharing options...
ic3cub3 Posted October 29, 2009 Share Posted October 29, 2009 Thx very much it`s work for me to :) Quote Link to comment Share on other sites More sharing options...
~GeFriDo~ Posted October 30, 2009 Share Posted October 30, 2009 Good share dude !! thanks it works.... Quote Link to comment Share on other sites More sharing options...
Boxan Posted October 31, 2009 Share Posted October 31, 2009 Tested. Good share indeed. Quote Link to comment Share on other sites More sharing options...
Mitjuh Posted January 1, 2010 Share Posted January 1, 2010 [quote name="TheEnd" post="640989" timestamp="1254227143"] public class UserControlPanel implements IVoicedCommandHandler { private static final String[] _voicedCommands = { "ucp", "ucep_changename", "ucp_hero", "ucp_titile", <---------------------------------------------- title "ucp_nokarma", "ucp_revive", "ucp_NameGreen", "ucp_NameRed", "ucp_NameBlue", "ucp_NameYellow", "ucp_noble", "ucp_rep" }; [/quote] however well done ;) Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.