Рейтинг темы:
  • 0 Голос(ов) - 0 в среднем
  • 1
  • 2
  • 3
  • 4
  • 5
Скрипт переноса заточки
#1
Здравствуйте, взял я донат шоп
Думаю о нём уже многие знают:
1. Покупка вещей за дон манеты
2. Работа с персонажем
а. Получение дворянства
б. Перенос ЛС
в. Перенос заточки
г. Покраска ника
д. Смена ника
е. Заточки вещи
3. Работа с кланом
а. Повысить уровень клана
б. Получить клан очки
в. Получить скилы

реч сейчас пойдёт о переносе заточки. В общем в чём проблема, импорты настроил, скрипт работает, но не совсем так как мне нужно, т.к скрипт предназначен для интерлюда, он видит только обычный S шмот (к переносу почему то доступен только обычный S по крайней мере только на него есть кнопки), но не видит вещи дальше интерлюда (настроить хочу под хай файв). как не бился не могу разобратся как в него добавить дополнительный грейд (ИДшек отдельно я в нём не увидел)

сам код скрипта:
Код:
qn = "q8015_Enchex"

#id нпц
NPC = 40016

#id итема для заточки
ITEM = 4037
#стоимость заточки за каждый +
COST =50
#название итема
INAME = "Event Coin"
#список запрещенных итемов
FORBIDDEN = [12,132,6611,6612,6620,6617,6619,6618,6621,6614,6616]

print "Loaded: q8015_Enchex - OK"

class Quest (JQuest) :

def __init__(self,id,name,descr): JQuest.__init__(self,id,name,descr)

