Перейти к содержанию

deadmen1227

Постоялец
  • Публикаций

    151
  • Зарегистрирован

  • Посещение

  • Отзывы

    0%

Весь контент deadmen1227

  1. Тема закрыта кому интересно ЛС
  2. Есть скрипт для заточки package services.community; import java.util.StringTokenizer; import l2ft.gameserver.Config; import l2ft.gameserver.data.htm.HtmCache; import l2ft.gameserver.handler.bbs.CommunityBoardManager; import l2ft.gameserver.model.base.Element; import l2ft.gameserver.network.l2.s2c.ShowBoard; import l2ft.gameserver.scripts.Functions; import l2ft.gameserver.model.Player; import l2ft.gameserver.model.items.ItemInstance; import l2ft.gameserver.data.xml.holder.ItemHolder; import l2ft.gameserver.network.l2.s2c.InventoryUpdate; import l2ft.gameserver.handler.bbs.ICommunityBoardHandler; import l2ft.gameserver.templates.item.EtcItemTemplate; import l2ft.gameserver.network.l2.components.SystemMsg; import l2ft.gameserver.model.base.TeamType; import l2ft.gameserver.templates.item.ItemTemplate; import l2ft.gameserver.scripts.ScriptFile; import l2ft.gameserver.templates.item.ArmorTemplate.ArmorType; import l2ft.gameserver.templates.item.support.EnchantItem; import l2ft.gameserver.utils.BbsUtil; import l2ft.gameserver.utils.Log; import org.slf4j.Logger; import org.slf4j.LoggerFactory; public class ManageEnchant extends Functions implements ScriptFile, ICommunityBoardHandler { static final Logger _log = LoggerFactory.getLogger(ManageEnchant.class); private int enchant_item = Config.COMMUNITYBOARD_ENCHANT_ITEM; private int max_enchant = Config.COMMUNITYBOARD_MAX_ENCHANT; private int[] enchant_level = Config.COMMUNITYBOARD_ENCHANT_LVL; private int[] ench_price_weapon = Config.COMMUNITYBOARD_ENCHANT_PRICE_WEAPON; private int[] ench_price_armor = Config.COMMUNITYBOARD_ENCHANT_PRICE_ARMOR; private int[] atr_lvl_weapon = Config.COMMUNITYBOARD_ENCHANT_ATRIBUTE_LVL_WEAPON; private int[] atr_price_weapon = Config.COMMUNITYBOARD_ENCHANT_ATRIBUTE_PRICE_WEAPON; private int[] atr_lvl_armor = Config.COMMUNITYBOARD_ENCHANT_ATRIBUTE_LVL_ARMOR; private int[] atr_price_armor = Config.COMMUNITYBOARD_ENCHANT_ATRIBUTE_PRICE_ARMOR; private boolean atr_pvp = Config.COMMUNITYBOARD_ENCHANT_ATRIBUTE_PVP; @Override public void onLoad(){ if(Config.COMMUNITYBOARD_ENABLED) { _log.info("CommunityBoard: Enchant Community service loaded."); CommunityBoardManager.getInstance().registerHandler(this); } } @Override public void onReload(){ if(Config.COMMUNITYBOARD_ENABLED) { CommunityBoardManager.getInstance().removeHandler(this); } } @Override public void onShutdown(){} @Override public String[] getBypassCommands(){ return new String[] { "_bbsechant", "_bbsechantlist", "_bbsechantChus", "_bbsechantAtr", "_bbsechantgo", "_bbsechantuseAtr" }; } @Override public void onBypassCommand(Player activeChar, String bypass){ if(!CheckCondition(activeChar)) return; if (bypass.startsWith("_bbsechant")) { String name = "None Name"; String html = HtmCache.getInstance().getNotNull(Config.BBS_HOME_DIR + "pages/enchant.htm", activeChar); name = ItemHolder.getInstance().getTemplate(enchant_item).getName(); StringBuilder sb = new StringBuilder(""); sb.append("<table width=400>"); ItemInstance[] arr = activeChar.getInventory().getItems(); int len = arr.length; for (int i = 0; i < len; i++) { ItemInstance _item = arr[i]; if (_item == null || _item.getTemplate().isBelt() || _item.isCursed() || _item.isArrow() || _item.getTemplate().isBracelet() || _item.getTemplate().isCloak() || _item.isNoEnchant() || !_item.isEquipped() || _item.isShieldNoEnchant() || _item.getItemType() == ArmorType.SIGIL || _item.isHeroWeapon() || _item.getItemId() >= 7816 && _item.getItemId() <= 7831 || _item.isShadowItem() || _item.isCommonItem() || _item.getEnchantLevel() >= (max_enchant + 1) || !_item.canBeEnchanted(true) || _item.getEquipSlot() == ItemTemplate.SLOT_HAIR || _item.getEquipSlot() == ItemTemplate.SLOT_DHAIR) continue; sb.append(new StringBuilder("<tr><td><img src=icon." + _item.getTemplate().getIcon() + " width=32 height=32></td><td>")); sb.append(new StringBuilder("<font color=\"LEVEL\">" + _item.getTemplate().getName() + " " + (_item.getEnchantLevel() <= 0 ? "" : new StringBuilder("</font><br1><font color=3293F3>Заточено на: +" + _item.getEnchantLevel())) + "</font><br1>")); sb.append(new StringBuilder("Заточка за: <font color=\"LEVEL\">" + name + "</font>")); sb.append("<img src=\"l2ui.squaregray\" width=\"170\" height=\"1\">"); sb.append("</td><td>"); if(Config.ALLOW_BBS_ENCHANT_ELEMENTAR) sb.append(new StringBuilder("<button value=\"Обычная\" action=\"bypass _bbsechantlist:" + _item.getObjectId() + ";\" width=75 height=18 back=\"L2UI_ct1.button_df\" fore=\"L2UI_ct1.button_df\">")); sb.append("</td><td>"); if(Config.ALLOW_BBS_ENCHANT_ATT) sb.append(new StringBuilder("<button value=\"Аттрибут\" action=\"bypass _bbsechantChus:" + _item.getObjectId() + ";\" width=75 height=18 back=\"L2UI_ct1.button_df\" fore=\"L2UI_ct1.button_df\">")); sb.append("</td></tr>"); } sb.append("</table>"); html = html.replace("%enchanter%", sb.toString()); html = BbsUtil.htmlBuff(html, activeChar); ShowBoard.separateAndSend(html, activeChar); } if (bypass.startsWith("_bbsechantlist")) { StringTokenizer st2 = new StringTokenizer(bypass, ";"); String[] mBypass = st2.nextToken().split(":"); int ItemForEchantObjID = Integer.parseInt(mBypass[1]); String name = "None Name"; String html = HtmCache.getInstance().getNotNull(Config.BBS_HOME_DIR + "pages/enchant.htm", activeChar); name = ItemHolder.getInstance().getTemplate(enchant_item).getName(); ItemInstance EhchantItem = activeChar.getInventory().getItemByObjectId(ItemForEchantObjID); StringBuilder sb = new StringBuilder(""); sb.append("Для обычной заточки выбрана вещь:<br1><table width=300>"); sb.append(new StringBuilder("<tr><td width=32><img src=icon." + EhchantItem.getTemplate().getIcon() + " width=32 height=32> <img src=\"l2ui.squaregray\" width=\"32\" height=\"1\"></td><td width=236><center>")); sb.append(new StringBuilder("<font color=\"LEVEL\">" + EhchantItem.getTemplate().getName() + " " + (EhchantItem.getEnchantLevel() <= 0 ? "" : new StringBuilder("</font><br1><font color=3293F3>Заточено на: +" + EhchantItem.getEnchantLevel())) + "</font><br1>")); sb.append(new StringBuilder("Заточка производится за: <font color=\"LEVEL\">" + name + "</font>")); sb.append("<img src=\"l2ui.squaregray\" width=\"236\" height=\"1\"><center></td>"); sb.append(new StringBuilder("<td width=32><img src=icon." + EhchantItem.getTemplate().getIcon() + " width=32 height=32> <img src=\"l2ui.squaregray\" width=\"32\" height=\"1\"></td>")); sb.append("</tr>"); sb.append("</table>"); sb.append("<br>"); sb.append("<br>"); sb.append("<table border=0 width=400><tr><td width=200>"); for(int i = 0; i < enchant_level.length; i++) { sb.append(new StringBuilder("<button value=\"На +" + enchant_level[i] + " (Цена:" + (EhchantItem.getTemplate().isWeapon() != false ? ench_price_weapon[i] : ench_price_armor[i]) + " " + name + ")\" action=\"bypass _bbsechantgo:" + enchant_level[i] + ":" + (EhchantItem.getTemplate().isWeapon() != false ? ench_price_weapon[i] : ench_price_armor[i]) + ":" + ItemForEchantObjID + ";\" width=200 height=20 back=\"L2UI_CT1.Button_DF\" fore=\"L2UI_CT1.Button_DF\">")); //sb.append("<br1>"); } sb.append("</td></tr></table><br1><button value=\"Назад\" action=\"bypass _bbsechant;\" width=70 height=18 back=\"L2UI_ct1.button_df\" fore=\"L2UI_ct1.button_df\">"); html = html.replace("%enchanter%", sb.toString()); html = BbsUtil.htmlBuff(html, activeChar); ShowBoard.separateAndSend(html, activeChar); } if (bypass.startsWith("_bbsechantChus")) { StringTokenizer st2 = new StringTokenizer(bypass, ";"); String[] mBypass = st2.nextToken().split(":"); int ItemForEchantObjID = Integer.parseInt(mBypass[1]); String name = "None Name"; String html = HtmCache.getInstance().getNotNull(Config.BBS_HOME_DIR + "pages/enchant.htm", activeChar); name = ItemHolder.getInstance().getTemplate(enchant_item).getName(); ItemInstance EhchantItem = activeChar.getInventory().getItemByObjectId(ItemForEchantObjID); StringBuilder sb = new StringBuilder(""); sb.append("Для заточки на атрибут выбрана вещь:<br><table width=300>"); sb.append(new StringBuilder("<tr><td width=32><img src=icon." + EhchantItem.getTemplate().getIcon() + " width=32 height=32> <img src=\"l2ui.squaregray\" width=\"32\" height=\"1\"></td><td width=236><center>")); sb.append(new StringBuilder("<font color=\"LEVEL\">" + EhchantItem.getTemplate().getName() + " " + (EhchantItem.getEnchantLevel() <= 0 ? "" : new StringBuilder("</font><br1><font color=3293F3>Заточено на: +" + EhchantItem.getEnchantLevel())) + "</font><br1>")); sb.append(new StringBuilder("Заточка производится за: <font color=\"LEVEL\">" + name + "</font>")); sb.append("<img src=\"l2ui.squaregray\" width=\"236\" height=\"1\"><center></td>"); sb.append(new StringBuilder("<td width=32><img src=icon." + EhchantItem.getTemplate().getIcon() + " width=32 height=32> <img src=\"l2ui.squaregray\" width=\"32\" height=\"1\"></td>")); sb.append("</tr>"); sb.append("</table>"); sb.append("<br>"); sb.append("<br>"); sb.append("<table border=0 width=400><tr><td width=200>"); sb.append("<center><img src=icon.etc_wind_stone_i00 width=32 height=32></center><br>"); sb.append(new StringBuilder("<button value=\"Wind \" action=\"bypass _bbsechantAtr:2:" + ItemForEchantObjID + ";\" width=200 height=20 back=\"L2UI_CT1.Button_DF\" fore=\"L2UI_CT1.Button_DF\">")); sb.append("<br><center><img src=icon.etc_earth_stone_i00 width=32 height=32></center><br>"); sb.append(new StringBuilder("<button value=\"Earth \" action=\"bypass _bbsechantAtr:3:" + ItemForEchantObjID + ";\" width=200 height=20 back=\"L2UI_CT1.Button_DF\" fore=\"L2UI_CT1.Button_DF\">")); sb.append("<br><center><img src=icon.etc_fire_stone_i00 width=32 height=32></center><br>"); sb.append(new StringBuilder("<button value=\"Fire \" action=\"bypass _bbsechantAtr:0:" + ItemForEchantObjID + ";\" width=200 height=20 back=\"L2UI_CT1.Button_DF\" fore=\"L2UI_CT1.Button_DF\">")); sb.append("</td><td width=200>"); sb.append("<center><img src=icon.etc_water_stone_i00 width=32 height=32></center><br>"); sb.append(new StringBuilder("<button value=\"Water \" action=\"bypass _bbsechantAtr:1:" + ItemForEchantObjID + ";\" width=200 height=20 back=\"L2UI_CT1.Button_DF\" fore=\"L2UI_CT1.Button_DF\">")); sb.append("<br><center><img src=icon.etc_holy_stone_i00 width=32 height=32></center><br>"); sb.append(new StringBuilder("<button value=\"Divine \" action=\"bypass _bbsechantAtr:4:" + ItemForEchantObjID + ";\" width=200 height=20 back=\"L2UI_CT1.Button_DF\" fore=\"L2UI_CT1.Button_DF\">")); sb.append("<br><center><img src=icon.etc_unholy_stone_i00 width=32 height=32></center><br>"); sb.append(new StringBuilder("<button value=\"Dark \" action=\"bypass _bbsechantAtr:5:" + ItemForEchantObjID + ";\" width=200 height=20 back=\"L2UI_CT1.Button_DF\" fore=\"L2UI_CT1.Button_DF\">")); sb.append("</td></tr></table><br1><button value=\"Назад\" action=\"bypass _bbsechant;\" width=70 height=18 back=\"L2UI_ct1.button_df\" fore=\"L2UI_ct1.button_df\">"); html = html.replace("%enchanter%", sb.toString()); html = BbsUtil.htmlBuff(html, activeChar); ShowBoard.separateAndSend(html, activeChar); } if (bypass.startsWith("_bbsechantAtr")) { StringTokenizer st2 = new StringTokenizer(bypass, ";"); String[] mBypass = st2.nextToken().split(":"); int AtributType = Integer.parseInt(mBypass[1]); int ItemForEchantObjID = Integer.parseInt(mBypass[2]); String ElementName = ""; if (AtributType == 0) ElementName = "Fire"; else if (AtributType == 1) ElementName = "Water"; else if (AtributType == 2) ElementName = "Wind"; else if (AtributType == 3) ElementName = "Earth"; else if (AtributType == 4) ElementName = "Divine"; else if (AtributType == 5) ElementName = "Dark"; String name = "None Name"; String html = HtmCache.getInstance().getNotNull(Config.BBS_HOME_DIR + "pages/enchant.htm", activeChar); name = ItemHolder.getInstance().getTemplate(enchant_item).getName(); ItemInstance EhchantItem = activeChar.getInventory().getItemByObjectId(ItemForEchantObjID); StringBuilder sb = new StringBuilder(""); sb.append(new StringBuilder("Выбран элемент: <font color=\"LEVEL\">" + ElementName + "</font><br1> Для заточки выбрана вещь:<br1><table width=300>")); sb.append(new StringBuilder("<tr><td width=32><img src=icon." + EhchantItem.getTemplate().getIcon() + " width=32 height=32> <img src=\"l2ui.squaregray\" width=\"32\" height=\"1\"></td><td width=236><center>")); sb.append(new StringBuilder("<font color=\"LEVEL\">" + EhchantItem.getTemplate().getName() + " " + (EhchantItem.getEnchantLevel() <= 0 ? "" : new StringBuilder("</font><br1><font color=3293F3>Заточено на: +" + EhchantItem.getEnchantLevel())) + "</font><br1>")); sb.append(new StringBuilder("Заточка производится за: <font color=\"LEVEL\">" + name + "</font>")); sb.append("<img src=\"l2ui.squaregray\" width=\"236\" height=\"1\"><center></td>"); sb.append(new StringBuilder("<td width=32><img src=icon." + EhchantItem.getTemplate().getIcon() + " width=32 height=32> <img src=\"l2ui.squaregray\" width=\"32\" height=\"1\"></td>")); sb.append("</tr>"); sb.append("<br1>"); sb.append("<br1>"); if (EhchantItem.getTemplate().getCrystalType() == ItemTemplate.Grade.S || EhchantItem.getTemplate().getCrystalType() == ItemTemplate.Grade.S80 || EhchantItem.getTemplate().getCrystalType() == ItemTemplate.Grade.S84) { sb.append("<table border=0 width=400><tr><td width=200>"); for(int i = 0; i < (EhchantItem.getTemplate().isWeapon() != false ? atr_lvl_weapon.length : atr_lvl_armor.length); i++) { sb.append("<center><button value=\"На +"); sb.append(new StringBuilder((EhchantItem.getTemplate().isWeapon() != false ? atr_lvl_weapon[i] : atr_lvl_armor[i]) + " (Цена:" + (EhchantItem.getTemplate().isWeapon() != false ? atr_price_weapon[i] : atr_price_armor[i]) + " " + name + ")\" action=\"bypass _bbsechantuseAtr:" + (EhchantItem.getTemplate().isWeapon() != false ? atr_lvl_weapon[i] : atr_lvl_armor[i]) + ":" + AtributType + ":" + (EhchantItem.getTemplate().isWeapon() != false ? atr_price_weapon[i] : atr_price_armor[i]) + ":" + ItemForEchantObjID + ";\" width=200 height=20 back=\"L2UI_CT1.Button_DF\" fore=\"L2UI_CT1.Button_DF\">")); sb.append("<br1>"); } sb.append("</td></tr></table><br1>"); } else if (EhchantItem.getTemplate().getCrystalType() == ItemTemplate.Grade.S || EhchantItem.getTemplate().getCrystalType() == ItemTemplate.Grade.S80 || EhchantItem.getTemplate().getCrystalType() == ItemTemplate.Grade.S84) { sb.append("<table border=0 width=400><tr><td width=200>"); for(int i = 0; i < (EhchantItem.getTemplate().isWeapon() != false ? atr_lvl_weapon.length : atr_lvl_armor.length); i++) { sb.append(new StringBuilder("<center><button value=\"На +" + (EhchantItem.getTemplate().isWeapon() != false ? atr_lvl_weapon[i] : atr_lvl_armor[i]) + " (Цена:" + (EhchantItem.getTemplate().isWeapon() != false ? atr_price_weapon[i] : atr_price_armor[i]) + " " + name + ")\" action=\"bypass _bbsechantuseAtr:" + (EhchantItem.getTemplate().isWeapon() != false ? atr_lvl_weapon[i] : atr_lvl_armor[i]) + ":" + AtributType + ":" + (EhchantItem.getTemplate().isWeapon() != false ? atr_price_weapon[i] : atr_price_armor[i]) + ":" + ItemForEchantObjID + ";\" width=200 height=20 back=\"L2UI_CT1.Button_DF\" fore=\"L2UI_CT1.Button_DF\">")); sb.append("<br1>"); } sb.append("</td></tr></table><br1>"); sb.append("</table>"); } else { sb.append("<table border=0 width=400><tr><td width=200>"); sb.append("<br1>"); sb.append("<br1>"); sb.append("<br1>"); sb.append("<br1>"); sb.append("<center><font color=\"LEVEL\">Заточка данной вещи не возможна!</font></center>"); sb.append("<br1>"); sb.append("<br1>"); sb.append("<br1>"); sb.append("<br1>"); sb.append("</td></tr></table><br1>"); } sb.append("<button value=\"Назад\" action=\"bypass _bbsechant;\" width=70 height=18 back=\"L2UI_ct1.button_df\" fore=\"L2UI_ct1.button_df\">"); html = html.replace("%enchanter%", sb.toString()); html = BbsUtil.htmlBuff(html, activeChar); ShowBoard.separateAndSend(html, activeChar); } if (bypass.startsWith("_bbsechantgo")) { StringTokenizer st2 = new StringTokenizer(bypass, ";"); String[] mBypass = st2.nextToken().split(":"); int EchantVal = Integer.parseInt(mBypass[1]); int EchantPrice = Integer.parseInt(mBypass[2]); int EchantObjID = Integer.parseInt(mBypass[3]); ItemTemplate item = ItemHolder.getInstance().getTemplate(enchant_item); ItemInstance pay = activeChar.getInventory().getItemByItemId(item.getItemId()); ItemInstance EhchantItem = activeChar.getInventory().getItemByObjectId(EchantObjID); if (pay != null && pay.getCount() >= EchantPrice) { activeChar.getInventory().destroyItem(pay, EchantPrice); EhchantItem.setEnchantLevel(EchantVal); activeChar.getInventory().equipItem(EhchantItem); activeChar.sendPacket(new InventoryUpdate().addModifiedItem(EhchantItem)); activeChar.broadcastUserInfo(true); activeChar.broadcastCharInfo(); activeChar.sendMessage(new StringBuilder("" + EhchantItem.getTemplate().getName() + " было заточено до " + EchantVal + ".").toString()); Log.add(new StringBuilder(activeChar.getName() + " enchant item:" + EhchantItem.getTemplate().getName() + " val: " + EchantVal + "").toString(), "wmzSeller"); onBypassCommand(activeChar, "_bbsechant"); } else activeChar.sendPacket(SystemMsg.INCORRECT_ITEM_COUNT); } if (bypass.startsWith("_bbsechantuseAtr")) { StringTokenizer st2 = new StringTokenizer(bypass, ";"); String[] mBypass = st2.nextToken().split(":"); int EchantVal = Integer.parseInt(mBypass[1]); int AtrType = Integer.parseInt(mBypass[2]); int EchantPrice = Integer.parseInt(mBypass[3]); int EchantObjID = Integer.parseInt(mBypass[4]); ItemTemplate item = ItemHolder.getInstance().getTemplate(enchant_item); ItemInstance pay = activeChar.getInventory().getItemByItemId(item.getItemId()); ItemInstance EhchantItem = activeChar.getInventory().getItemByObjectId(EchantObjID); if(EhchantItem.isWeapon()){ if (pay != null && pay.getCount() >= EchantPrice){ activeChar.getInventory().destroyItem(pay, EchantPrice); activeChar.getInventory().unEquipItem(EhchantItem); EhchantItem.setAttributeElement(getAttr(AtrType), EchantVal); activeChar.getInventory().equipItem(EhchantItem); activeChar.sendPacket(new InventoryUpdate().addModifiedItem(EhchantItem)); activeChar.broadcastUserInfo(true); activeChar.sendMessage(new StringBuilder("Значение атрибута " + EhchantItem.getTemplate().getName() + " увеличено до " + EchantVal + ".").toString()); Log.add(new StringBuilder(activeChar.getName() + " enchant item:" + EhchantItem.getTemplate().getName() + " val: " + EchantVal + " AtributType:" + AtrType).toString(), "wmzSeller"); onBypassCommand(activeChar, "_bbsechant"); } else activeChar.sendPacket(SystemMsg.INCORRECT_ITEM_COUNT); } else if(EhchantItem.isArmor()){ if(!canEnchantArmorAttribute(AtrType, EhchantItem)){ activeChar.sendMessage("Невозможно вставить аттрибут в броню, не соблюдены условия"); return; } if (pay != null && pay.getCount() >= EchantPrice){ activeChar.getInventory().destroyItem(pay, EchantPrice); activeChar.getInventory().unEquipItem(EhchantItem); EhchantItem.setAttributeElement(getAttr(AtrType), EchantVal); activeChar.getInventory().equipItem(EhchantItem); activeChar.sendPacket(new InventoryUpdate().addModifiedItem(EhchantItem)); activeChar.broadcastUserInfo(true); activeChar.sendMessage(new StringBuilder("Значение атрибута " + EhchantItem.getTemplate().getName() + " увеличено до " + EchantVal + ".").toString()); Log.add(new StringBuilder(activeChar.getName() + " enchant item:" + EhchantItem.getTemplate().getName() + " val: " + EchantVal + " AtributType:" + AtrType).toString(), "wmzSeller"); onBypassCommand(activeChar, "_bbsechant"); } } else{ if (activeChar.isLangRus()) activeChar.sendMessage("В данную вещь нельзя вставить атрибут."); else activeChar.sendMessage("In this thing you can not insert the attribute."); } } } public void onWriteCommand(Player player, String bypass, String arg1, String arg2, String arg3, String arg4, String arg5) { //To change body of implemented methods use File | Settings | File Templates. } private boolean canEnchantArmorAttribute(int attr, ItemInstance item){ switch(attr) { case 0: if(item.getDefenceWater() != 0) return false; break; case 1: if(item.getDefenceFire() != 0) return false; break; case 2: if(item.getDefenceEarth() != 0) return false; break; case 3: if(item.getDefenceWind() != 0) return false; break; case 4: if(item.getDefenceUnholy() != 0) return false; break; case 5: if(item.getDefenceHoly() != 0) return false; break; } return true; } private Element getAttr(int attr){ Element El = Element.NONE; switch(attr) { case 0: El = Element.FIRE; break; case 1: El = Element.WATER; break; case 2: El = Element.WIND; break; case 3: El = Element.EARTH; break; case 4: El = Element.HOLY; break; case 5: El = Element.UNHOLY; break; } return El; } private static boolean CheckCondition(Player player){ if(player == null) return false; if(player.isDead()) return false; if((player.getPvpFlag() != 0 || player.isInDuel() || player.isInCombat() || player.isAttackingNow())) { if (player.isLangRus()) player.sendMessage("Во время боя нельзя использовать данную функцию."); else player.sendMessage("During combat, you can not use this feature."); return false; } if (player.isInOlympiadMode()) { if (player.isLangRus()) player.sendMessage("Во время Олимпиады нельзя использовать данную функцию."); else player.sendMessage("During the Olympics you can not use this feature."); return false; } if (!Config.COMMUNITYBOARD_ENCHANT_ENABLED) { if (player.isLangRus()) player.sendMessage("Функция заточки отключена."); else player.sendMessage("Enchant off function."); return false; } if (player.getTeam() != TeamType.NONE) { if (player.isLangRus()) player.sendMessage("Нельзя использовать заточку во время эвентов."); else player.sendMessage("You can not use the enchant during Events."); return false; } return true; } } На сколько хватило меня 1. Создание в шаблоне комунити <button value="Т" action="bypass _bbsechant;" width=200 height=26 back="L2UI_CT1.OlympiadWnd_DF_Watch_Down" fore="L2UI_CT1.OlympiadWnd_DF_Watch"> 2. Создание файлика enchant.htm 3. В файле уже писал всё что угодно оно ноль на масу <html> <body> <br><br> <center><table><tr><td><img src="l2ui.bbs_lineage2" width=80 height=16 ></td><td><button action="bypass _bbspage:main2" width=16 height=16 back="L2UI_CH3.joypad_shortcut_down" fore="L2UI_CH3.joypad_shortcut"></td></tr></table></center> <br> <center><table width=700 height=400 background="L2UI_CH3.refinewnd_back_Pattern"> <tr><td height=45><br></td></tr> <tr> <td><center>%None Name%</center></td> <td><center>%_bbsechant%</center></td> <td> <center><button value="Набор для мага" action="bypass _bbsechantlist" width=130 height=20 back="L2UI_CT1.Button_DF_Down" fore="L2UI_CT1.Button_DF"></center> <center><button value="Набор для война" action="bypass _bbsechant" width=130 height=20 back="L2UI_CT1.Button_DF_Down" fore="L2UI_CT1.Button_DF"></center> </td </tr> </table></center> <br> <center>Наш сайт <font color=FF0000></font></center><br1> <center><font color=666666>LINEAGE2 © 2014</font></center> <br> <center><img src="L2UI.SquareGray" width=600 height=1></center> <br> </body> <html> Помогите а то я так и загнуся.( С меня плюсики....
  3. deadmen1227

    Flash Трабл

    Нет я про как мон в html ищо как то поставить Fixed если основа шаблона стоит на нем и при добавлении флэш контент сунется А если флэш добавить через абсолут то он привязывается к правому краю.
  4. deadmen1227

    Flash Трабл

    absolute Указывает, что элемент абсолютно позиционирован, при этом другие элементы отображаются на веб-странице словно абсолютно позиционированного элемента и нет. Положение элемента задается свойствами left, top, right и bottom, также на положение влияет значение свойства position родительского элемента. Так, если у родителя значение positionустановлено как static или родителя нет, то отсчет координат ведется от края окна браузера. Если у родителя значение position задано как fixed, relative или absolute, то отсчет координат ведется от края родительского элемента. fixed По своему действию это значение близко к absolute, но в отличие от него привязывается к указанной свойствами left, top, right и bottom точке на экране и не меняет своего положения при прокрутке веб-страницы. Браузер Firefox вообще не отображает полосы прокрутки, если положение элемента задано фиксированным, и оно не помещается целиком в окно браузера. В браузере Opera хотя и показываются полосы прокрутки, но они никак не влияют на позицию элемента. relative Положение элемента устанавливается относительно его исходного места. Добавление свойств left, top, right и bottom изменяет позицию элемента и сдвигает его в ту или иную сторону от первоначального расположения. static Элементы отображаются как обычно. Использование свойств left, top, right и bottom не приводит к каким-либо результатам. inherit Наследует значение родителя.
  5. deadmen1227

    Flash Трабл

    Добавил флэш <object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="2000" height="488" id="logo" style="position: absolute; top: 0; right: -48px;"> Проблема в том что выравнивание идет по правому краю материнский шаблон стоит на фикси и при добавлении фикс в флэша оно сунет вниз контент.? Можно ли как то сделать кроме того чтоб не переписывать css чтоб флэш бил по центре и фиксированный?
  6. Русский ели сдал в школе..))
  7. А прийдется с нуля зделать.)
  8. ДА))))Я так плюшку хотел вЫтянуть...
  9. На перо не нужно нажимать она само срабатывает после смерти. __
  10. Да ты прав ядро в лом туда смотреть
  11. reuse_type (проверяю) reuse_delay - только на вещи с подвязаным скилом
  12. Или максимум што мон зделать эт ограничение по времени хронения?
  13. Есть перо при смерти ресает тебя нужно сделать откатным??? <etcitem id="10649" name="Feather of Blessing"> <set name="class" value="OTHER"/> <set name="crystal_type" value="NONE"/> <set name="dropable" value="false"/> <set name="icon" value="icon.blessed_feather_i00"/> <set name="stackable" value="true"/> <set name="tradeable" value="false"/> <set name="freightable" value="true"/> <set name="type" value="OTHER"/> </etcitem>
  14. Вот силка для фотошопа Вот что поможет вытянуть запихнуть и собрать тык. И плюс тул сразу покажет какие требования к файлу.
  15. Причины нет.........Я разобрался скачал ниже на 2 версии всё сказочна работает.
  16. ГГ стоит там айпи вобше локалки написано..._Так чото заморочило.
  17. С этим файлом если не менять в нем ничего все ок работает. Мб у кого то есть старая версия L2Tool на 7 яву хотяби?
  18. Недавно а точнее 3 недели назад менял загрузочное лого на ХФ без проблем все получалось. Вот что сейчас...?? Нормально открывается Нормально и сохраняется со всеми требованиями Заменяем на наш сохраненный программа соглашается что всё подходит Сохраняем файл закидаем в клиент но вот тута эму не нравится Не могу понять походу сохраняю как то не так но если начать изменять сохранения так прога не признает. Помогите я походу туплю жостко где то.
  19. Использовал LameCrypt на L2.ini так теперь L2.exe не запускается???Как исправить?
×
×
  • Создать...