Jump to content

Orochy

Members
  • Posts

    25
  • Credits

  • Joined

  • Last visited

  • Feedback

    0%

About Orochy

Profile Information

  • Gender
    Male
  • Country
    Canada

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

Orochy's Achievements

Contributor

Contributor (5/16)

  • Conversation Starter Rare
  • Collaborator Rare
  • Reacting Well Rare
  • Dedicated Rare
  • First Post Rare

Recent Badges

4

Reputation

  1. Patch - Link https://www.mediafire.com/file/537zxllgc0hz1k4/L2Water_FILES.rar/file
  2. Hello, everyone. I’m currently restoring the old enchantment system of aCis, but I have a question: some items in my inventory are not updating when I use enchantment as an administrator. This issue occurs only with earrings and rings; after enchanting, the values don’t update automatically only when I open and close the inventory. Does anyone know how I can fix this? I use aCis 409 free version package net.sf.l2j.gameserver.handler.admincommandhandlers; import net.sf.l2j.gameserver.data.SkillTable; import net.sf.l2j.gameserver.data.xml.ArmorSetData; import net.sf.l2j.gameserver.enums.Paperdoll; import net.sf.l2j.gameserver.handler.IAdminCommandHandler; import net.sf.l2j.gameserver.model.WorldObject; import net.sf.l2j.gameserver.model.actor.Player; import net.sf.l2j.gameserver.model.item.ArmorSet; import net.sf.l2j.gameserver.model.item.instance.ItemInstance; import net.sf.l2j.gameserver.model.item.kind.Armor; import net.sf.l2j.gameserver.model.item.kind.Item; import net.sf.l2j.gameserver.model.item.kind.Weapon; import net.sf.l2j.gameserver.network.serverpackets.SkillList; import net.sf.l2j.gameserver.skills.L2Skill; public class AdminEnchant implements IAdminCommandHandler { private static final String[] ADMIN_COMMANDS = { "admin_seteh", // 6 "admin_setec", // 10 "admin_seteg", // 9 "admin_setel", // 11 "admin_seteb", // 12 "admin_setew", // 7 "admin_setes", // 8 "admin_setle", // 1 "admin_setre", // 2 "admin_setlf", // 4 "admin_setrf", // 5 "admin_seten", // 3 "admin_setun", // 0 "admin_setba", // 13 "admin_enchant" }; @Override public void useAdminCommand(String command, Player player) { if (command.equals("admin_enchant")) showMainPage(player); else { int armorType = -1; if (command.startsWith("admin_seteh")) armorType = Item.SLOT_HEAD; else if (command.startsWith("admin_setec")) armorType = Item.SLOT_CHEST; else if (command.startsWith("admin_seteg")) armorType = Item.SLOT_GLOVES; else if (command.startsWith("admin_seteb")) armorType = Item.SLOT_FEET; else if (command.startsWith("admin_setel")) armorType = Item.SLOT_LEGS; else if (command.startsWith("admin_setew")) armorType = Item.SLOT_R_HAND; else if (command.startsWith("admin_setes")) armorType = Item.SLOT_L_HAND; else if (command.startsWith("admin_setle")) armorType = Item.SLOT_L_EAR; else if (command.startsWith("admin_setre")) armorType = Item.SLOT_R_EAR; else if (command.startsWith("admin_setlf")) armorType = Item.SLOT_L_FINGER; else if (command.startsWith("admin_setrf")) armorType = Item.SLOT_R_FINGER; else if (command.startsWith("admin_seten")) armorType = Item.SLOT_NECK; else if (command.startsWith("admin_setun")) armorType = Item.SLOT_UNDERWEAR; else if (command.startsWith("admin_setba")) armorType = Item.SLOT_BACK; if (armorType != -1) { try { int ench = Integer.parseInt(command.substring(12)); // check value if (ench < 0 || ench > 65535) player.sendMessage("You must set the enchant level to be between 0-65535."); else setEnchant(player, ench, armorType); } catch (Exception e) { player.sendMessage("Please specify a new enchant value."); } } // show the enchant menu after an action showMainPage(player); } return; } /** * @param activeChar * @param enchant * @param armorType */ private static void setEnchant(Player activeChar, int enchant, int armorType) { WorldObject target = activeChar.getTarget(); if (!(target instanceof Player)) target = activeChar; final Player player = (Player) target; final ItemInstance item = player.getInventory().getItemFrom(armorType); if (item == null) { player.sendMessage(player.getName() + " doesn't wear any item in " + armorType + " slot."); return; } final Item it = item.getItem(); final int oldEnchant = item.getEnchantLevel(); // Do nothing if both values are the same. if (oldEnchant == enchant) { player.sendMessage(player.getName() + "'s " + it.getName() + " enchant is already set to " + enchant + "."); return; } item.setEnchantLevel(enchant, player); // If item is equipped, verify the skill obtention/drop (+4 duals, +6 armorset). if (item.isEquipped()) { final int currentEnchant = item.getEnchantLevel(); // Skill bestowed by +4 duals. if (it instanceof Weapon) { // Old enchant was >= 4 and new is lower : we drop the skill. if (oldEnchant >= 4 && currentEnchant < 4) { final L2Skill enchant4Skill = ((Weapon) it).getEnchant4Skill(); if (enchant4Skill != null) { player.removeSkill(enchant4Skill.getId(), false); player.sendPacket(new SkillList(player)); } } // Old enchant was < 4 and new is 4 or more : we add the skill. else if (oldEnchant < 4 && currentEnchant >= 4) { final L2Skill enchant4Skill = ((Weapon) it).getEnchant4Skill(); if (enchant4Skill != null) { player.addSkill(enchant4Skill, false); player.sendPacket(new SkillList(player)); } } } // Add skill bestowed by +6 armorset. else if (it instanceof Armor) { // Old enchant was >= 6 and new is lower : we drop the skill. if (oldEnchant >= 6 && currentEnchant < 6) { // Check if player is wearing a chest item. final int itemId = player.getInventory().getItemIdFrom(Paperdoll.CHEST); if (itemId > 0) { final ArmorSet armorSet = ArmorSetData.getInstance().getSet(itemId); if (armorSet != null) { final int skillId = armorSet.getEnchant6skillId(); if (skillId > 0) { player.removeSkill(skillId, false); player.sendPacket(new SkillList(player)); } } } } // Old enchant was < 6 and new is 6 or more : we add the skill. else if (oldEnchant < 6 && currentEnchant >= 6) { // Check if player is wearing a chest item. final int itemId = player.getInventory().getItemIdFrom(Paperdoll.CHEST); if (itemId > 0) { final ArmorSet armorSet = ArmorSetData.getInstance().getSet(itemId); if (armorSet != null && armorSet.isEnchanted6(player)) // has all parts of set enchanted to 6 or more { final int skillId = armorSet.getEnchant6skillId(); if (skillId > 0) { final L2Skill skill = SkillTable.getInstance().getInfo(skillId, 1); if (skill != null) { player.addSkill(skill, false); player.sendPacket(new SkillList(player)); } } } } } } } player.broadcastUserInfo(); player.sendMessage(player.getName() + "'s " + it.getName() + " enchant was modified from " + oldEnchant + " to " + enchant + "."); } private void showMainPage(Player activeChar) { sendFile(activeChar, "enchant.htm"); } @Override public String[] getAdminCommandList() { return ADMIN_COMMANDS; } }
  3. Привет! Всё работает отлично! Версия Navicat, которую вы используете, поддерживает файлы .nb3?
  4. Simple things, too bad I don't have time because of work! I shared the source... the rest is up to you.
  5. Hello Every one L2JProject + SOURCE Panel Skin | .menu | Auto Farm and others. Events: TvT/CTF//DM/LM/TKB/TOUR/PF/Daily Reward/Pc bang Reward Java 11 https://www.mediafire.com/file/t3c54q8an3pgyhm/L2jaCis_Project-382.rar/file ENJOY IT
  6. backup localized in Pack Mega format .psc 221211204547.psc
  7. The best project IL? (my opinion) 1 L2jLucera (https://lucera2.com) 2 L2jaCis (https://acis.i-live.eu/index.php)
  8. I spent some time researching the subject and the answer was in front of me... lol thanks for help guys! resolved.. private void doSkill(L2Skill skill, boolean isSelfSkill) { if (skill == null) { return; } if (isNecessarySkill(skill)) { if (_actor.isAttackingNow() || _actor.isCastingNow()) { _actor.getAI().setNextAction(new NextAction(AiEventType.READY_TO_ACT, IntentionType.CAST, () -> _actor.useMagic(skill, true, true))); } else { _actor.useMagic(skill, isSelfSkill, false); } } }
  9. same with geodata off
  10. I'm having a problem with the maximum limit at which the character attacks the monster, above 900 radius the character receives this message for being too far away! there are no barriers between the monster and the character. any solutions? the code is made in Cis 382. sorry for my bad english. https://www.mediafire.com/file/tmazk81pndn2u3v/farm.txt/file
  11. Hi maxcheaters, I recently added some code to my l2jacis revision and everything works fine with the .siege commands but when I click on the html options to open the registry I don't succeed! registerHandler(new Castles()); package net.sf.l2j.gameserver.handler.voicedcommandhandlers; import net.sf.l2j.Config; import net.sf.l2j.gameserver.handler.IVoicedCommandHandler; import net.sf.l2j.gameserver.data.manager.CastleManager; import net.sf.l2j.gameserver.model.actor.Player; import net.sf.l2j.gameserver.model.entity.Castle; import net.sf.l2j.gameserver.network.SystemMessageId; import net.sf.l2j.gameserver.network.serverpackets.NpcHtmlMessage; import net.sf.l2j.gameserver.network.serverpackets.SiegeInfo; public class Castles implements IVoicedCommandHandler { private static final String[] VOICED_COMMANDS = { "siege", "siege_gludio", "siege_dion", "siege_giran", "siege_oren", "siege_aden", "siege_innadril", "siege_goddard", "siege_rune", "siege_schuttgart" }; @Override public boolean useVoicedCommand(String command, Player player, String target) { if (command.equals("siege") && Config.ENABLE_MENU) showHtm(player); else if (command.startsWith("siege_")) { if (player.getClan() != null && !player.isClanLeader()) { player.sendPacket(SystemMessageId.YOU_ARE_NOT_AUTHORIZED_TO_DO_THAT); return false; } int castleId = 0; if (command.startsWith("siege_gludio") && Config.SIEGE_GLUDIO) castleId = 1; else if (command.startsWith("siege_dion") && Config.SIEGE_DION) castleId = 2; else if (command.startsWith("siege_giran") && Config.SIEGE_GIRAN) castleId = 3; else if (command.startsWith("siege_oren") && Config.SIEGE_OREN) castleId = 4; else if (command.startsWith("siege_aden") && Config.SIEGE_ADEN) castleId = 5; else if (command.startsWith("siege_innadril") && Config.SIEGE_INNADRIL) castleId = 6; else if (command.startsWith("siege_goddard") && Config.SIEGE_GODDARD) castleId = 7; else if (command.startsWith("siege_rune") && Config.SIEGE_RUNE) castleId = 8; else if (command.startsWith("siege_schuttgart") && Config.SIEGE_SCHUT) castleId = 9; else player.sendMessage("This Castle has been disabled"); Castle castle = CastleManager.getInstance().getCastleById(castleId); if ((castle != null) && (castleId != 0)) player.sendPacket(new SiegeInfo(castle)); } return true; } private static void showHtm(Player player) { NpcHtmlMessage htm = new NpcHtmlMessage(0); htm.setFile(player.isLang() + "mods/menu/CastleManager.htm"); player.sendPacket(htm); } @Override public String[] getVoicedCommandList() { return VOICED_COMMANDS; } } <button value="Giran" action="bypass voiced_siege_giran" width=75 height=22 back="L2UI_ch3.Btn1_normalOn" fore="L2UI_ch3.Btn1_normal">
  12. L2D geodata works. https://www.mediafire.com/file/oos96b3j3yq853s/l2d.7z There was a voice command [voice_%multisell ID] for any npc to open the multisell. The voice command has been removed. Update 01.09.2023 *VIP Coins items have been fixed, it was giving as invalid when using the item being on the 31st. *Fixed HEROES Coins items being invalid when used on the 31st. *Fixed the problem with hero skill animations. *ThreadPool has been configured to avoid vps crashes due to the number of events. #Diff from all of the above. ---> JDK 17 https://github.com/Sarada-L2/L2jMega
  13. Change this: - player.broadcastPacket(new MagicSkillUse(this, player, buffid, bufflevel, 5, 0)); to: + player.broadcastPacket(new MagicSkillUse(this, player, buffid, bufflevel, 1000, 0));
  14. Any solutions? I have the same problem
×
×
  • Create New...