Перейти к содержанию
Авторизация  
win37rus

Смена ника PW

Рекомендуемые сообщения

Сборка PW

Подскажите плиз все уже поперетыкал и поперепробывал.

При попытку сменить ник в игре мне выдает: "У меня для вас ничего нет"

 

Путь правильный

в ГСе ошибка failed to import custom :  q8018_CngNick

 

 

 

__all__ = [
'purchase',
'q1000_ColorManager',
'q1001_ColorManager1',
'q3995_echo',
'q4000_ShadowWeapons',
'q8018_CngNick',
]
print ""
print "importing custom data ..."
for name in __all__ :
    try :
        __import__('data.jscript.custom.'+name,globals(), locals(), ['__init__'], -1)
    except:
        print "failed to import custom : ",name
print "... done"
print ""

 

 

 

import sys
from java.lang import System
from java.util import Iterator
from net.sf.l2j import L2DatabaseFactory
from net.sf.l2j.util import Rnd
from net.sf.l2j.gameserver.model.quest import State
from net.sf.l2j.gameserver.model.quest import QuestState
from net.sf.l2j.gameserver.model.quest.jython import QuestJython as JQuest
from time import gmtime, strftime

qn = "q8018_CngNick"

NPC = 99999
ITEM = 57 # итем необходимый для обмена
COST = 1 # стоимость
INAME = "Adena" # название итема

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 == "step1":
     if st.getQuestItemsCount(ITEM) < COST:
       htmltext = "<html><body>Смена ника: <font color=74bff5>"+str(COST)+" "+INAME+"</font></body></html>"
	   return htmltext
     #elif player.getClanId():
       #htmltext = "<html><body>Для смены ника вам необходимо выйти из клана<br>Вы сможете вступить вновь, сразу после смены ника<br>Если вы кланлидер - перекиньте клан на твинка</body></html>"
       #return htmltext
     htmltext = "<html><body><img src=\"L2UI_CH3.herotower_deco\" width=256 height=32><br><img src=\"L2UI.SquareBlank\" width=260 height=2><br1>"       
     htmltext += "Введите желаемый ник:"
     htmltext += "<edit var=\"nick\" width=200 length=\"16\"><br>"
     htmltext += "<button value=\"Проверить\" action=\"bypass -h Quest q8018_CngNick step2_ $nick\" width=80 height=15 back=\"sek.cbui94\" fore=\"sek.cbui92\"><br>"
     htmltext += "<img src=\"L2UI_CH3.herotower_deco\" width=256 height=32></body></html>"
   elif event.startswith("step2_"):
     nick = str(event.replace("step2_", ""))
     nick = str(nick.replace(" ", ""))
     htmltext = "<html><body>Смена ника:<br>Проверка...<br><br>"
     if nick == "":
       htmltext += "Вы не ввели желаемый ник!<br><br>"
       htmltext += "<a action=\"bypass -h Quest q8018_CngNick step1\">Вернуться.</a></body></html>"
       return htmltext
     elif nick.startswith("GM.") or nick.startswith("ADM.") or nick.startswith("EGM.") or nick.startswith("-"):
       htmltext += "Неправильный ник!<br><br>"
       htmltext += "<a action=\"bypass -h Quest q8018_CngNick step1\">Вернуться.</a></body></html>"
       return htmltext
     elif nick.endswith(".GM") or nick.endswith(".ADM") or nick.endswith(".EGM"):
       htmltext += "Неправильный ник!<br><br>"
       htmltext += "<a action=\"bypass -h Quest q8018_CngNick step1\">Вернуться.</a></body></html>"
       return htmltext
    #<
     cona=L2DatabaseFactory.getInstance().getConnection()
     getcount=cona.prepareStatement("SELECT COUNT(char_name) FROM characters WHERE char_name=?")
     getcount.setString(1,nick)
     rsc=getcount.executeQuery()
     if (rsc.next()):
       if rsc.getInt(1) == 1:
         htmltext = "<font color=dc143c>Ник "+nick+" уже занят.</font><br>"
         htmltext += "<a action=\"bypass -h Quest q8018_CngNick step1\">Вернуться.</a></body></html>"
         return htmltext
     rsc.close()
     getcount.close()
     cona.close()
    #< 
     htmltext += "<font color=bef574>Ник "+nick+" свободен.</font><br>"
     htmltext += "<a action=\"bypass -h Quest q8018_CngNick step3_"+nick+"\" msg=\"Новый ник "+nick+". Уверены?>Продолжить.</a><br><br>"
     htmltext += "<a action=\"bypass -h Quest q8018_CngNick step1\">Вернуться.</a></body></html>"
   elif event.startswith("step3"):
     nick = str(event.replace("step3_", ""))
     if st.getQuestItemsCount(ITEM) < COST:
       htmltext = "<html><body>Смена ника: <font color=74bff5>"+str(COST)+" "+INAME+"</font></body></html>"
       return htmltext
    #<
     login = str(player.getAccountName()) 
     name = str(player.getName())
     date = str(strftime("%Y-%m-%d", gmtime()))
     time = str(strftime("%H:%M:%S", gmtime()))
     writelog=L2DatabaseFactory.getInstance().getConnection()
     write=writelog.prepareStatement("INSERT INTO zz_donate_log (date,time,login,name,action,payment) VALUES (?,?,?,?,?,?)")
     write.setString(1, date)
     write.setString(2, time)
     write.setString(3, login)
     write.setString(4, name)
     write.setString(5, "Nick: "+nick+"")
     write.setInt(6, COST)
     try :
       write.executeUpdate()
       write.close()
       writelog.close()
     except :
       try : writelog.close()
       except : pass
    #<
     player.setName(nick)
     st.takeItems(ITEM,COST)
     htmltext =  "<html><body>Смена ника:<br>Готово.<br><font color=f5b974>Перезайдите!</font><br></body></html>"
   else:
     htmltext = "<html><body>Смена ника:<br>Oops!</body></html>"
   return htmltext

 def onTalk (self,npc,player):
   st = player.getQuestState(qn)
   npcId = npc.getNpcId()
   if npcId == NPC:
     self.startQuestTimer("step1",100,None,player)      
   return

QUEST       = Quest(8018,qn,"custom")
CREATED     = State('Start', QUEST)

QUEST.setInitialState(CREATED)

QUEST.addStartNpc(NPC)
QUEST.addTalkId(NPC)

 

 

Изменено пользователем JoeyTribbiani

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

попробуй скачать другой донат шоп и выдернуть от туда. Возможно не правильно написан сам скрипт

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

попробуй скачать другой донат шоп и выдернуть от туда. Возможно не правильно написан сам скрипт

Уже пробовал, везде одна и таже хрень

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Запятую убери после 'q8018_CngNick'

Тут ошибочно просто скинул с запятой, в самом файле так стоит

'q3995_echo',
'q4000_ShadowWeapons',
'q8018_CngNick'
]

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Сложно сказать в чем ошибка в скрипте. Было бы ява - можно было бы проверить на синтаксические ошибки (у вас в скрипте из-за них и не включает).

Был бы полных лог на ошибку... 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Во нашел логи:

line 27
    return htmltext

Выровните эту строчку и всё

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Во нашел логи:

line 27
    return htmltext

Выровните эту строчку и всё

Строка в скрипте на месте стоит, это при копировании она уехала.

Проблема так и осталась

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти
Авторизация  

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×
×
  • Создать...