def onAdvEvent (self,event,npc,player):
   st = player.getQuestState(qn)
   if event == "spisok":
     htmltext = "<html><body><center><img src=\"L2UI_CH3.herotower_deco\" width=256 height=32><br><img src=\"L2UI.SquareBlank\" width=260 height=2><br1>"      
     htmltext += u"<table width=260><tr><td align=center><font color=LEVEL>\u041f\u0435\u0440\u0435\u043d\u043e\u0441 \u0437\u0430\u0442\u043e\u0447\u043a\u0438</font></td></tr></table>"
     htmltext += u"<button value=\"\u041e\u0440\u0443\u0436\u0438\u0435[S]\" action=\"bypass -h Quest q8015_Enchex step1_0\" width=100 height=15 back=\"sek.cbui94\" fore=\"sek.cbui92\"><br>"
     htmltext += u"<button value=\"\u0428\u043c\u043e\u0442\u043a\u0438[S]\" action=\"bypass -h Quest q8015_Enchex step1_1\" width=100 height=15 back=\"sek.cbui94\" fore=\"sek.cbui92\"><br>"
     htmltext += u"<button value=\"\u0411\u0438\u0436\u0443\u0442\u0435\u0440\u0438\u044f[S]\" action=\"bypass -h Quest q8015_Enchex jewerly\" width=100 height=15 back=\"sek.cbui94\" fore=\"sek.cbui92\"><br>"
     htmltext += "<center><img src=\"L2UI_CH3.herotower_deco\" width=256 height=32></center></body></html>"
   elif event.startswith("step1_"):
     itemType = int(event.replace("step1_", ""))
     htmltext = u"<html><body>\u041f\u0435\u0440\u0435\u043d\u043e\u0441 \u0437\u0430\u0442\u043e\u0447\u043a\u0438:<br>\u041e\u0442\u043a\u0443\u0434\u0430 \u043f\u0435\u0440\u0435\u043d\u043e\u0441\u0438\u043c?<br><br><table width=300>"
     if itemType == 0:
       TYPES = ["Sword","Blunt","Dagger","Bow","Etc","Pole","Fist","Dual Sword","Dual Fist","Big Sword","Big Blunt"]
     elif itemType == 1:
       TYPES = ["Light","Heavy","Magic"]
     else:
       htmltext = u"<html><body>\u041f\u0435\u0440\u0435\u043d\u043e\u0441 \u0437\u0430\u0442\u043e\u0447\u043a\u0438:<br>\u041e\u0448\u0438\u0431\u043a\u0430.</body></html>"
       return htmltext
     st.set("type",str(itemType))
     for Item in st.getPlayer().getInventory().getItems():
       itemTemplate = Item.getItem()
       idtest = Item.getItemId()
       itype = str(Item.getItemType())
       grade = itemTemplate.getCrystalType()
       if idtest not in FORBIDDEN and itemTemplate.getDuration() == -1 and grade == 5 and itype in TYPES and Item.getEnchantLevel() > 0:
         con=L2DatabaseFactory.getInstance().getConnection()
         listitems=con.prepareStatement("SELECT itemIcon FROM z_market_icons WHERE itemId=?")
         listitems.setInt(1, idtest)
         rs=listitems.executeQuery()
         while (rs.next()) :
           icon=rs.getString("itemIcon")
           try :
             grades = {1: "D", 2: "C", 3: "B", 4: "A", 5: "S"}
             pgrade = grades.get(grade, str(""))
             if Item.getEnchantLevel() == 0:
               enchant = str("")
             else:
               enchant = " +"+str(Item.getEnchantLevel())+""
             htmltext += "<tr><td><img src=\"Icon."+str(icon)+"\" width=32 height=32></td><td><a action=\"bypass -h Quest q8015_Enchex step1next_" + str(Item.getObjectId()) +"\">" + itemTemplate.getName() + "["+str(pgrade)+"] " + enchant + "</a></td></tr>"
           except :
             try : listitems.close()
             except : pass
         try :
           con.close()
         except :
           pass
     htmltext += u"</table><br><a action=\"bypass -h Quest q8015_Enchex spusok\">\u0412\u0435\u0440\u043d\u0443\u0442\u044c\u0441\u044f.</a></body></html>"
   elif event == "jewerly":
     htmltext = u"<html><body>\u041f\u0435\u0440\u0435\u043d\u043e\u0441 \u0437\u0430\u0442\u043e\u0447\u043a\u0438:<br>\u041e\u0442\u043a\u0443\u0434\u0430 \u043f\u0435\u0440\u0435\u043d\u043e\u0441\u0438\u043c?<br><br><table width=300>"
     st.set("type","3")
     for Item in st.getPlayer().getInventory().getItems():
       itemTemplate = Item.getItem()
       idtest = Item.getItemId()
       itemType = Item.getItem().getType2()
       grade = itemTemplate.getCrystalType()
       if idtest not in FORBIDDEN and itemTemplate.getDuration() == -1 and grade == 5 and itemType == L2Item.TYPE2_ACCESSORY and Item.getEnchantLevel() > 0:
         con=L2DatabaseFactory.getInstance().getConnection()
         listitems=con.prepareStatement("SELECT itemIcon FROM z_market_icons WHERE itemId=?")
         listitems.setInt(1, idtest)
         rs=listitems.executeQuery()
         while (rs.next()) :
           icon=rs.getString("itemIcon")
           try :
             grades = {1: "D", 2: "C", 3: "B", 4: "A", 5: "S"}
             pgrade = grades.get(grade, str(""))
             if Item.getEnchantLevel() == 0:
               enchant = str("")
             else:
               enchant = " +"+str(Item.getEnchantLevel())+""
             htmltext += "<tr><td><img src=\"Icon."+str(icon)+"\" width=32 height=32></td><td><a action=\"bypass -h Quest q8015_Enchex step1next_" + str(Item.getObjectId()) +"\">" + itemTemplate.getName() + "["+str(pgrade)+"] " + enchant + "</a></td></tr>"
           except :
             try : listitems.close()
             except : pass  
         try :
           con.close()
         except :
           pass
     htmltext += u"</table><br><a action=\"bypass -h Quest q8015_Enchex spisok\">\u0412\u0435\u0440\u043d\u0443\u0442\u044c\u0441\u044f.</a></body></html>"
   elif event.startswith("step1next_"):
     itemObjId = int(event.replace("step1next_", ""))
     Item = st.getPlayer().getInventory().getItemByObjectId(itemObjId)
     itemTemplate = Item.getItem()
     if Item and itemTemplate.getDuration() == -1 and Item.getEnchantLevel() > 0:
       grade = itemTemplate.getCrystalType()
       idtest = Item.getItemId()
       con=L2DatabaseFactory.getInstance().getConnection()
       listitems=con.prepareStatement("SELECT itemIcon FROM z_market_icons WHERE itemId=?")
       listitems.setInt(1, idtest)
       rs=listitems.executeQuery()
       while (rs.next()) :
         icon=rs.getString("itemIcon")
         try :
           st.set("enchant",str(Item.getEnchantLevel()))
           st.set("oneitem",str(itemObjId))
           grades = {1: "D", 2: "C", 3: "B", 4: "A", 5: "S"}
           pgrade = grades.get(grade, str(""))
           enchant = (Item.getEnchantLevel() > 0 and " +"+str(Item.getEnchantLevel())+"") or str("")
           htmltext =  u"<html><body>\u041f\u0435\u0440\u0435\u043d\u043e\u0441 \u0437\u0430\u0442\u043e\u0447\u043a\u0438:<br>\u041e\u0442\u043a\u0443\u0434\u0430 \u043f\u0435\u0440\u0435\u043d\u043e\u0441\u0438\u043c?<br>"
           htmltext += "<table width=300><tr><td><img src=\"Icon."+str(icon)+"\" width=32 height=32></td><td><font color=LEVEL>" + itemTemplate.getName() + " " + enchant + "</font><img src=\"symbol.grade_"+str(pgrade)+"\" width=16 height=16><br></td></tr></table><br><br>"
           payment = int(Item.getEnchantLevel()*COST)
           if st.getQuestItemsCount(ITEM) < payment:
             htmltext += u"\u0421\u0442\u043e\u0438\u043c\u043e\u0441\u0442\u044c \u043f\u0435\u0440\u0435\u043d\u043e\u0441\u0430: <font color=ff2400>"+str(payment)+"</font> "+INAME+"<br>"
           else:
             htmltext += u"\u0421\u0442\u043e\u0438\u043c\u043e\u0441\u0442\u044c \u043f\u0435\u0440\u0435\u043d\u043e\u0441\u0430: <font color=adff2f>"+str(payment)+"</font> "+INAME+"<br>"
             htmltext += u"<button value=\"\u041f\u0440\u043e\u0434\u043e\u043b\u0436\u0438\u0442\u044c\" action=\"bypass -h Quest q8015_Enchex step2\" width=60 height=15 back=\"sek.cbui94\" fore=\"sek.cbui92\"><br>"
           htmltext += u"<br><a action=\"bypass -h Quest q8015_Enchex spisok\">\u0412\u0435\u0440\u043d\u0443\u0442\u044c\u0441\u044f.</a></body></html>"
         except :
           try : listitems.close()
           except : pass
       try :
         con.close()
       except :
         pass
     else :
       htmltext = u"<html><body>\u041f\u0435\u0440\u0435\u043d\u043e\u0441 \u0437\u0430\u0442\u043e\u0447\u043a\u0438:<br>\u041e\u0448\u0438\u0431\u043a\u0430!<br><a action=\"bypass -h Quest q8015_Enchex spisok\">\u0412\u0435\u0440\u043d\u0443\u0442\u044c\u0441\u044f.</a></body></html>"
   elif event == "step2":
     htmltext = u"<html><body>\u041f\u0435\u0440\u0435\u043d\u043e\u0441 \u0437\u0430\u0442\u043e\u0447\u043a\u0438:<br>\u041a\u0443\u0434\u0430 \u043f\u0435\u0440\u0435\u043d\u043e\u0441\u0438\u043c?<br><br><table width=300>"
     itemType = st.getInt("type")
     if itemType == 0:
       TYPES = ["Sword","Blunt","Dagger","Bow","Etc","Pole","Fist","Dual Sword","Dual Fist","Big Sword","Big Blunt"]
     elif itemType == 1:
       TYPES = ["Light","Heavy","Magic"]
     weapon1 = st.getInt("oneitem")
     for Item in st.getPlayer().getInventory().getItems():
       itemTemplate = Item.getItem()
       idtest = Item.getItemId()
       itype = str(Item.getItemType())
       grade = itemTemplate.getCrystalType()
       if itemType == 0 or itemType == 1:
         if idtest not in FORBIDDEN and itemTemplate.getDuration() == -1 and grade == 5 and itype in TYPES and Item.getObjectId() != weapon1:
           con=L2DatabaseFactory.getInstance().getConnection()
           listitems=con.prepareStatement("SELECT itemIcon FROM z_market_icons WHERE itemId=?")
           listitems.setInt(1, idtest)
           rs=listitems.executeQuery()
           while (rs.next()) :
             icon=rs.getString("itemIcon")
             try :
               grades = {1: "D", 2: "C", 3: "B", 4: "A", 5: "S"}
               pgrade = grades.get(grade, str(""))
               if Item.getEnchantLevel() == 0:
                 enchant = str("")
               else:
                 enchant = " +"+str(Item.getEnchantLevel())+""
               htmltext += "<tr><td><img src=\"Icon."+str(icon)+"\" width=32 height=32></td><td><a action=\"bypass -h Quest q8015_Enchex step2next_" + str(Item.getObjectId()) +"\">" + itemTemplate.getName() + ""+str(pgrade)+" " + enchant + "</a></td></tr>"
             except :
               try : listitems.close()
               except : pass
           try :
             con.close()
           except :
             pass
       elif itemType == 3:
         itemType2 = Item.getItem().getType2()
         if idtest not in FORBIDDEN and itemTemplate.getDuration() == -1 and grade == 5 and itemType2 == L2Item.TYPE2_ACCESSORY and Item.getObjectId() != weapon1:
           con=L2DatabaseFactory.getInstance().getConnection()
           listitems=con.prepareStatement("SELECT itemIcon FROM z_market_icons WHERE itemId=?")
           listitems.setInt(1, idtest)
           rs=listitems.executeQuery()
           while (rs.next()) :
             icon=rs.getString("itemIcon")
             try :
               grades = {1: "D", 2: "C", 3: "B", 4: "A", 5: "S"}
               pgrade = grades.get(grade, str(""))
               if Item.getEnchantLevel() == 0:
                 enchant = str("")
               else:
                 enchant = " +"+str(Item.getEnchantLevel())+""
               htmltext += "<tr><td><img src=\"Icon."+str(icon)+"\" width=32 height=32></td><td><a action=\"bypass -h Quest q8015_Enchex step2next_" + str(Item.getObjectId()) +"\">" + itemTemplate.getName() + ""+str(pgrade)+" " + enchant + "</a></td></tr>"
             except :
               try : listitems.close()
               except : pass
           try :
             con.close()
           except :
             pass
     htmltext += u"</table><br><a action=\"bypass -h Quest q8015_Enchex spisok\">\u0412\u0435\u0440\u043d\u0443\u0442\u044c\u0441\u044f.</a></body></html>"
   elif event.startswith("step2next_"):
     itemObjId = int(event.replace("step2next_", ""))
     obj = str(itemObjId)
     Item = st.getPlayer().getInventory().getItemByObjectId(itemObjId)
     itemTemplate = Item.getItem()
     if Item and itemTemplate.getDuration() == -1:
       grade = itemTemplate.getCrystalType()
       idtest = Item.getItemId()
       con=L2DatabaseFactory.getInstance().getConnection()
       listitems=con.prepareStatement("SELECT itemIcon FROM z_market_icons WHERE itemId=?")
       listitems.setInt(1, idtest)
       rs=listitems.executeQuery()
       while (rs.next()) :
         icon=rs.getString("itemIcon")
         try :
           st.set("twoitem",obj)  
           grades = {1: "D", 2: "C", 3: "B", 4: "A", 5: "S"}
           pgrade = grades.get(grade, str(""))
           enchant = (Item.getEnchantLevel() > 0 and " +"+str(Item.getEnchantLevel())+"") or str("")
           htmltext =  u"<html><body>\u041f\u0435\u0440\u0435\u043d\u043e\u0441 \u0437\u0430\u0442\u043e\u0447\u043a\u0438:<br>\u0412 \u044d\u0442\u043e \u043e\u0440\u0443\u0436\u0438\u0435 \u043f\u0435\u0440\u0435\u043d\u043e\u0441\u0438\u043c?<br>"
           htmltext += "<table width=300><tr><td><img src=\"Icon."+str(icon)+"\" width=32 height=32></td><td><font color=LEVEL>" + itemTemplate.getName() + " " + enchant + "</font><img src=\"symbol.grade_"+str(pgrade)+"\" width=16 height=16><br></td></tr></table><br><br>"
           htmltext += u"<button value=\"\u041f\u0440\u043e\u0434\u043e\u043b\u0436\u0438\u0442\u044c\" action=\"bypass -h Quest q8015_Enchex step3\" width=60 height=15 back=\"sek.cbui94\" fore=\"sek.cbui92\"><br>"
           htmltext += u"<br><a action=\"bypass -h Quest q8015_Enchex spisok\">\u0412\u0435\u0440\u043d\u0443\u0442\u044c\u0441\u044f.</a></body></html>"
         except :
           try : listitems.close()
           except : pass
       try :
         con.close()
       except :
         pass
     else :
       htmltext = u"<html><body>\u041f\u0435\u0440\u0435\u043d\u043e\u0441 \u0437\u0430\u0442\u043e\u0447\u043a\u0438:<br>\u041e\u0448\u0438\u0431\u043a\u0430!<br><a action=\"bypass -h Quest q8015_Enchex spisok\">\u0412\u0435\u0440\u043d\u0443\u0442\u044c\u0441\u044f.</a></body></html>"
   elif event.startswith("step3"):
     weapon1 = st.getInt("oneitem")
     weapon2 = st.getInt("twoitem")
     htmltext =  u"<html><body>\u041f\u0435\u0440\u0435\u043d\u043e\u0441 \u0437\u0430\u0442\u043e\u0447\u043a\u0438:<br>\u041f\u043e\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0430\u0435\u0442\u0435?<br>"
     htmltext += u"\u0421 \u044d\u0442\u043e\u0433\u043e \u043e\u0440\u0443\u0436\u0438\u044f:"
     Item = st.getPlayer().getInventory().getItemByObjectId(weapon1)
     itemTemplate = Item.getItem()
     if Item:
       grade = itemTemplate.getCrystalType()
       idtest = Item.getItemId()
       con=L2DatabaseFactory.getInstance().getConnection()
       listitems=con.prepareStatement("SELECT itemIcon FROM z_market_icons WHERE itemId=?")
       listitems.setInt(1, idtest)
       rs=listitems.executeQuery()
       while (rs.next()) :
         icon=rs.getString("itemIcon")
         try :
           grades = {1: "D", 2: "C", 3: "B", 4: "A", 5: "S"}
           pgrade = grades.get(grade, str(""))
           enchant = (Item.getEnchantLevel() > 0 and " +"+str(Item.getEnchantLevel())+"") or str("")
           htmltext += "<table width=300><tr><td><img src=\"Icon."+str(icon)+"\" width=32 height=32></td><td><font color=LEVEL>" + itemTemplate.getName() + " " + enchant + "</font><img src=\"symbol.grade_"+str(pgrade)+"\" width=16 height=16><br></td></tr></table><br><br>"
           payment = int(Item.getEnchantLevel()*COST)
           if st.getQuestItemsCount(ITEM) < payment:
             htmltext += u"\u0421\u0442\u043e\u0438\u043c\u043e\u0441\u0442\u044c \u043f\u0435\u0440\u0435\u043d\u043e\u0441\u0430: <font color=ff2400>"+str(payment)+"</font> "+INAME+"<br>"
           else:
             htmltext += u"\u0421\u0442\u043e\u0438\u043c\u043e\u0441\u0442\u044c \u043f\u0435\u0440\u0435\u043d\u043e\u0441\u0430: <font color=adff2f>"+str(payment)+"</font> "+INAME+"<br>"
         except :
           try : listitems.close()
           except : pass
       try :
         con.close()
       except :
         pass
     htmltext += "Ha eTo:<br>"
     Item = st.getPlayer().getInventory().getItemByObjectId(weapon2)
     itemTemplate = Item.getItem()
     if Item:
       grade = itemTemplate.getCrystalType()
       idtest = Item.getItemId()
       cons=L2DatabaseFactory.getInstance().getConnection()
       listitemss=cons.prepareStatement("SELECT itemIcon FROM z_market_icons WHERE itemId=?")
       listitemss.setInt(1, idtest)
       rs=listitemss.executeQuery()
       while (rs.next()) :
         icon=rs.getString("itemIcon")
         try :
           grades = {1: "D", 2: "C", 3: "B", 4: "A", 5: "S"}
           pgrade = grades.get(grade, str(""))
           enchant = (Item.getEnchantLevel() > 0 and " +"+str(Item.getEnchantLevel())+"") or str("")
           htmltext += "<table width=300><tr><td><img src=\"Icon."+str(icon)+"\" width=32 height=32></td><td><font color=LEVEL>" + itemTemplate.getName() + " " + enchant + "</font><img src=\"symbol.grade_"+str(pgrade)+"\" width=16 height=16><br></td></tr></table><br><br>"
         except :
           try : listitemss.close()
           except : pass
       try :
         cons.close()
       except :
         pass
       htmltext += u"<button value=\"\u041f\u0440\u043e\u0434\u043e\u043b\u0436\u0438\u0442\u044c\" action=\"bypass -h Quest q8015_Enchex step4\" width=60 height=15 back=\"sek.cbui94\" fore=\"sek.cbui92\"><br>"
     else :
       htmltext = u"<html><body>\u041f\u0435\u0440\u0435\u043d\u043e\u0441 \u0437\u0430\u0442\u043e\u0447\u043a\u0438:<br>\u041e\u0448\u0438\u0431\u043a\u0430!<br><a action=\"bypass -h Quest q8015_Enchex spisok\">\u0412\u0435\u0440\u043d\u0443\u0442\u044c\u0441\u044f.</a></body></html>"
   elif event.startswith("step4"):
     htmltext =  u"<html><body>\u041f\u0435\u0440\u0435\u043d\u043e\u0441 \u0437\u0430\u0442\u043e\u0447\u043a\u0438:<br>\u041f\u0440\u043e\u0434\u043e\u043b\u0436\u0438\u0442\u0435...<br><br>"
     ench = st.getInt("enchant")
     payment = int(ench*COST)
     if st.getQuestItemsCount(ITEM) < payment:
       htmltext += u"\u0421\u0442\u043e\u0438\u043c\u043e\u0441\u0442\u044c \u043f\u0435\u0440\u0435\u043d\u043e\u0441\u0430: <font color=ff2400>"+str(payment)+"</font> "+INAME+"<br>"
       return htmltext
    #<
     weapon1 = st.getInt("oneitem")
     weapon2 = st.getInt("twoitem")
     item1 = st.getPlayer().getInventory().getItemByObjectId(weapon1)
     item2 = st.getPlayer().getInventory().getItemByObjectId(weapon2)
     if item1 == None or item2 == None:
       st.set("enchant","0")  
       htmltext += u"<font color=ff2400>\u041e\u0448\u0438\u0431\u043a\u0430 \u043f\u0435\u0440\u0435\u043d\u043e\u0441\u0430.</font><br>"
       return htmltext
     itemType = st.getInt("type")
     itype1 = str(item1.getItemType())
     itype2 = str(item2.getItemType())
     grade1 = item1.getItem().getCrystalType()
     grade2 = item2.getItem().getCrystalType()
    #<
     if item1.getEnchantLevel() != ench:
       st.set("enchant","0")  
       htmltext += u"<font color=ff2400>\u041e\u0448\u0438\u0431\u043a\u0430 \u043f\u0435\u0440\u0435\u043d\u043e\u0441\u0430.</font><br>"
       return htmltext
    #<
     if grade1 != 5 or grade2 != 5:
       st.set("enchant","0")  
       htmltext += u"<font color=ff2400>\u041e\u0448\u0438\u0431\u043a\u0430 \u043f\u0435\u0440\u0435\u043d\u043e\u0441\u0430.</font><br>"
       return htmltext
    #<  
     if itemType == 0:
       TYPES = ["Sword","Blunt","Dagger","Bow","Etc","Pole","Fist","Dual Sword","Dual Fist","Big Sword","Big Blunt"]
       if itype1 not in TYPES or itype2 not in TYPES:
         st.set("enchant","0")  
         htmltext += u"<font color=ff2400>\u041e\u0448\u0438\u0431\u043a\u0430 \u043f\u0435\u0440\u0435\u043d\u043e\u0441\u0430.</font><br>"
         return htmltext
     elif itemType == 1:
       TYPES = ["Light","Heavy","Magic"]
       if itype1 not in TYPES or itype2 not in TYPES:
         st.set("enchant","0")  
         htmltext += u"<font color=ff2400>\u041e\u0448\u0438\u0431\u043a\u0430 \u043f\u0435\u0440\u0435\u043d\u043e\u0441\u0430.</font><br>"
         return htmltext
     elif itemType == 3:
       jew1 = item1.getItem().getType2()
       jew2 = item2.getItem().getType2()
       if jew1 != L2Item.TYPE2_ACCESSORY or jew2 != L2Item.TYPE2_ACCESSORY:
         st.set("enchant","0")  
         htmltext += u"<font color=ff2400>\u041e\u0448\u0438\u0431\u043a\u0430 \u043f\u0435\u0440\u0435\u043d\u043e\u0441\u0430.</font><br>"
         return htmltext
     else:
       htmltext += u"<font color=ff2400>\u041e\u0448\u0438\u0431\u043a\u0430 \u043f\u0435\u0440\u0435\u043d\u043e\u0441\u0430.</font><br>"
       return htmltext
    #<
     st.takeItems(ITEM,payment)
    #<
     slott = item1.isEquipped()
     if slott > 0:
       testt = player.getInventory().getPaperdollItem(slott)
       player.getInventory().unEquipItemInSlotAndRecord(slott)
       item1.setEnchantLevel(0)
       player.getInventory().equipItemAndRecord(testt)
       iut = InventoryUpdate()
       iut.addModifiedItem(testt)
       player.sendPacket(iut)
       player.broadcastPacket(CharInfo(player))
       player.sendPacket(UserInfo(player))
     else:
       item1.setEnchantLevel(0)
       player.sendPacket(ItemList(player, False))
    #<
     slot = item2.isEquipped()
     if slot > 0:
       test = player.getInventory().getPaperdollItem(slot)
       player.getInventory().unEquipItemInSlotAndRecord(slot)
       item2.setEnchantLevel(ench)
       player.getInventory().equipItemAndRecord(test)
       iu = InventoryUpdate()
       iu.addModifiedItem(test)
       player.sendPacket(iu)
       player.broadcastPacket(CharInfo(player))
       player.sendPacket(UserInfo(player))
     else:
       item2.setEnchantLevel(ench)
       player.sendPacket(ItemList(player, False))
     htmltext += u"<font color=bef574>[ +"+str(ench)+"]</font> "u"\u041f\u0435\u0440\u0435\u043d\u0435\u0441\u0435\u043d\u043e.<br>"
   else:
     htmltext = u"<html><body>\u041f\u0435\u0440\u0435\u043d\u043e\u0441 \u0437\u0430\u0442\u043e\u0447\u043a\u0438:<br>Oops!</body></html>"
   return htmltext

