Jump to content

transformer

Membro
  • Content Count

    25
  • Joined

  • Last visited

Community Reputation

0 Normal

7 Followers

About transformer

  • Rank
    ForeverAlone

Recent Profile Visitors

1,435 profile views
  1. Salve mano, estou tentando instalar no meu, até funciona mas o arquivo interface.xdat da erro critico ao abrir... sendo assim não consigo aumentar meu slot de barras de skill. Sabe como resolvo?
  2. Alguém tem a source da revisão 158?
  3. Como Faço pra deixar a Armor SET só ir até o lv4 nos elementos e as Weapons até o lv 9 Preciso de um Java code? Ou posso resolver isso através das .xmls dos SETS <item id="15572" type="Armor" name="Elegia Helmet"> <set name="icon" val="icon.armor_helmet_i00" /> <set name="default_action" val="equip" /> <set name="bodypart" val="head" /> <set name="immediate_effect" val="1" /> <set name="crystal_count" val="1205" /> <set name="crystal_type" val="s84" /> <set name="material" val="bone" /> <set name="weight" val="530" /> <set name="price" val="25107000" /> <set name="element_enabled" val="1" /> <set name="enchant_enabled" val="1" /> <cond msgId="1518"> <player races="Human,Elf,DarkElf,Orc,Dwarf" /> </cond> <for> <add order="0x10" stat="pDef" val="110" /> <enchant order="0x0C" stat="pDef" val="0" /> </for> </item> Vi em um foram que preciso alterar esse arquivo java no eclipse... Alguém tem ideia? /* * 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 com.l2jserver.gameserver.network.clientpackets; import com.l2jserver.Config; import com.l2jserver.gameserver.model.Elementals; import com.l2jserver.gameserver.model.L2ItemInstance; import com.l2jserver.gameserver.model.actor.instance.L2PcInstance; import com.l2jserver.gameserver.network.SystemMessageId; import com.l2jserver.gameserver.network.serverpackets.ExAttributeEnchantResult; import com.l2jserver.gameserver.network.serverpackets.ExBrExtraUserInfo; import com.l2jserver.gameserver.network.serverpackets.InventoryUpdate; import com.l2jserver.gameserver.network.serverpackets.SystemMessage; import com.l2jserver.gameserver.network.serverpackets.UserInfo; import com.l2jserver.gameserver.templates.item.L2ArmorType; import com.l2jserver.gameserver.templates.item.L2Item; import com.l2jserver.gameserver.templates.item.L2WeaponType; import com.l2jserver.gameserver.util.Util; import com.l2jserver.util.Rnd; public class RequestExEnchantItemAttribute extends L2GameClientPacket { private static final String D0_35_REQUEST_EX_ENCHANT_ITEM_ATTRIBUTE = "[C] D0:35 RequestExEnchantItemAttribute"; private int _objectId; @Override protected void readImpl() { _objectId = readD(); } @Override protected void runImpl() { L2PcInstance player = getClient().getActiveChar(); if (player == null) { return; } if (_objectId == 0xFFFFFFFF) { // Player canceled enchant player.setActiveEnchantAttrItem(null); player.sendPacket(SystemMessage.getSystemMessage(SystemMessageId.ELEMENTAL_ENHANCE_CANCELED)); return; } if (!player.isOnline()) { player.setActiveEnchantAttrItem(null); return; } if (player.getPrivateStoreType() != 0) { player.sendPacket(SystemMessage.getSystemMessage(SystemMessageId.CANNOT_ADD_ELEMENTAL_POWER_WHILE_OPERATING_PRIVATE_STORE_OR_WORKSHOP)); player.setActiveEnchantAttrItem(null); return; } // Restrict enchant during a trade (bug if enchant fails) if (player.getActiveRequester() != null) { // Cancel trade player.cancelActiveTrade(); player.setActiveEnchantAttrItem(null); player.sendMessage("Enchanting items is not allowed during a trade."); return; } L2ItemInstance item = player.getInventory().getItemByObjectId(_objectId); L2ItemInstance stone = player.getActiveEnchantAttrItem(); if ((item == null) || (stone == null)) { player.setActiveEnchantAttrItem(null); return; } if ((item.getLocation() != L2ItemInstance.ItemLocation.INVENTORY) && (item.getLocation() != L2ItemInstance.ItemLocation.PAPERDOLL)) { player.setActiveEnchantAttrItem(null); return; } // can't enchant rods, shadow items, adventurers', Common Items, PvP items, hero items, cloaks, bracelets, underwear (e.g. shirt), belt, necklace, earring, ring if ((item.getItem().getItemType() == L2WeaponType.FISHINGROD) || item.isShadowItem() || item.isCommonItem() || item.isPvp() || item.isHeroItem() || item.isTimeLimitedItem() || ((item.getItemId() >= 7816) && (item.getItemId() <= 7831)) || (item.getItem().getItemType() == L2WeaponType.NONE) || (item.getItem().getItemGradeSPlus() != L2Item.CRYSTAL_S) || (item.getItem().getBodyPart() == L2Item.SLOT_BACK) || (item.getItem().getBodyPart() == L2Item.SLOT_R_BRACELET) || (item.getItem().getBodyPart() == L2Item.SLOT_UNDERWEAR) || (item.getItem().getBodyPart() == L2Item.SLOT_BELT) || (item.getItem().getBodyPart() == L2Item.SLOT_NECK) || ((item.getItem().getBodyPart() & L2Item.SLOT_R_EAR) != 0) || ((item.getItem().getBodyPart() & L2Item.SLOT_R_FINGER) != 0) || (item.getItem().getElementals() != null) || (item.getItemType() == L2ArmorType.SHIELD) || (item.getItemType() == L2ArmorType.SIGIL)) { player.sendPacket(SystemMessage.getSystemMessage(SystemMessageId.ELEMENTAL_ENHANCE_REQUIREMENT_NOT_SUFFICIENT)); player.setActiveEnchantAttrItem(null); return; } switch (item.getLocation()) { case INVENTORY: case PAPERDOLL: { if (item.getOwnerId() != player.getObjectId()) { player.setActiveEnchantAttrItem(null); return; } break; } default: { player.setActiveEnchantAttrItem(null); Util.handleIllegalPlayerAction(player, "Player " + player.getName() + " tried to use enchant Exploit!", Config.DEFAULT_PUNISH); return; } } int stoneId = stone.getItemId(); byte elementToAdd = Elementals.getItemElement(stoneId); // Armors have the opposite element if (item.isArmor()) { elementToAdd = Elementals.getOppositeElement(elementToAdd); } byte opositeElement = Elementals.getOppositeElement(elementToAdd); Elementals oldElement = item.getElemental(elementToAdd); int elementValue = oldElement == null ? 0 : oldElement.getValue(); int limit = getLimit(item, stoneId); int powerToAdd = getPowerToAdd(stoneId, elementValue, item); if ((item.isWeapon() && (oldElement != null) && (oldElement.getElement() != elementToAdd) && (oldElement.getElement() != -2)) || (item.isArmor() && (item.getElemental(elementToAdd) == null) && (item.getElementals() != null) && (item.getElementals().length >= 3))) { player.sendPacket(SystemMessage.getSystemMessage(SystemMessageId.ANOTHER_ELEMENTAL_POWER_ALREADY_ADDED)); player.setActiveEnchantAttrItem(null); return; } if (item.isArmor() && (item.getElementals() != null)) { // cant add opposite element for (Elementals elm : item.getElementals()) { if (elm.getElement() == opositeElement) { player.setActiveEnchantAttrItem(null); Util.handleIllegalPlayerAction(player, "Player " + player.getName() + " tried to add oposite attribute to item!", Config.DEFAULT_PUNISH); return; } } } int newPower = elementValue + powerToAdd; if (newPower > limit) { newPower = limit; powerToAdd = limit - elementValue; } if (powerToAdd <= 0) { player.sendPacket(SystemMessage.getSystemMessage(SystemMessageId.ELEMENTAL_ENHANCE_CANCELED)); player.setActiveEnchantAttrItem(null); return; } if (!player.destroyItem("AttrEnchant", stone, 1, player, true)) { player.sendPacket(SystemMessage.getSystemMessage(SystemMessageId.NOT_ENOUGH_ITEMS)); Util.handleIllegalPlayerAction(player, "Player " + player.getName() + " tried to attribute enchant with a stone he doesn't have", Config.DEFAULT_PUNISH); player.setActiveEnchantAttrItem(null); return; } boolean success = false; switch (Elementals.getItemElemental(stoneId)._type) { case Stone: case Roughore: success = Rnd.get(100) < Config.ENCHANT_CHANCE_ELEMENT_STONE; break; case Crystal: success = Rnd.get(100) < Config.ENCHANT_CHANCE_ELEMENT_CRYSTAL; break; case Jewel: success = Rnd.get(100) < Config.ENCHANT_CHANCE_ELEMENT_JEWEL; break; case Energy: success = Rnd.get(100) < Config.ENCHANT_CHANCE_ELEMENT_ENERGY; break; } if (success) { byte realElement = item.isArmor() ? opositeElement : elementToAdd; SystemMessage sm; if (item.getEnchantLevel() == 0) { if (item.isArmor()) { sm = SystemMessage.getSystemMessage(SystemMessageId.THE_S2_ATTRIBUTE_WAS_SUCCESSFULLY_BESTOWED_ON_S1_RES_TO_S3_INCREASED); } else { sm = SystemMessage.getSystemMessage(SystemMessageId.ELEMENTAL_POWER_S2_SUCCESSFULLY_ADDED_TO_S1); } sm.addItemName(item); sm.addElemntal(realElement); if (item.isArmor()) { sm.addElemntal(Elementals.getOppositeElement(realElement)); } } else { if (item.isArmor()) { sm = SystemMessage.getSystemMessage(SystemMessageId.THE_S3_ATTRIBUTE_BESTOWED_ON_S1_S2_RESISTANCE_TO_S4_INCREASED); } else { sm = SystemMessage.getSystemMessage(SystemMessageId.ELEMENTAL_POWER_S3_SUCCESSFULLY_ADDED_TO_S1_S2); } sm.addNumber(item.getEnchantLevel()); sm.addItemName(item); sm.addElemntal(realElement); if (item.isArmor()) { sm.addElemntal(Elementals.getOppositeElement(realElement)); } } player.sendPacket(sm); item.setElementAttr(elementToAdd, newPower); if (item.isEquipped()) { item.updateElementAttrBonus(player); } // send packets InventoryUpdate iu = new InventoryUpdate(); iu.addModifiedItem(item); player.sendPacket(iu); } else { player.sendPacket(SystemMessage.getSystemMessage(SystemMessageId.FAILED_ADDING_ELEMENTAL_POWER)); } player.sendPacket(new ExAttributeEnchantResult(powerToAdd)); player.sendPacket(new UserInfo(player)); player.sendPacket(new ExBrExtraUserInfo(player)); player.setActiveEnchantAttrItem(null); } public int getLimit(L2ItemInstance item, int sotneId) { Elementals.ElementalItems elementItem = Elementals.getItemElemental(sotneId); if (elementItem == null) { return 0; } if (item.isWeapon()) { return Elementals.WEAPON_VALUES[elementItem._type._maxLevel]; } return Elementals.ARMOR_VALUES[elementItem._type._maxLevel]; } public int getPowerToAdd(int stoneId, int oldValue, L2ItemInstance item) { if (Elementals.getItemElement(stoneId) != Elementals.NONE) { if (item.isWeapon()) { if (oldValue == 0) { return Elementals.FIRST_WEAPON_BONUS; } return Elementals.NEXT_WEAPON_BONUS; } else if (item.isArmor()) { return Elementals.ARMOR_BONUS; } } return 0; } @Override public String getType() { return D0_35_REQUEST_EX_ENCHANT_ITEM_ATTRIBUTE; } }
  4. Nome completo: Christofer Richard Faria de Amorim Idade: 21 Conhecimento: Já fui adm de 2 servers, sei tudo de adm in game, sei mexer com sites html, e tbm html no jogo, sei mexer muito bem. Tenho uma experiência de 11 anos de jogo. Já joguei tudo quanto é server. Algumas palavras: Eu vi o anúncio do seu server e realmente acreditei que ia dar certo. Muita $$ investido, site maravilhoso, toda divulgação estava bem profissional... mas não adianta ter tudo isso e não ter experiência para pensar no que pode dar errado. Antes de entrar no seu server eu já sábia que ia rolar algo errado, vc deixou para liberar o download da system em cima da abertura do server, isso é péssimo, sobrecarrega o site, da uma merda só!!! tentei até te avisar, mas já era tarde dps que entrei vi mt coisa errada, de cara já descobri o bug do crystal... tudo que rolou com vc no seu server, já tinha acontecido comigo quando eu era adm novato. Não estou querendo te criticar nem nada, queria te ajudar... se puder retornar, não estou interessado em lucro de nada, só quero ajudar e fazer parte da hístória do seu server. Flw! meu skype: NÃO_LEIO_AS_REGRAS
×
×
  • Create New...