-
Posts
2,656 -
Joined
-
Last visited
-
Days Won
26 -
Feedback
100%
Content Type
Articles
Profiles
Forums
Store
Everything posted by An4rchy
-
Yeah, i remember that. I don't think that's someone can doubt i made this one though, it's clearly not shared before working like this. EDIT: You can see the changes too, not just the others. Forgot to mention that.
-
Hello guys. You have already seen this feature, but i decided to share it since i coded this one from scratch. There many features like: Customize your look by choosing 1 by 1 the items you want. Get the target's look. Get the target's single part. Ability to add items available through configs. You can see the changes too. # DressMe system. AllowDressMeSystem = False # DressMe values. # Note: It works like name,id;name,id # WARNING: No spaces on names, use _ instead of space. DressMeChests = Draconic,6379;Imperial,6373;Arcana,6383 DressMeLegs = Imperial,6374 DressMeBoots = Draconic,6381;Imperial,6376;Arcana,6385 DressMeGloves = Draconic,6380;Imperial,6375;Arcana,6384 DressMeWeapons = Draconic_Bow,7577;Shining_Bow,6594;Arcana_Mace,6608 public static boolean ALLOW_DRESS_ME_SYSTEM; public static Map<String, Integer> DRESS_ME_CHESTS = new HashMap<>(); public static Map<String, Integer> DRESS_ME_LEGS = new HashMap<>(); public static Map<String, Integer> DRESS_ME_BOOTS = new HashMap<>(); public static Map<String, Integer> DRESS_ME_GLOVES = new HashMap<>(); public static Map<String, Integer> DRESS_ME_WEAPONS = new HashMap<>(); ALLOW_DRESS_ME_SYSTEM = c.getProperty("AllowDressMeSystem", false); String temp = c.getProperty("DressMeChests", ""); String[] temp2 = temp.split(";"); for (String s : temp2) { String[] t = s.split(","); DRESS_ME_CHESTS.put(t[0], Integer.parseInt(t[1])); } temp = c.getProperty("DressMeLegs", ""); temp2 = temp.split(";"); for (String s : temp2) { String[] t = s.split(","); DRESS_ME_LEGS.put(t[0], Integer.parseInt(t[1])); } temp = c.getProperty("DressMeBoots", ""); temp2 = temp.split(";"); for (String s : temp2) { String[] t = s.split(","); DRESS_ME_BOOTS.put(t[0], Integer.parseInt(t[1])); } temp = c.getProperty("DressMeGloves", ""); temp2 = temp.split(";"); for (String s : temp2) { String[] t = s.split(","); DRESS_ME_GLOVES.put(t[0], Integer.parseInt(t[1])); } temp = c.getProperty("DressMeWeapons", ""); temp2 = temp.split(";"); for (String s : temp2) { String[] t = s.split(","); DRESS_ME_WEAPONS.put(t[0], Integer.parseInt(t[1])); } /* * 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.voicedcommandhandlers; import net.sf.l2j.gameserver.datatables.ItemTable; import net.sf.l2j.gameserver.handler.IVoicedCommandHandler; import net.sf.l2j.gameserver.model.actor.instance.L2PcInstance; import net.sf.l2j.gameserver.network.serverpackets.NpcHtmlMessage; /** * @author Anarchy * */ public class DressMe implements IVoicedCommandHandler { private static final String[] VOICED_COMMANDS = { "dressme" }; @Override public boolean useVoicedCommand(String command, L2PcInstance activeChar) { if (command.equals("dressme")) { sendMainWindow(activeChar); } return true; } public static void sendMainWindow(L2PcInstance activeChar) { NpcHtmlMessage htm = new NpcHtmlMessage(0); htm.setFile("./data/html/custom/dressme/main.htm"); htm.replace("%enabled%", activeChar.isDressMeEnabled() ? "enabled" : "disabled"); if (activeChar.getDressMeData() == null) { htm.replace("%chestinfo%", "You have no custom chest."); htm.replace("%legsinfo%", "You have no custom legs."); htm.replace("%bootsinfo%", "You have no custom boots."); htm.replace("%glovesinfo%", "You have no custom gloves."); htm.replace("%weapinfo%", "You have no custom weapon."); } else { htm.replace("%chestinfo%", activeChar.getDressMeData().getChestId() == 0 ? "You have no custom chest." : ItemTable.getInstance().getTemplate(activeChar.getDressMeData().getChestId()).getName()); htm.replace("%legsinfo%", activeChar.getDressMeData().getLegsId() == 0 ? "You have no custom legs." : ItemTable.getInstance().getTemplate(activeChar.getDressMeData().getLegsId()).getName()); htm.replace("%bootsinfo%", activeChar.getDressMeData().getBootsId() == 0 ? "You have no custom boots." : ItemTable.getInstance().getTemplate(activeChar.getDressMeData().getBootsId()).getName()); htm.replace("%glovesinfo%", activeChar.getDressMeData().getGlovesId() == 0 ? "You have no custom gloves." : ItemTable.getInstance().getTemplate(activeChar.getDressMeData().getGlovesId()).getName()); htm.replace("%weapinfo%", activeChar.getDressMeData().getWeapId() == 0 ? "You have no custom weapon." : ItemTable.getInstance().getTemplate(activeChar.getDressMeData().getWeapId()).getName()); } activeChar.sendPacket(htm); } @Override public String[] getVoicedCommandList() { return VOICED_COMMANDS; } } /* * 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.bypasshandlers; import java.util.StringTokenizer; import net.sf.l2j.Config; import net.sf.l2j.gameserver.custom.DressMeData; import net.sf.l2j.gameserver.datatables.ItemTable; import net.sf.l2j.gameserver.handler.IBypassHandler; import net.sf.l2j.gameserver.handler.voicedcommandhandlers.DressMe; import net.sf.l2j.gameserver.model.actor.instance.L2PcInstance; import net.sf.l2j.gameserver.model.itemcontainer.Inventory; import net.sf.l2j.gameserver.network.serverpackets.NpcHtmlMessage; /** * @author Anarchy * */ public class DressMeBypasses implements IBypassHandler { private static final String[] BYPASSES = { "bp_changedressmestatus", "bp_editWindow", "bp_setpart", "bp_gettarget", "bp_main" }; @Override public boolean handleBypass(String bypass, L2PcInstance activeChar) { if (bypass.equals("bp_changedressmestatus")) { if (activeChar.isDressMeEnabled()) { activeChar.setDressMeEnabled(false); activeChar.broadcastUserInfo(); } else { activeChar.setDressMeEnabled(true); activeChar.broadcastUserInfo(); } DressMe.sendMainWindow(activeChar); } if (bypass.startsWith("bp_editWindow")) { String bp = bypass.substring(14); StringTokenizer st = new StringTokenizer(bp); sendEditWindow(activeChar, st.nextToken()); } if (bypass.startsWith("bp_setpart")) { String bp = bypass.substring(11); StringTokenizer st = new StringTokenizer(bp); String part = st.nextToken(); String type = st.nextToken(); setPart(activeChar, part, type); } if (bypass.startsWith("bp_gettarget")) { String bp = bypass.substring(13); StringTokenizer st = new StringTokenizer(bp); String part = st.nextToken(); stealTarget(activeChar, part); } if (bypass.equals("bp_main")) { DressMe.sendMainWindow(activeChar); } return true; } public void stealTarget(L2PcInstance p, String part) { if (p.getTarget() == null || !(p.getTarget() instanceof L2PcInstance)) { p.sendMessage("Invalid target."); return; } L2PcInstance t = (L2PcInstance)p.getTarget(); if (p.getDressMeData() == null) { DressMeData dmd = new DressMeData(); p.setDressMeData(dmd); } boolean returnMain = false; switch (part) { case "chest": { if (t.getInventory().getPaperdollItem(Inventory.PAPERDOLL_CHEST) == null) { p.getDressMeData().setChestId(0); } else { p.getDressMeData().setChestId(t.getInventory().getPaperdollItem(Inventory.PAPERDOLL_CHEST).getItemId()); } break; } case "legs": { if (t.getInventory().getPaperdollItem(Inventory.PAPERDOLL_LEGS) == null) { p.getDressMeData().setLegsId(0); } else { p.getDressMeData().setLegsId(t.getInventory().getPaperdollItem(Inventory.PAPERDOLL_LEGS).getItemId()); } break; } case "gloves": { if (t.getInventory().getPaperdollItem(Inventory.PAPERDOLL_GLOVES) == null) { p.getDressMeData().setGlovesId(0); } else { p.getDressMeData().setGlovesId(t.getInventory().getPaperdollItem(Inventory.PAPERDOLL_GLOVES).getItemId()); } break; } case "boots": { if (t.getInventory().getPaperdollItem(Inventory.PAPERDOLL_FEET) == null) { p.getDressMeData().setBootsId(0); } else { p.getDressMeData().setBootsId(t.getInventory().getPaperdollItem(Inventory.PAPERDOLL_FEET).getItemId()); } break; } case "weap": { if (t.getInventory().getPaperdollItem(Inventory.PAPERDOLL_RHAND) == null) { p.getDressMeData().setWeapId(0); } else { p.getDressMeData().setWeapId(t.getInventory().getPaperdollItem(Inventory.PAPERDOLL_RHAND).getItemId()); } break; } case "all": { if (t.getInventory().getPaperdollItem(Inventory.PAPERDOLL_CHEST) == null) { p.getDressMeData().setChestId(0); } else { p.getDressMeData().setChestId(t.getInventory().getPaperdollItem(Inventory.PAPERDOLL_CHEST).getItemId()); } if (t.getInventory().getPaperdollItem(Inventory.PAPERDOLL_LEGS) == null) { p.getDressMeData().setLegsId(0); } else { p.getDressMeData().setLegsId(t.getInventory().getPaperdollItem(Inventory.PAPERDOLL_LEGS).getItemId()); } if (t.getInventory().getPaperdollItem(Inventory.PAPERDOLL_GLOVES) == null) { p.getDressMeData().setGlovesId(0); } else { p.getDressMeData().setGlovesId(t.getInventory().getPaperdollItem(Inventory.PAPERDOLL_GLOVES).getItemId()); } if (t.getInventory().getPaperdollItem(Inventory.PAPERDOLL_FEET) == null) { p.getDressMeData().setBootsId(0); } else { p.getDressMeData().setBootsId(t.getInventory().getPaperdollItem(Inventory.PAPERDOLL_FEET).getItemId()); } if (t.getInventory().getPaperdollItem(Inventory.PAPERDOLL_RHAND) == null) { p.getDressMeData().setWeapId(0); } else { p.getDressMeData().setWeapId(t.getInventory().getPaperdollItem(Inventory.PAPERDOLL_RHAND).getItemId()); } returnMain = true; break; } } p.broadcastUserInfo(); if (!returnMain) sendEditWindow(p, part); else DressMe.sendMainWindow(p); } public void setPart(L2PcInstance p, String part, String type) { if (p.getDressMeData() == null) { DressMeData dmd = new DressMeData(); p.setDressMeData(dmd); } switch (part) { case "chest": { if (Config.DRESS_ME_CHESTS.keySet().contains(type)) { p.getDressMeData().setChestId(Config.DRESS_ME_CHESTS.get(type)); } break; } case "legs": { if (Config.DRESS_ME_LEGS.keySet().contains(type)) { p.getDressMeData().setLegsId(Config.DRESS_ME_LEGS.get(type)); } break; } case "gloves": { if (Config.DRESS_ME_GLOVES.keySet().contains(type)) { p.getDressMeData().setGlovesId(Config.DRESS_ME_GLOVES.get(type)); } break; } case "boots": { if (Config.DRESS_ME_BOOTS.keySet().contains(type)) { p.getDressMeData().setBootsId(Config.DRESS_ME_BOOTS.get(type)); } break; } case "weap": { if (Config.DRESS_ME_WEAPONS.keySet().contains(type)) { p.getDressMeData().setWeapId(Config.DRESS_ME_WEAPONS.get(type)); } break; } } p.broadcastUserInfo(); sendEditWindow(p, part); } public void sendEditWindow(L2PcInstance p, String part) { NpcHtmlMessage htm = new NpcHtmlMessage(0); htm.setFile("./data/html/custom/dressme/edit.htm"); htm.replace("%part%", part); switch (part) { case "chest": { if (p.getDressMeData() == null) { htm.replace("%partinfo%", "You have no custom chest."); } else { htm.replace("%partinfo%", p.getDressMeData().getChestId() == 0 ? "You have no custom chest." : ItemTable.getInstance().getTemplate(p.getDressMeData().getChestId()).getName()); } String temp = ""; for (String s : Config.DRESS_ME_CHESTS.keySet()) { temp += s+";"; } htm.replace("%dropboxdata%", temp); break; } case "legs": { if (p.getDressMeData() == null) { htm.replace("%partinfo%", "You have no custom legs."); } else { htm.replace("%partinfo%", p.getDressMeData().getLegsId() == 0 ? "You have no custom legs." : ItemTable.getInstance().getTemplate(p.getDressMeData().getLegsId()).getName()); } String temp = ""; for (String s : Config.DRESS_ME_LEGS.keySet()) { temp += s+";"; } htm.replace("%dropboxdata%", temp); break; } case "gloves": { if (p.getDressMeData() == null) { htm.replace("%partinfo%", "You have no custom gloves."); } else { htm.replace("%partinfo%", p.getDressMeData().getGlovesId() == 0 ? "You have no custom gloves." : ItemTable.getInstance().getTemplate(p.getDressMeData().getGlovesId()).getName()); } String temp = ""; for (String s : Config.DRESS_ME_GLOVES.keySet()) { temp += s+";"; } htm.replace("%dropboxdata%", temp); break; } case "boots": { if (p.getDressMeData() == null) { htm.replace("%partinfo%", "You have no custom boots."); } else { htm.replace("%partinfo%", p.getDressMeData().getBootsId() == 0 ? "You have no custom boots." : ItemTable.getInstance().getTemplate(p.getDressMeData().getBootsId()).getName()); } String temp = ""; for (String s : Config.DRESS_ME_BOOTS.keySet()) { temp += s+";"; } htm.replace("%dropboxdata%", temp); break; } case "weap": { if (p.getDressMeData() == null) { htm.replace("%partinfo%", "You have no custom weapon."); } else { htm.replace("%partinfo%", p.getDressMeData().getWeapId() == 0 ? "You have no custom weapon." : ItemTable.getInstance().getTemplate(p.getDressMeData().getWeapId()).getName()); } String temp = ""; for (String s : Config.DRESS_ME_WEAPONS.keySet()) { temp += s+";"; } htm.replace("%dropboxdata%", temp); break; } } p.sendPacket(htm); } @Override public String[] getBypassHandlersList() { return BYPASSES; } } /* * 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.custom; /** * @author Anarchy * */ public class DressMeData { private int chestId, legsId, glovesId, feetId, weapId; public DressMeData() { chestId = 0; legsId = 0; glovesId = 0; feetId = 0; weapId = 0; } public int getChestId() { return chestId; } public int getLegsId() { return legsId; } public int getGlovesId() { return glovesId; } public int getBootsId() { return feetId; } public int getWeapId() { return weapId; } public void setChestId(int val) { chestId = val; } public void setLegsId(int val) { legsId = val; } public void setGlovesId(int val) { glovesId = val; } public void setBootsId(int val) { feetId = val; } public void setWeapId(int val) { weapId = val; } } CharInfo.java Replace these: writeD(_inv.getPaperdollItemId(Inventory.PAPERDOLL_HAIRALL)); writeD(_inv.getPaperdollItemId(Inventory.PAPERDOLL_HEAD)); writeD(_inv.getPaperdollItemId(Inventory.PAPERDOLL_RHAND)); writeD(_inv.getPaperdollItemId(Inventory.PAPERDOLL_LHAND)); writeD(_inv.getPaperdollItemId(Inventory.PAPERDOLL_GLOVES)); writeD(_inv.getPaperdollItemId(Inventory.PAPERDOLL_CHEST)); writeD(_inv.getPaperdollItemId(Inventory.PAPERDOLL_LEGS)); writeD(_inv.getPaperdollItemId(Inventory.PAPERDOLL_FEET)); writeD(_inv.getPaperdollItemId(Inventory.PAPERDOLL_BACK)); writeD(_inv.getPaperdollItemId(Inventory.PAPERDOLL_RHAND)); writeD(_inv.getPaperdollItemId(Inventory.PAPERDOLL_HAIR)); writeD(_inv.getPaperdollItemId(Inventory.PAPERDOLL_FACE)); with these: if (!_activeChar.isDressMeEnabled()) { writeD(_inv.getPaperdollItemId(Inventory.PAPERDOLL_HAIRALL)); writeD(_inv.getPaperdollItemId(Inventory.PAPERDOLL_HEAD)); writeD(_inv.getPaperdollItemId(Inventory.PAPERDOLL_RHAND)); writeD(_inv.getPaperdollItemId(Inventory.PAPERDOLL_LHAND)); writeD(_inv.getPaperdollItemId(Inventory.PAPERDOLL_GLOVES)); writeD(_inv.getPaperdollItemId(Inventory.PAPERDOLL_CHEST)); writeD(_inv.getPaperdollItemId(Inventory.PAPERDOLL_LEGS)); writeD(_inv.getPaperdollItemId(Inventory.PAPERDOLL_FEET)); writeD(_inv.getPaperdollItemId(Inventory.PAPERDOLL_BACK)); writeD(_inv.getPaperdollItemId(Inventory.PAPERDOLL_RHAND)); writeD(_inv.getPaperdollItemId(Inventory.PAPERDOLL_HAIR)); writeD(_inv.getPaperdollItemId(Inventory.PAPERDOLL_FACE)); } else { writeD(_inv.getPaperdollItemId(Inventory.PAPERDOLL_HAIRALL)); writeD(_inv.getPaperdollItemId(Inventory.PAPERDOLL_HEAD)); writeD(_activeChar.getDressMeData() == null ? _activeChar.getInventory().getPaperdollItemId(Inventory.PAPERDOLL_RHAND) : (_activeChar.getDressMeData().getWeapId() == 0 ? _activeChar.getInventory().getPaperdollItemId(Inventory.PAPERDOLL_RHAND) : _activeChar.getDressMeData().getWeapId())); writeD(_inv.getPaperdollItemId(Inventory.PAPERDOLL_LHAND)); writeD(_activeChar.getDressMeData() == null ? _activeChar.getInventory().getPaperdollItemId(Inventory.PAPERDOLL_GLOVES) : (_activeChar.getDressMeData().getGlovesId() == 0 ? _activeChar.getInventory().getPaperdollItemId(Inventory.PAPERDOLL_GLOVES) : _activeChar.getDressMeData().getGlovesId())); writeD(_activeChar.getDressMeData() == null ? _activeChar.getInventory().getPaperdollItemId(Inventory.PAPERDOLL_CHEST) : (_activeChar.getDressMeData().getChestId() == 0 ? _activeChar.getInventory().getPaperdollItemId(Inventory.PAPERDOLL_CHEST) : _activeChar.getDressMeData().getChestId())); writeD(_activeChar.getDressMeData() == null ? _activeChar.getInventory().getPaperdollItemId(Inventory.PAPERDOLL_LEGS) : (_activeChar.getDressMeData().getLegsId() == 0 ? _activeChar.getInventory().getPaperdollItemId(Inventory.PAPERDOLL_LEGS) : _activeChar.getDressMeData().getLegsId())); writeD(_activeChar.getDressMeData() == null ? _activeChar.getInventory().getPaperdollItemId(Inventory.PAPERDOLL_FEET) : (_activeChar.getDressMeData().getBootsId() == 0 ? _activeChar.getInventory().getPaperdollItemId(Inventory.PAPERDOLL_FEET) : _activeChar.getDressMeData().getBootsId())); writeD(_inv.getPaperdollItemId(Inventory.PAPERDOLL_BACK)); writeD(_activeChar.getDressMeData() == null ? _activeChar.getInventory().getPaperdollItemId(Inventory.PAPERDOLL_RHAND) : (_activeChar.getDressMeData().getWeapId() == 0 ? _activeChar.getInventory().getPaperdollItemId(Inventory.PAPERDOLL_RHAND) : _activeChar.getDressMeData().getWeapId())); writeD(_inv.getPaperdollItemId(Inventory.PAPERDOLL_HAIR)); writeD(_inv.getPaperdollItemId(Inventory.PAPERDOLL_FACE)); } UserInfo.java Replace these: writeD(_activeChar.getInventory().getPaperdollObjectId(Inventory.PAPERDOLL_HAIRALL)); writeD(_activeChar.getInventory().getPaperdollObjectId(Inventory.PAPERDOLL_REAR)); writeD(_activeChar.getInventory().getPaperdollObjectId(Inventory.PAPERDOLL_LEAR)); writeD(_activeChar.getInventory().getPaperdollObjectId(Inventory.PAPERDOLL_NECK)); writeD(_activeChar.getInventory().getPaperdollObjectId(Inventory.PAPERDOLL_RFINGER)); writeD(_activeChar.getInventory().getPaperdollObjectId(Inventory.PAPERDOLL_LFINGER)); writeD(_activeChar.getInventory().getPaperdollObjectId(Inventory.PAPERDOLL_HEAD)); writeD(_activeChar.getInventory().getPaperdollObjectId(Inventory.PAPERDOLL_RHAND)); writeD(_activeChar.getInventory().getPaperdollObjectId(Inventory.PAPERDOLL_LHAND)); writeD(_activeChar.getInventory().getPaperdollObjectId(Inventory.PAPERDOLL_GLOVES)); writeD(_activeChar.getInventory().getPaperdollObjectId(Inventory.PAPERDOLL_CHEST)); writeD(_activeChar.getInventory().getPaperdollObjectId(Inventory.PAPERDOLL_LEGS)); writeD(_activeChar.getInventory().getPaperdollObjectId(Inventory.PAPERDOLL_FEET)); writeD(_activeChar.getInventory().getPaperdollObjectId(Inventory.PAPERDOLL_BACK)); writeD(_activeChar.getInventory().getPaperdollObjectId(Inventory.PAPERDOLL_RHAND)); writeD(_activeChar.getInventory().getPaperdollObjectId(Inventory.PAPERDOLL_HAIR)); writeD(_activeChar.getInventory().getPaperdollObjectId(Inventory.PAPERDOLL_FACE)); writeD(_activeChar.getInventory().getPaperdollItemId(Inventory.PAPERDOLL_HAIRALL)); writeD(_activeChar.getInventory().getPaperdollItemId(Inventory.PAPERDOLL_REAR)); writeD(_activeChar.getInventory().getPaperdollItemId(Inventory.PAPERDOLL_LEAR)); writeD(_activeChar.getInventory().getPaperdollItemId(Inventory.PAPERDOLL_NECK)); writeD(_activeChar.getInventory().getPaperdollItemId(Inventory.PAPERDOLL_RFINGER)); writeD(_activeChar.getInventory().getPaperdollItemId(Inventory.PAPERDOLL_LFINGER)); writeD(_activeChar.getInventory().getPaperdollItemId(Inventory.PAPERDOLL_HEAD)); writeD(_activeChar.getInventory().getPaperdollItemId(Inventory.PAPERDOLL_RHAND)); writeD(_activeChar.getInventory().getPaperdollItemId(Inventory.PAPERDOLL_LHAND)); writeD(_activeChar.getInventory().getPaperdollItemId(Inventory.PAPERDOLL_GLOVES)); writeD(_activeChar.getInventory().getPaperdollItemId(Inventory.PAPERDOLL_CHEST)); writeD(_activeChar.getInventory().getPaperdollItemId(Inventory.PAPERDOLL_LEGS)); writeD(_activeChar.getInventory().getPaperdollItemId(Inventory.PAPERDOLL_FEET)); writeD(_activeChar.getInventory().getPaperdollItemId(Inventory.PAPERDOLL_BACK)); writeD(_activeChar.getInventory().getPaperdollItemId(Inventory.PAPERDOLL_RHAND)); writeD(_activeChar.getInventory().getPaperdollItemId(Inventory.PAPERDOLL_HAIR)); writeD(_activeChar.getInventory().getPaperdollItemId(Inventory.PAPERDOLL_FACE)); with these: if (!_activeChar.isDressMeEnabled()) { writeD(_activeChar.getInventory().getPaperdollObjectId(Inventory.PAPERDOLL_HAIRALL)); writeD(_activeChar.getInventory().getPaperdollObjectId(Inventory.PAPERDOLL_REAR)); writeD(_activeChar.getInventory().getPaperdollObjectId(Inventory.PAPERDOLL_LEAR)); writeD(_activeChar.getInventory().getPaperdollObjectId(Inventory.PAPERDOLL_NECK)); writeD(_activeChar.getInventory().getPaperdollObjectId(Inventory.PAPERDOLL_RFINGER)); writeD(_activeChar.getInventory().getPaperdollObjectId(Inventory.PAPERDOLL_LFINGER)); writeD(_activeChar.getInventory().getPaperdollObjectId(Inventory.PAPERDOLL_HEAD)); writeD(_activeChar.getInventory().getPaperdollObjectId(Inventory.PAPERDOLL_RHAND)); writeD(_activeChar.getInventory().getPaperdollObjectId(Inventory.PAPERDOLL_LHAND)); writeD(_activeChar.getInventory().getPaperdollObjectId(Inventory.PAPERDOLL_GLOVES)); writeD(_activeChar.getInventory().getPaperdollObjectId(Inventory.PAPERDOLL_CHEST)); writeD(_activeChar.getInventory().getPaperdollObjectId(Inventory.PAPERDOLL_LEGS)); writeD(_activeChar.getInventory().getPaperdollObjectId(Inventory.PAPERDOLL_FEET)); writeD(_activeChar.getInventory().getPaperdollObjectId(Inventory.PAPERDOLL_BACK)); writeD(_activeChar.getInventory().getPaperdollObjectId(Inventory.PAPERDOLL_RHAND)); writeD(_activeChar.getInventory().getPaperdollObjectId(Inventory.PAPERDOLL_HAIR)); writeD(_activeChar.getInventory().getPaperdollObjectId(Inventory.PAPERDOLL_FACE)); writeD(_activeChar.getInventory().getPaperdollItemId(Inventory.PAPERDOLL_HAIRALL)); writeD(_activeChar.getInventory().getPaperdollItemId(Inventory.PAPERDOLL_REAR)); writeD(_activeChar.getInventory().getPaperdollItemId(Inventory.PAPERDOLL_LEAR)); writeD(_activeChar.getInventory().getPaperdollItemId(Inventory.PAPERDOLL_NECK)); writeD(_activeChar.getInventory().getPaperdollItemId(Inventory.PAPERDOLL_RFINGER)); writeD(_activeChar.getInventory().getPaperdollItemId(Inventory.PAPERDOLL_LFINGER)); writeD(_activeChar.getInventory().getPaperdollItemId(Inventory.PAPERDOLL_HEAD)); writeD(_activeChar.getInventory().getPaperdollItemId(Inventory.PAPERDOLL_RHAND)); writeD(_activeChar.getInventory().getPaperdollItemId(Inventory.PAPERDOLL_LHAND)); writeD(_activeChar.getInventory().getPaperdollItemId(Inventory.PAPERDOLL_GLOVES)); writeD(_activeChar.getInventory().getPaperdollItemId(Inventory.PAPERDOLL_CHEST)); writeD(_activeChar.getInventory().getPaperdollItemId(Inventory.PAPERDOLL_LEGS)); writeD(_activeChar.getInventory().getPaperdollItemId(Inventory.PAPERDOLL_FEET)); writeD(_activeChar.getInventory().getPaperdollItemId(Inventory.PAPERDOLL_BACK)); writeD(_activeChar.getInventory().getPaperdollItemId(Inventory.PAPERDOLL_RHAND)); writeD(_activeChar.getInventory().getPaperdollItemId(Inventory.PAPERDOLL_HAIR)); writeD(_activeChar.getInventory().getPaperdollItemId(Inventory.PAPERDOLL_FACE)); } else { writeD(_activeChar.getInventory().getPaperdollObjectId(Inventory.PAPERDOLL_HAIRALL)); writeD(_activeChar.getInventory().getPaperdollObjectId(Inventory.PAPERDOLL_REAR)); writeD(_activeChar.getInventory().getPaperdollObjectId(Inventory.PAPERDOLL_LEAR)); writeD(_activeChar.getInventory().getPaperdollObjectId(Inventory.PAPERDOLL_NECK)); writeD(_activeChar.getInventory().getPaperdollObjectId(Inventory.PAPERDOLL_RFINGER)); writeD(_activeChar.getInventory().getPaperdollObjectId(Inventory.PAPERDOLL_LFINGER)); writeD(_activeChar.getInventory().getPaperdollObjectId(Inventory.PAPERDOLL_HEAD)); writeD(_activeChar.getDressMeData() == null ?_activeChar.getInventory().getPaperdollObjectId(Inventory.PAPERDOLL_RHAND) : (_activeChar.getDressMeData().getWeapId() == 0 ? _activeChar.getInventory().getPaperdollObjectId(Inventory.PAPERDOLL_RHAND) : _activeChar.getDressMeData().getWeapId())); writeD(_activeChar.getInventory().getPaperdollObjectId(Inventory.PAPERDOLL_LHAND)); writeD(_activeChar.getDressMeData() == null ?_activeChar.getInventory().getPaperdollObjectId(Inventory.PAPERDOLL_GLOVES) : (_activeChar.getDressMeData().getGlovesId() == 0 ? _activeChar.getInventory().getPaperdollObjectId(Inventory.PAPERDOLL_GLOVES) : _activeChar.getDressMeData().getGlovesId())); writeD(_activeChar.getDressMeData() == null ?_activeChar.getInventory().getPaperdollObjectId(Inventory.PAPERDOLL_CHEST) : (_activeChar.getDressMeData().getChestId() == 0 ? _activeChar.getInventory().getPaperdollObjectId(Inventory.PAPERDOLL_CHEST) : _activeChar.getDressMeData().getChestId())); writeD(_activeChar.getDressMeData() == null ?_activeChar.getInventory().getPaperdollObjectId(Inventory.PAPERDOLL_LEGS) : (_activeChar.getDressMeData().getLegsId() == 0 ? _activeChar.getInventory().getPaperdollObjectId(Inventory.PAPERDOLL_LEGS) : _activeChar.getDressMeData().getLegsId())); writeD(_activeChar.getDressMeData() == null ?_activeChar.getInventory().getPaperdollObjectId(Inventory.PAPERDOLL_FEET) : (_activeChar.getDressMeData().getBootsId() == 0 ? _activeChar.getInventory().getPaperdollObjectId(Inventory.PAPERDOLL_FEET) : _activeChar.getDressMeData().getBootsId())); writeD(_activeChar.getInventory().getPaperdollObjectId(Inventory.PAPERDOLL_BACK)); writeD(_activeChar.getDressMeData() == null ?_activeChar.getInventory().getPaperdollObjectId(Inventory.PAPERDOLL_RHAND) : (_activeChar.getDressMeData().getWeapId() == 0 ? _activeChar.getInventory().getPaperdollObjectId(Inventory.PAPERDOLL_RHAND) : _activeChar.getDressMeData().getWeapId())); writeD(_activeChar.getInventory().getPaperdollObjectId(Inventory.PAPERDOLL_HAIR)); writeD(_activeChar.getInventory().getPaperdollObjectId(Inventory.PAPERDOLL_FACE)); writeD(_activeChar.getInventory().getPaperdollItemId(Inventory.PAPERDOLL_HAIRALL)); writeD(_activeChar.getInventory().getPaperdollItemId(Inventory.PAPERDOLL_REAR)); writeD(_activeChar.getInventory().getPaperdollItemId(Inventory.PAPERDOLL_LEAR)); writeD(_activeChar.getInventory().getPaperdollItemId(Inventory.PAPERDOLL_NECK)); writeD(_activeChar.getInventory().getPaperdollItemId(Inventory.PAPERDOLL_RFINGER)); writeD(_activeChar.getInventory().getPaperdollItemId(Inventory.PAPERDOLL_LFINGER)); writeD(_activeChar.getInventory().getPaperdollItemId(Inventory.PAPERDOLL_HEAD)); writeD(_activeChar.getDressMeData() == null ? _activeChar.getInventory().getPaperdollItemId(Inventory.PAPERDOLL_RHAND) : (_activeChar.getDressMeData().getWeapId() == 0 ? _activeChar.getInventory().getPaperdollItemId(Inventory.PAPERDOLL_RHAND) : _activeChar.getDressMeData().getWeapId())); writeD(_activeChar.getInventory().getPaperdollItemId(Inventory.PAPERDOLL_LHAND)); writeD(_activeChar.getDressMeData() == null ? _activeChar.getInventory().getPaperdollItemId(Inventory.PAPERDOLL_GLOVES) : (_activeChar.getDressMeData().getGlovesId() == 0 ? _activeChar.getInventory().getPaperdollItemId(Inventory.PAPERDOLL_GLOVES) : _activeChar.getDressMeData().getGlovesId())); writeD(_activeChar.getDressMeData() == null ? _activeChar.getInventory().getPaperdollItemId(Inventory.PAPERDOLL_CHEST) : (_activeChar.getDressMeData().getChestId() == 0 ? _activeChar.getInventory().getPaperdollItemId(Inventory.PAPERDOLL_CHEST) : _activeChar.getDressMeData().getChestId())); writeD(_activeChar.getDressMeData() == null ? _activeChar.getInventory().getPaperdollItemId(Inventory.PAPERDOLL_LEGS) : (_activeChar.getDressMeData().getLegsId() == 0 ? _activeChar.getInventory().getPaperdollItemId(Inventory.PAPERDOLL_LEGS) : _activeChar.getDressMeData().getLegsId())); writeD(_activeChar.getDressMeData() == null ? _activeChar.getInventory().getPaperdollItemId(Inventory.PAPERDOLL_FEET) : (_activeChar.getDressMeData().getBootsId() == 0 ? _activeChar.getInventory().getPaperdollItemId(Inventory.PAPERDOLL_FEET) : _activeChar.getDressMeData().getBootsId())); writeD(_activeChar.getInventory().getPaperdollItemId(Inventory.PAPERDOLL_BACK)); writeD(_activeChar.getDressMeData() == null ? _activeChar.getInventory().getPaperdollItemId(Inventory.PAPERDOLL_RHAND) : (_activeChar.getDressMeData().getWeapId() == 0 ? _activeChar.getInventory().getPaperdollItemId(Inventory.PAPERDOLL_RHAND) : _activeChar.getDressMeData().getWeapId())); writeD(_activeChar.getInventory().getPaperdollItemId(Inventory.PAPERDOLL_HAIR)); writeD(_activeChar.getInventory().getPaperdollItemId(Inventory.PAPERDOLL_FACE)); } L2PcInstance.java private DressMeData _dressmedata = null; public DressMeData getDressMeData() { return _dressmedata; } public void setDressMeData(DressMeData val) { _dressmedata = val; } private boolean _dressed = false; public boolean isDressMeEnabled() { return _dressed; } public void setDressMeEnabled(boolean val) { _dressed = val; } And the htmls: data/html/custom/dressme/edit.htm <html><body> <center> Current %part%: %partinfo% <br> <combobox width=120 height=17 var=val list=%dropboxdata%> <br1> <a action="bypass -h bp_setpart %part% $val">Set.</a> <br1> <a action="bypass -h bp_gettarget %part%">Get target's.</a> <br> <a action="bypass -h bp_main">Back.</a> </center> </body></html> data/html/custom/dressme/main.htm <html><body> <center> Here you can change your appearance! <br> Dress me status is currently <font color="LEVEL">%enabled%</font>.<br1> <a action="bypass -h bp_changedressmestatus">Change status.</a> <br> Your current custom appearance items: <br> </center> Chest: %chestinfo% <br1> <a action="bypass -h bp_editWindow chest">Edit.</a> <br> Legs: %legsinfo% <br1> <a action="bypass -h bp_editWindow legs">Edit.</a> <br> Gloves: %glovesinfo% <br1> <a action="bypass -h bp_editWindow gloves">Edit.</a> <br> Boots: %bootsinfo% <br1> <a action="bypass -h bp_editWindow boots">Edit.</a> <br> Weapon: %weapinfo% <br1> <a action="bypass -h bp_editWindow weap">Edit.</a> <br> <center><a action="bypass -h bp_gettarget all">Get target's appearance.</a></center> </body></html> Credits to me, coded for aCis.
-
Signomi an se pareksigisa, apla nomiza oti itan ironiko afto pou mou eipes. Telos panton, as min bgenoume off-topic. Nai kserw na to ftiaxnw.
-
Den tha sxoliasw peretero, parto san warning afto to reply. Poli aera exeis parei. Pantos sigoura den tha to eftiaxna for free, idika aftes tis meres pou exw elaxisto xrono.
-
Den nomizw na iparxei shared tetio event. Diskolo pantos opos eipe kai o Elfocrash na sto ftiaksei kapios xoris lefta.
-
Topzone Vote Reward System
An4rchy replied to InTheEndॐ's question in Request Server Development Help [L2J]
Strange, i tested a vote reward system on topzone today and it worked fine. -
Project L2Jpes Interlude Project
An4rchy replied to Pauler's topic in Server Development Discussion [L2J]
https://xp-dev.com/trac/l2jpes/changeset/56/l2jpes -
Project L2Jpes Interlude Project
An4rchy replied to Pauler's topic in Server Development Discussion [L2J]
https://xp-dev.com/trac/l2jpes/changeset/54/l2jpes -
Lol, heirophant is olaf xD. Amazing skills mate keep going :)
-
How to make Blow skills work with SS?
An4rchy replied to GLO's question in Request Server Development Help [L2J]
Moved to the right section, please fix the prefix. -
Delete these..
-
Then players would make a clan and just pvp without being in parties..
-
So if he attacks with basic attacks 2x basic attack will be launched?
-
Or Yi :troll: You can even make the second with the arrows to drop 8 arrows with one hit. That would be interesting :D
-
Vote Reward System ?!?!
An4rchy replied to McKenZiex's question in Request Server Development Help [Greek]
http://maxcheaters.com/forum/index.php?topic=239928.0 -
Killing Spree, master yi power.
-
Project L2Jpes Interlude Project
An4rchy replied to Pauler's topic in Server Development Discussion [L2J]
https://xp-dev.com/trac/l2jpes/changeset/50/l2jpes -
Mobs drop by maked DMG
An4rchy replied to numl0ckas's question in Request Server Development Help [L2J]
Np :) If you want me to lock it tell me. I leave it open in case you have problems doing it. -
olympiada probleam
An4rchy replied to Red-Hair-Shanks's question in Request Server Development Help [Greek]
Exeis balei kapio mod gia buffer stin olympiad etsi? -
L2 java License
An4rchy replied to stelioskiller123's question in Request Server Development Help [Greek]
... Koita file, gia na anoikseis l2j server den einai paranomo, to mono pou tha mporouses na theoriseis paranomo einai ta donates, alla den tha exeis kanena provlima. -
Mobs drop by maked DMG
An4rchy replied to numl0ckas's question in Request Server Development Help [L2J]
This is a little complicated to do. I'll give you a clue: - You should make a map in L2Attackable/L2Monster(or your monster's instance) that will contain as key a L2PcInstance(the player) and value an Integer(the damage). - Then every time the npc takes damage, this map should be updated with new damage for the specific player. - Then when the npc dies, this map is checked and the player with the biggest damage gets the drops. - NOTE: You need to make a task to update the map if some seconds passes, otherwise it will be buggy. -
Ama einai na pas see through kana bradi stile mou ena pm. Otan sinantithite pite to na arxisei kaneis kana e-war na ginete xalia.
-
Just loved you <3 Thanks a lot mate.

