ola pra funciona você tem que da relogin para mudar o s*** do personagem.
Tenha um bom dia..
adicionar um novo item e registrá-lo no handler.
<set name="handler" val="ChangeSexItem" />
### Eclipse Workspace Patch 1.0 #P aCis_gameserver Index: java/net/sf/l2j/gameserver/handler/ItemHandler.java =================================================================== --- java/net/sf/l2j/gameserver/handler/ItemHandler.java (revision 4) +++ java/net/sf/l2j/gameserver/handler/ItemHandler.java (working copy) @@ -24,6 +24,7 @@ import net.sf.l2j.gameserver.handler.itemhandlers.BlessedSpiritShot; import net.sf.l2j.gameserver.handler.itemhandlers.Book; import net.sf.l2j.gameserver.handler.itemhandlers.Calculator; +import net.sf.l2j.gameserver.handler.itemhandlers.ChangeSexItem; import net.sf.l2j.gameserver.handler.itemhandlers.ClanFullSkill; import net.sf.l2j.gameserver.handler.itemhandlers.ClanLevel; import net.sf.l2j.gameserver.handler.itemhandlers.ClanReputation; @@ -96,6 +97,7 @@ registerItemHandler(new NobleItem()); registerItemHandler(new VipItem()); registerItemHandler(new AioItem()); + registerItemHandler(new ChangeSexItem()); } public void registerItemHandler(IItemHandler handler) Index: java/net/sf/l2j/Config.java =================================================================== --- java/net/sf/l2j/Config.java (revision 13) +++ java/net/sf/l2j/Config.java (working copy) @@ -388,6 +388,9 @@ public static int VIP_REWARD_ITEM; public static int VIP_ITEM_AMOUNT; public static int VIP_SET_DAYS; + public static boolean ENABLE_CHANGESEX_COIN; + public static int CHANGESEX_COIN_ID; + public static int CHANGESEX_COIN_AMOUNT; /** Balance Settings */ public static long CLASS_BALANCER_UPDATE_DELAY; @@ -1389,6 +1392,9 @@ VIP_REWARD_ITEM = reborn12.getProperty("VipRewardItem", 0); VIP_ITEM_AMOUNT = reborn12.getProperty("VipItemAmount", 0); VIP_SET_DAYS = reborn12.getProperty("VipSetDays", 1); + ENABLE_CHANGESEX_COIN = reborn12.getProperty("EnableChangeSexItem", false); + CHANGESEX_COIN_ID = reborn12.getProperty("ChangeSexCoinId", 1); + CHANGESEX_COIN_AMOUNT = reborn12.getProperty("ChangeSexCoinAmount", 1); CLASS_BALANCER_UPDATE_DELAY = reborn12.getProperty("ClassBalancerUpdateDelay", 300) * 1000; CLASS_BALANCER_AFFECTS_SECOND_PROFFESION = reborn12.getProperty("ClassBalancerAffectSecondProffesion", false); CLASS_BALANCER_AFFECTS_MONSTERS = reborn12.getProperty("ClassBalancerAffectMonsters", false); Index: java/net/sf/l2j/gameserver/handler/itemhandlers/ChangeSexItem.java =================================================================== --- java/net/sf/l2j/gameserver/handler/itemhandlers/ChangeSexItem.java (revision 0) +++ java/net/sf/l2j/gameserver/handler/itemhandlers/ChangeSexItem.java (working copy) @@ -0,0 +1,62 @@ +/* + * 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 net.sf.l2j.gameserver.handler.itemhandlers; + +import net.sf.l2j.commons.concurrent.ThreadPool; + +import net.sf.l2j.Config; +import net.sf.l2j.gameserver.handler.IItemHandler; +import net.sf.l2j.gameserver.model.actor.L2Playable; +import net.sf.l2j.gameserver.model.actor.instance.L2PcInstance; +import net.sf.l2j.gameserver.model.base.Sex; +import net.sf.l2j.gameserver.model.item.instance.ItemInstance; +import net.sf.l2j.gameserver.model.olympiad.OlympiadManager; +import net.sf.l2j.gameserver.network.SystemMessageId; + +/** + * @author Reborn12 + */ +public class ChangeSexItem implements IItemHandler +{ + @Override + public void useItem(L2Playable playable, ItemInstance item, boolean forceUse) + { + if (Config.ENABLE_CHANGESEX_COIN) + { + if (!(playable instanceof L2PcInstance)) + { + L2PcInstance player = (L2PcInstance) playable; + if (player.isInCombat()) + { + player.sendMessage("you Can't Use Item Because You Are in Combat"); + return; + } + else if (player.isInOlympiadMode() || OlympiadManager.getInstance().isRegisteredInComp(player)) + { + player.sendPacket(SystemMessageId.YOU_ARE_NOT_AUTHORIZED_TO_DO_THAT); + return; + } + if (!player.destroyItemByItemId("ChangeSex", Config.CHANGESEX_COIN_ID, Config.CHANGESEX_COIN_AMOUNT, null, true)) + return; + + player.getAppearance().setSex(player.getAppearance().getSex() == Sex.MALE ? Sex.FEMALE : Sex.MALE); + player.sendMessage("Your gender has been changed,You will Be Disconected in 3 Seconds!"); + player.broadcastUserInfo(); + player.decayMe(); + player.spawnMe(); + ThreadPool.schedule(() -> player.logout(false), 3000); + } + } + } + } \ No newline at end of file Index: config/reborn12.properties =================================================================== --- config/reborn12.properties (revision 13) +++ config/reborn12.properties (working copy) @@ -665,6 +665,19 @@ #Set Days For Vip chars From Npc VipSetDays = 15 +# -------------------- +# ChangeSex Settings +# -------------------- + +#Enable/Disable ChangeSex Item +EnableChangeSexItem = True + +#ChangeSex Item ID +ChangeSexCoinId = 57 + +#ChangeSex Item Amount +ChangeSexCoinAmount = 1 + \ No newline at end of file