def onTalk (self,npc,player):
   st = player.getQuestState(qn)
   npcId = npc.getNpcId()
   if npcId == NPC:
     htmltext = "privetstvie.htm"
   return htmltext

QUEST       = Quest(8015,qn,"custom")
QUEST.addStartNpc(NPC)
QUEST.addTalkId(NPC)

надеюсь оформил тему правильно, т.к это моя первая тема с выставлением скрипта.
Буду очень благодарен если вы мне с этим поможете!
Ответ
#2
atomick Написал:Здравствуйте, взял я донат шоп
Думаю о нём уже многие знают:
1. Покупка вещей за дон манеты
2. Работа с персонажем
а. Получение дворянства
б. Перенос ЛС
в. Перенос заточки
г. Покраска ника
д. Смена ника
е. Заточки вещи
3. Работа с кланом
а. Повысить уровень клана
б. Получить клан очки
в. Получить скилы

реч сейчас пойдёт о переносе заточки. В общем в чём проблема, импорты настроил, скрипт работает, но не совсем так как мне нужно, т.к скрипт предназначен для интерлюда, он видит только обычный S шмот (к переносу почему то доступен только обычный S по крайней мере только на него есть кнопки), но не видит вещи дальше интерлюда (настроить хочу под хай файв). как не бился не могу разобратся как в него добавить дополнительный грейд (ИДшек отдельно я в нём не увидел)

сам код скрипта:
Код:
qn = "q8015_Enchex"

#id нпц
NPC = 40016

#id итема для заточки
ITEM = 4037
#стоимость заточки за каждый +
COST =50
#название итема
INAME = "Event Coin"
#список запрещенных итемов
FORBIDDEN = [12,132,6611,6612,6620,6617,6619,6618,6621,6614,6616]

print "Loaded: q8015_Enchex - OK"

class Quest (JQuest) :

def __init__(self,id,name,descr): JQuest.__init__(self,id,name,descr)

def onAdvEvent (self,event,npc,player):
   st = player.getQuestState(qn)
   if event == "spisok":
     htmltext = "<html><body><center><img src=\"L2UI_CH3.herotower_deco\" width=256 height=32><br><img src=\"L2UI.SquareBlank\" width=260 height=2><br1>"      
     htmltext += u"<table width=260><tr><td align=center><font color=LEVEL>\u041f\u0435\u0440\u0435\u043d\u043e\u0441 \u0437\u0430\u0442\u043e\u0447\u043a\u0438</font></td></tr></table>"
     htmltext += u"<button value=\"\u041e\u0440\u0443\u0436\u0438\u0435[S]\" action=\"bypass -h Quest q8015_Enchex step1_0\" width=100 height=15 back=\"sek.cbui94\" fore=\"sek.cbui92\"><br>"
     htmltext += u"<button value=\"\u0428\u043c\u043e\u0442\u043a\u0438[S]\" action=\"bypass -h Quest q8015_Enchex step1_1\" width=100 height=15 back=\"sek.cbui94\" fore=\"sek.cbui92\"><br>"
     htmltext += u"<button value=\"\u0411\u0438\u0436\u0443\u0442\u0435\u0440\u0438\u044f[S]\" action=\"bypass -h Quest q8015_Enchex jewerly\" width=100 height=15 back=\"sek.cbui94\" fore=\"sek.cbui92\"><br>"
     htmltext += "<center><img src=\"L2UI_CH3.herotower_deco\" width=256 height=32></center></body></html>"
   elif event.startswith("step1_"):
     itemType = int(event.replace("step1_", ""))
     htmltext = u"<html><body>\u041f\u0435\u0440\u0435\u043d\u043e\u0441 \u0437\u0430\u0442\u043e\u0447\u043a\u0438:<br>\u041e\u0442\u043a\u0443\u0434\u0430 \u043f\u0435\u0440\u0435\u043d\u043e\u0441\u0438\u043c?<br><br><table width=300>"
     if itemType == 0:
       TYPES = ["Sword","Blunt","Dagger","Bow","Etc","Pole","Fist","Dual Sword","Dual Fist","Big Sword","Big Blunt"]
     elif itemType == 1:
       TYPES = ["Light","Heavy","Magic"]
     else:
       htmltext = u"<html><body>\u041f\u0435\u0440\u0435\u043d\u043e\u0441 \u0437\u0430\u0442\u043e\u0447\u043a\u0438:<br>\u041e\u0448\u0438\u0431\u043a\u0430.</body></html>"
       return htmltext
     st.set("type",str(itemType))
     for Item in st.getPlayer().getInventory().getItems():
       itemTemplate = Item.getItem()
       idtest = Item.getItemId()
       itype = str(Item.getItemType())
       grade = itemTemplate.getCrystalType()
       if idtest not in FORBIDDEN and itemTemplate.getDuration() == -1 and grade == 5 and itype in TYPES and Item.getEnchantLevel() > 0:
         con=L2DatabaseFactory.getInstance().getConnection()
         listitems=con.prepareStatement("SELECT itemIcon FROM z_market_icons WHERE itemId=?")
         listitems.setInt(1, idtest)
         rs=listitems.executeQuery()
         while (rs.next()) :
           icon=rs.getString("itemIcon")
           try :
             grades = {1: "D", 2: "C", 3: "B", 4: "A", 5: "S"}
             pgrade = grades.get(grade, str(""))
             if Item.getEnchantLevel() == 0:
               enchant = str("")
             else:
               enchant = " +"+str(Item.getEnchantLevel())+""
             htmltext += "<tr><td><img src=\"Icon."+str(icon)+"\" width=32 height=32></td><td><a action=\"bypass -h Quest q8015_Enchex step1next_" + str(Item.getObjectId()) +"\">" + itemTemplate.getName() + "["+str(pgrade)+"] " + enchant + "</a></td></tr>"
           except :
             try : listitems.close()
             except : pass
         try :
           con.close()
         except :
           pass
     htmltext += u"</table><br><a action=\"bypass -h Quest q8015_Enchex spusok\">\u0412\u0435\u0440\u043d\u0443\u0442\u044c\u0441\u044f.</a></body></html>"
   elif event == "jewerly":
     htmltext = u"<html><body>\u041f\u0435\u0440\u0435\u043d\u043e\u0441 \u0437\u0430\u0442\u043e\u0447\u043a\u0438:<br>\u041e\u0442\u043a\u0443\u0434\u0430 \u043f\u0435\u0440\u0435\u043d\u043e\u0441\u0438\u043c?<br><br><table width=300>"
     st.set("type","3")
     for Item in st.getPlayer().getInventory().getItems():
       itemTemplate = Item.getItem()
       idtest = Item.getItemId()
       itemType = Item.getItem().getType2()
       grade = itemTemplate.getCrystalType()
       if idtest not in FORBIDDEN and itemTemplate.getDuration() == -1 and grade == 5 and itemType == L2Item.TYPE2_ACCESSORY and Item.getEnchantLevel() > 0:
         con=L2DatabaseFactory.getInstance().getConnection()
         listitems=con.prepareStatement("SELECT itemIcon FROM z_market_icons WHERE itemId=?")
         listitems.setInt(1, idtest)
         rs=listitems.executeQuery()
         while (rs.next()) :
           icon=rs.getString("itemIcon")
           try :
             grades = {1: "D", 2: "C", 3: "B", 4: "A", 5: "S"}
             pgrade = grades.get(grade, str(""))
             if Item.getEnchantLevel() == 0:
               enchant = str("")
             else:
               enchant = " +"+str(Item.getEnchantLevel())+""
             htmltext += "<tr><td><img src=\"Icon."+str(icon)+"\" width=32 height=32></td><td><a action=\"bypass -h Quest q8015_Enchex step1next_" + str(Item.getObjectId()) +"\">" + itemTemplate.getName() + "["+str(pgrade)+"] " + enchant + "</a></td></tr>"
           except :
             try : listitems.close()
             except : pass  
         try :
           con.close()
         except :
           pass
     htmltext += u"</table><br><a action=\"bypass -h Quest q8015_Enchex spisok\">\u0412\u0435\u0440\u043d\u0443\u0442\u044c\u0441\u044f.</a></body></html>"
   elif event.startswith("step1next_"):
     itemObjId = int(event.replace("step1next_", ""))
     Item = st.getPlayer().getInventory().getItemByObjectId(itemObjId)
     itemTemplate = Item.getItem()
     if Item and itemTemplate.getDuration() == -1 and Item.getEnchantLevel() > 0:
       grade = itemTemplate.getCrystalType()
       idtest = Item.getItemId()
       con=L2DatabaseFactory.getInstance().getConnection()
       listitems=con.prepareStatement("SELECT itemIcon FROM z_market_icons WHERE itemId=?")
       listitems.setInt(1, idtest)
       rs=listitems.executeQuery()
       while (rs.next()) :
         icon=rs.getString("itemIcon")
         try :
           st.set("enchant",str(Item.getEnchantLevel()))
           st.set("oneitem",str(itemObjId))
           grades = {1: "D", 2: "C", 3: "B", 4: "A", 5: "S"}
           pgrade = grades.get(grade, str(""))
           enchant = (Item.getEnchantLevel() > 0 and " +"+str(Item.getEnchantLevel())+"") or str("")
           htmltext =  u"<html><body>\u041f\u0435\u0440\u0435\u043d\u043e\u0441 \u0437\u0430\u0442\u043e\u0447\u043a\u0438:<br>\u041e\u0442\u043a\u0443\u0434\u0430 \u043f\u0435\u0440\u0435\u043d\u043e\u0441\u0438\u043c?<br>"
           htmltext += "<table width=300><tr><td><img src=\"Icon."+str(icon)+"\" width=32 height=32></td><td><font color=LEVEL>" + itemTemplate.getName() + " " + enchant + "</font><img src=\"symbol.grade_"+str(pgrade)+"\" width=16 height=16><br></td></tr></table><br><br>"
           payment = int(Item.getEnchantLevel()*COST)
           if st.getQuestItemsCount(ITEM) < payment:
             htmltext += u"\u0421\u0442\u043e\u0438\u043c\u043e\u0441\u0442\u044c \u043f\u0435\u0440\u0435\u043d\u043e\u0441\u0430: <font color=ff2400>"+str(payment)+"</font> "+INAME+"<br>"
           else:
             htmltext += u"\u0421\u0442\u043e\u0438\u043c\u043e\u0441\u0442\u044c \u043f\u0435\u0440\u0435\u043d\u043e\u0441\u0430: <font color=adff2f>"+str(payment)+"</font> "+INAME+"<br>"
             htmltext += u"<button value=\"\u041f\u0440\u043e\u0434\u043e\u043b\u0436\u0438\u0442\u044c\" action=\"bypass -h Quest q8015_Enchex step2\" width=60 height=15 back=\"sek.cbui94\" fore=\"sek.cbui92\"><br>"
           htmltext += u"<br><a action=\"bypass -h Quest q8015_Enchex spisok\">\u0412\u0435\u0440\u043d\u0443\u0442\u044c\u0441\u044f.</a></body></html>"
         except :
           try : listitems.close()
           except : pass
       try :
         con.close()
       except :
         pass
     else :
       htmltext = u"<html><body>\u041f\u0435\u0440\u0435\u043d\u043e\u0441 \u0437\u0430\u0442\u043e\u0447\u043a\u0438:<br>\u041e\u0448\u0438\u0431\u043a\u0430!<br><a action=\"bypass -h Quest q8015_Enchex spisok\">\u0412\u0435\u0440\u043d\u0443\u0442\u044c\u0441\u044f.</a></body></html>"
   elif event == "step2":
     htmltext = u"<html><body>\u041f\u0435\u0440\u0435\u043d\u043e\u0441 \u0437\u0430\u0442\u043e\u0447\u043a\u0438:<br>\u041a\u0443\u0434\u0430 \u043f\u0435\u0440\u0435\u043d\u043e\u0441\u0438\u043c?<br><br><table width=300>"
     itemType = st.getInt("type")
     if itemType == 0:
       TYPES = ["Sword","Blunt","Dagger","Bow","Etc","Pole","Fist","Dual Sword","Dual Fist","Big Sword","Big Blunt"]
     elif itemType == 1:
       TYPES = ["Light","Heavy","Magic"]
     weapon1 = st.getInt("oneitem")
     for Item in st.getPlayer().getInventory().getItems():
       itemTemplate = Item.getItem()
       idtest = Item.getItemId()
       itype = str(Item.getItemType())
       grade = itemTemplate.getCrystalType()
       if itemType == 0 or itemType == 1:
         if idtest not in FORBIDDEN and itemTemplate.getDuration() == -1 and grade == 5 and itype in TYPES and Item.getObjectId() != weapon1:
           con=L2DatabaseFactory.getInstance().getConnection()
           listitems=con.prepareStatement("SELECT itemIcon FROM z_market_icons WHERE itemId=?")
           listitems.setInt(1, idtest)
           rs=listitems.executeQuery()
           while (rs.next()) :
             icon=rs.getString("itemIcon")
             try :
               grades = {1: "D", 2: "C", 3: "B", 4: "A", 5: "S"}
               pgrade = grades.get(grade, str(""))
               if Item.getEnchantLevel() == 0:
                 enchant = str("")
               else:
                 enchant = " +"+str(Item.getEnchantLevel())+""
               htmltext += "<tr><td><img src=\"Icon."+str(icon)+"\" width=32 height=32></td><td><a action=\"bypass -h Quest q8015_Enchex step2next_" + str(Item.getObjectId()) +"\">" + itemTemplate.getName() + ""+str(pgrade)+" " + enchant + "</a></td></tr>"
             except :
               try : listitems.close()
               except : pass
           try :
             con.close()
           except :
             pass
       elif itemType == 3:
         itemType2 = Item.getItem().getType2()
         if idtest not in FORBIDDEN and itemTemplate.getDuration() == -1 and grade == 5 and itemType2 == L2Item.TYPE2_ACCESSORY and Item.getObjectId() != weapon1:
           con=L2DatabaseFactory.getInstance().getConnection()
           listitems=con.prepareStatement("SELECT itemIcon FROM z_market_icons WHERE itemId=?")
           listitems.setInt(1, idtest)
           rs=listitems.executeQuery()
           while (rs.next()) :
             icon=rs.getString("itemIcon")
             try :
               grades = {1: "D", 2: "C", 3: "B", 4: "A", 5: "S"}
               pgrade = grades.get(grade, str(""))
               if Item.getEnchantLevel() == 0:
                 enchant = str("")
               else:
                 enchant = " +"+str(Item.getEnchantLevel())+""
               htmltext += "<tr><td><img src=\"Icon."+str(icon)+"\" width=32 height=32></td><td><a action=\"bypass -h Quest q8015_Enchex step2next_" + str(Item.getObjectId()) +"\">" + itemTemplate.getName() + ""+str(pgrade)+" " + enchant + "</a></td></tr>"
             except :
               try : listitems.close()
               except : pass
           try :
             con.close()
           except :
             pass
     htmltext += u"</table><br><a action=\"bypass -h Quest q8015_Enchex spisok\">\u0412\u0435\u0440\u043d\u0443\u0442\u044c\u0441\u044f.</a></body></html>"
   elif event.startswith("step2next_"):
     itemObjId = int(event.replace("step2next_", ""))
     obj = str(itemObjId)
     Item = st.getPlayer().getInventory().getItemByObjectId(itemObjId)
     itemTemplate = Item.getItem()
     if Item and itemTemplate.getDuration() == -1:
       grade = itemTemplate.getCrystalType()
       idtest = Item.getItemId()
       con=L2DatabaseFactory.getInstance().getConnection()
       listitems=con.prepareStatement("SELECT itemIcon FROM z_market_icons WHERE itemId=?")
       listitems.setInt(1, idtest)
       rs=listitems.executeQuery()
       while (rs.next()) :
         icon=rs.getString("itemIcon")
         try :
           st.set("twoitem",obj)  
           grades = {1: "D", 2: "C", 3: "B", 4: "A", 5: "S"}
           pgrade = grades.get(grade, str(""))
           enchant = (Item.getEnchantLevel() > 0 and " +"+str(Item.getEnchantLevel())+"") or str("")
           htmltext =  u"<html><body>\u041f\u0435\u0440\u0435\u043d\u043e\u0441 \u0437\u0430\u0442\u043e\u0447\u043a\u0438:<br>\u0412 \u044d\u0442\u043e \u043e\u0440\u0443\u0436\u0438\u0435 \u043f\u0435\u0440\u0435\u043d\u043e\u0441\u0438\u043c?<br>"
           htmltext += "<table width=300><tr><td><img src=\"Icon."+str(icon)+"\" width=32 height=32></td><td><font color=LEVEL>" + itemTemplate.getName() + " " + enchant + "</font><img src=\"symbol.grade_"+str(pgrade)+"\" width=16 height=16><br></td></tr></table><br><br>"
           htmltext += u"<button value=\"\u041f\u0440\u043e\u0434\u043e\u043b\u0436\u0438\u0442\u044c\" action=\"bypass -h Quest q8015_Enchex step3\" width=60 height=15 back=\"sek.cbui94\" fore=\"sek.cbui92\"><br>"
           htmltext += u"<br><a action=\"bypass -h Quest q8015_Enchex spisok\">\u0412\u0435\u0440\u043d\u0443\u0442\u044c\u0441\u044f.</a></body></html>"
         except :
           try : listitems.close()
           except : pass
       try :
         con.close()
       except :
         pass
     else :
       htmltext = u"<html><body>\u041f\u0435\u0440\u0435\u043d\u043e\u0441 \u0437\u0430\u0442\u043e\u0447\u043a\u0438:<br>\u041e\u0448\u0438\u0431\u043a\u0430!<br><a action=\"bypass -h Quest q8015_Enchex spisok\">\u0412\u0435\u0440\u043d\u0443\u0442\u044c\u0441\u044f.</a></body></html>"
   elif event.startswith("step3"):
     weapon1 = st.getInt("oneitem")
     weapon2 = st.getInt("twoitem")
     htmltext =  u"<html><body>\u041f\u0435\u0440\u0435\u043d\u043e\u0441 \u0437\u0430\u0442\u043e\u0447\u043a\u0438:<br>\u041f\u043e\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0430\u0435\u0442\u0435?<br>"
     htmltext += u"\u0421 \u044d\u0442\u043e\u0433\u043e \u043e\u0440\u0443\u0436\u0438\u044f:"
     Item = st.getPlayer().getInventory().getItemByObjectId(weapon1)
     itemTemplate = Item.getItem()
     if Item:
       grade = itemTemplate.getCrystalType()
       idtest = Item.getItemId()
       con=L2DatabaseFactory.getInstance().getConnection()
       listitems=con.prepareStatement("SELECT itemIcon FROM z_market_icons WHERE itemId=?")
       listitems.setInt(1, idtest)
       rs=listitems.executeQuery()
       while (rs.next()) :
         icon=rs.getString("itemIcon")
         try :
           grades = {1: "D", 2: "C", 3: "B", 4: "A", 5: "S"}
           pgrade = grades.get(grade, str(""))
           enchant = (Item.getEnchantLevel() > 0 and " +"+str(Item.getEnchantLevel())+"") or str("")
           htmltext += "<table width=300><tr><td><img src=\"Icon."+str(icon)+"\" width=32 height=32></td><td><font color=LEVEL>" + itemTemplate.getName() + " " + enchant + "</font><img src=\"symbol.grade_"+str(pgrade)+"\" width=16 height=16><br></td></tr></table><br><br>"
           payment = int(Item.getEnchantLevel()*COST)
           if st.getQuestItemsCount(ITEM) < payment:
             htmltext += u"\u0421\u0442\u043e\u0438\u043c\u043e\u0441\u0442\u044c \u043f\u0435\u0440\u0435\u043d\u043e\u0441\u0430: <font color=ff2400>"+str(payment)+"</font> "+INAME+"<br>"
           else:
             htmltext += u"\u0421\u0442\u043e\u0438\u043c\u043e\u0441\u0442\u044c \u043f\u0435\u0440\u0435\u043d\u043e\u0441\u0430: <font color=adff2f>"+str(payment)+"</font> "+INAME+"<br>"
         except :
           try : listitems.close()
           except : pass
       try :
         con.close()
       except :
         pass
     htmltext += "Ha eTo:<br>"
     Item = st.getPlayer().getInventory().getItemByObjectId(weapon2)
     itemTemplate = Item.getItem()
     if Item:
       grade = itemTemplate.getCrystalType()
       idtest = Item.getItemId()
       cons=L2DatabaseFactory.getInstance().getConnection()
       listitemss=cons.prepareStatement("SELECT itemIcon FROM z_market_icons WHERE itemId=?")
       listitemss.setInt(1, idtest)
       rs=listitemss.executeQuery()
       while (rs.next()) :
         icon=rs.getString("itemIcon")
         try :
           grades = {1: "D", 2: "C", 3: "B", 4: "A", 5: "S"}
           pgrade = grades.get(grade, str(""))
           enchant = (Item.getEnchantLevel() > 0 and " +"+str(Item.getEnchantLevel())+"") or str("")
           htmltext += "<table width=300><tr><td><img src=\"Icon."+str(icon)+"\" width=32 height=32></td><td><font color=LEVEL>" + itemTemplate.getName() + " " + enchant + "</font><img src=\"symbol.grade_"+str(pgrade)+"\" width=16 height=16><br></td></tr></table><br><br>"
         except :
           try : listitemss.close()
           except : pass
       try :
         cons.close()
       except :
         pass
       htmltext += u"<button value=\"\u041f\u0440\u043e\u0434\u043e\u043b\u0436\u0438\u0442\u044c\" action=\"bypass -h Quest q8015_Enchex step4\" width=60 height=15 back=\"sek.cbui94\" fore=\"sek.cbui92\"><br>"
     else :
       htmltext = u"<html><body>\u041f\u0435\u0440\u0435\u043d\u043e\u0441 \u0437\u0430\u0442\u043e\u0447\u043a\u0438:<br>\u041e\u0448\u0438\u0431\u043a\u0430!<br><a action=\"bypass -h Quest q8015_Enchex spisok\">\u0412\u0435\u0440\u043d\u0443\u0442\u044c\u0441\u044f.</a></body></html>"
   elif event.startswith("step4"):
     htmltext =  u"<html><body>\u041f\u0435\u0440\u0435\u043d\u043e\u0441 \u0437\u0430\u0442\u043e\u0447\u043a\u0438:<br>\u041f\u0440\u043e\u0434\u043e\u043b\u0436\u0438\u0442\u0435...<br><br>"
     ench = st.getInt("enchant")
     payment = int(ench*COST)
     if st.getQuestItemsCount(ITEM) < payment:
       htmltext += u"\u0421\u0442\u043e\u0438\u043c\u043e\u0441\u0442\u044c \u043f\u0435\u0440\u0435\u043d\u043e\u0441\u0430: <font color=ff2400>"+str(payment)+"</font> "+INAME+"<br>"
       return htmltext
    #<
     weapon1 = st.getInt("oneitem")
     weapon2 = st.getInt("twoitem")
     item1 = st.getPlayer().getInventory().getItemByObjectId(weapon1)
     item2 = st.getPlayer().getInventory().getItemByObjectId(weapon2)
     if item1 == None or item2 == None:
       st.set("enchant","0")  
       htmltext += u"<font color=ff2400>\u041e\u0448\u0438\u0431\u043a\u0430 \u043f\u0435\u0440\u0435\u043d\u043e\u0441\u0430.</font><br>"
       return htmltext
     itemType = st.getInt("type")
     itype1 = str(item1.getItemType())
     itype2 = str(item2.getItemType())
     grade1 = item1.getItem().getCrystalType()
     grade2 = item2.getItem().getCrystalType()
    #<
     if item1.getEnchantLevel() != ench:
       st.set("enchant","0")  
       htmltext += u"<font color=ff2400>\u041e\u0448\u0438\u0431\u043a\u0430 \u043f\u0435\u0440\u0435\u043d\u043e\u0441\u0430.</font><br>"
       return htmltext
    #<
     if grade1 != 5 or grade2 != 5:
       st.set("enchant","0")  
       htmltext += u"<font color=ff2400>\u041e\u0448\u0438\u0431\u043a\u0430 \u043f\u0435\u0440\u0435\u043d\u043e\u0441\u0430.</font><br>"
       return htmltext
    #<  
     if itemType == 0:
       TYPES = ["Sword","Blunt","Dagger","Bow","Etc","Pole","Fist","Dual Sword","Dual Fist","Big Sword","Big Blunt"]
       if itype1 not in TYPES or itype2 not in TYPES:
         st.set("enchant","0")  
         htmltext += u"<font color=ff2400>\u041e\u0448\u0438\u0431\u043a\u0430 \u043f\u0435\u0440\u0435\u043d\u043e\u0441\u0430.</font><br>"
         return htmltext
     elif itemType == 1:
       TYPES = ["Light","Heavy","Magic"]
       if itype1 not in TYPES or itype2 not in TYPES:
         st.set("enchant","0")  
         htmltext += u"<font color=ff2400>\u041e\u0448\u0438\u0431\u043a\u0430 \u043f\u0435\u0440\u0435\u043d\u043e\u0441\u0430.</font><br>"
         return htmltext
     elif itemType == 3:
       jew1 = item1.getItem().getType2()
       jew2 = item2.getItem().getType2()
       if jew1 != L2Item.TYPE2_ACCESSORY or jew2 != L2Item.TYPE2_ACCESSORY:
         st.set("enchant","0")  
         htmltext += u"<font color=ff2400>\u041e\u0448\u0438\u0431\u043a\u0430 \u043f\u0435\u0440\u0435\u043d\u043e\u0441\u0430.</font><br>"
         return htmltext
     else:
       htmltext += u"<font color=ff2400>\u041e\u0448\u0438\u0431\u043a\u0430 \u043f\u0435\u0440\u0435\u043d\u043e\u0441\u0430.</font><br>"
       return htmltext
    #<
     st.takeItems(ITEM,payment)
    #<
     slott = item1.isEquipped()
     if slott > 0:
       testt = player.getInventory().getPaperdollItem(slott)
       player.getInventory().unEquipItemInSlotAndRecord(slott)
       item1.setEnchantLevel(0)
       player.getInventory().equipItemAndRecord(testt)
       iut = InventoryUpdate()
       iut.addModifiedItem(testt)
       player.sendPacket(iut)
       player.broadcastPacket(CharInfo(player))
       player.sendPacket(UserInfo(player))
     else:
       item1.setEnchantLevel(0)
       player.sendPacket(ItemList(player, False))
    #<
     slot = item2.isEquipped()
     if slot > 0:
       test = player.getInventory().getPaperdollItem(slot)
       player.getInventory().unEquipItemInSlotAndRecord(slot)
       item2.setEnchantLevel(ench)
       player.getInventory().equipItemAndRecord(test)
       iu = InventoryUpdate()
       iu.addModifiedItem(test)
       player.sendPacket(iu)
       player.broadcastPacket(CharInfo(player))
       player.sendPacket(UserInfo(player))
     else:
       item2.setEnchantLevel(ench)
       player.sendPacket(ItemList(player, False))
     htmltext += u"<font color=bef574>[ +"+str(ench)+"]</font> "u"\u041f\u0435\u0440\u0435\u043d\u0435\u0441\u0435\u043d\u043e.<br>"
   else:
     htmltext = u"<html><body>\u041f\u0435\u0440\u0435\u043d\u043e\u0441 \u0437\u0430\u0442\u043e\u0447\u043a\u0438:<br>Oops!</body></html>"
   return htmltext

def onTalk (self,npc,player):
   st = player.getQuestState(qn)
   npcId = npc.getNpcId()
   if npcId == NPC:
     htmltext = "privetstvie.htm"
   return htmltext

QUEST       = Quest(8015,qn,"custom")
QUEST.addStartNpc(NPC)
QUEST.addTalkId(NPC)

надеюсь оформил тему правильно, т.к это моя первая тема с выставлением скрипта.
Буду очень благодарен если вы мне с этим поможете!

Код:
try :
             grades = {1: "D", 2: "C", 3: "B", 4: "A", 5: "S"}
             pgrade = grades.get(grade, str(""))
Не?
Ответ
#3
grades = {1: "D", 2: "C", 3: "B", 4: "A", 5: "S"}

пробовал изменять на такое
grades = {1: "D", 2: "C", 3: "B", 4: "A", 5: "S", 6: "s80", 7: "s84"}
Результатом стало то, что всё перестало работать, даже обычные S вещи хотя я при этом ещё изменял везде grade с 5 на 7, однако если 5 на 7 не изменять, всё остоётся как есть, обычные S показывается, остольное нет, к тому же диалог показывает только S вещи а не любого грейда, это значит что где то есть привязка как я понимаю.
Ответ
#4
atomick Написал:grades = {1: "D", 2: "C", 3: "B", 4: "A", 5: "S"}

пробовал изменять на такое
grades = {1: "D", 2: "C", 3: "B", 4: "A", 5: "S", 6: "s80", 7: "s84"}
Результатом стало то, что всё перестало работать, даже обычные S вещи хотя я при этом ещё изменял везде grade с 5 на 7, возможно ли что в этом причина?

Если добавить новые грейды то и остольной код нужно поменять немножко.Smile
Ответ
#5
удолить своё предыдущее сообщение не могу поэтому напишу ещё рас если вдруг не увидели что я редактировал его

grades = {1: "D", 2: "C", 3: "B", 4: "A", 5: "S", 6: "s80", 7: "s84"}
Результатом стало то, что всё перестало работать, даже обычные S вещи хотя я при этом ещё изменял везде grade с 5 на 7, однако если 5 на 7 не изменять, всё остоётся как есть, обычные S показывается, остольное нет, к тому же диалог показывает только S вещи а не любого грейда, это значит что где то есть привязка именно к S вещам как я понимаю.
Ответ
#6
написали бы вы его на яве было бы нормально, а так печаль...
Ответ
#7
linliss Написал:написали бы вы его на яве было бы нормально, а так печаль...

Уважаемый(-мая), вы меня конечно извините, но скрипт писал не я... будь я на таком уровне, что бы самому написать скрипт, возможно не обратился бы за помощью...
Ответ
#8
А у Вас в ядре прописаны грейды S80 , S84 ? А в sql добавлены грейды к вещам ?
СЕО Оптимизация сайтов
Ответ


Возможно похожие темы ...
Тема Автор Ответы Просмотры Последний пост
  Скрипт для альт+б Jm0t 0 1,814 03-21-2019, 04:18 PM
Последний пост: Jm0t
  Помогите переписать скрипт с Python на Java Virrilis3 0 1,478 03-29-2018, 10:55 PM
Последний пост: Virrilis3
  кто может открыть .u формат скрипт? velterna 1 1,925 01-31-2018, 09:49 PM
Последний пост: PROGRAMMATOR
  Скрипт не срабатывает сразу Froust 4 2,383 09-22-2017, 02:14 PM
Последний пост: Froust
  скрипт на превращение зарича по id v1kt0r 3 2,129 05-07-2017, 10:04 PM
Последний пост: Emperor
  Скрипт статистики онлайн серверов NewUser 18 4,999 01-26-2015, 02:33 PM
Последний пост: Apoloser
  Скрипт установки сервера не работает. Linux /. SunWar 2 1,331 08-24-2014, 06:48 PM
Последний пост: SunWar
  Нужен скрипт на услуги донат менеджера (PW Soft) Intruder 3 2,273 05-26-2014, 08:22 AM
Последний пост: Masone
  скрипт Vasya 12 2,875 04-16-2014, 04:33 PM
Последний пост: Cywka!
  скрипт кс Vasya 9 2,257 04-07-2014, 08:20 PM
Последний пост: L2scripts-Guard

Перейти к форуму:


Пользователи, просматривающие эту тему: 1 Гость(ей)