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

Скрипт баффера

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

Доброго дня всем. прошу подсказки знатоков.
значит скачал баффера. установил. 
в скрипте ошибку выдаё на данной строке.
код скрипта

import sys


from com.l2jfrozen.util.database import L2DatabaseFactory
from com.l2jfrozen.gameserver.model.quest import State
from com.l2jfrozen.gameserver.model.quest import QuestState
from com.l2jfrozen.gameserver.model.quest.jython import QuestJython as JQuest
from com.l2jfrozen.gameserver.model.actor.instance import L2PcInstance
from com.l2jfrozen.gameserver.model import L2Skill
from java.util import Iterator
from com.l2jfrozen.gameserver.datatables import SkillTable

qn = "9990_buffer"

NPC = [40001]
ACCEPT_BUFF = [1040, 1068, 1035, 1043, 1077, 1078, 1085, 1311, 1032,
1036, 1045, 1048, 4352, 4357, 4391, 4403, 4405, 1243,
1388, 1389, 1087, 1259, 1059, 1268]
ACCEPT_DANCES = [271, 272, 273, 274, 275, 276, 277, 307, 309,
310, 311, 365]
ACCEPT_SONGS = [364, 264, 306, 269, 270, 265, 363, 349, 308,
305, 304, 267, 266, 268]
ACCEPT_CHANTS = [1251, 1252, 1253, 1284, 1006, 1007, 1009, 1362,
1310, 1309, 1308, 1391, 1390]
ACCEPT_SPECIAL = [1364, 1356, 1355, 1357, 1413, 4702, 4703, 4700,
4699, 1323]
ACCEPT_RESISTS = [1393, 1392, 1182, 1189, 1191, 1352, 1353, 1073]

QuestId = -1
QuestName = "Buffer"
QuestDesc = "custom"

class Quest (JQuest) :

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

def onEvent(self, event, st):
htmltext = "Sory, failed Event"
ownerid = st.getPlayer().getObjectId()
effects = st.getPlayer().getAllEffects()
if event.startswith("page_") :
page = int(event.replace("page_", ""))
htmltext = str(page) + ".htm"
elif event == "cancel" :
st.getPlayer().stopAllEffects()
htmltext = "1.htm"
activePage = 1
elif event == "reload" :
st.getPlayer().restoreCP()
st.getPlayer().restoreHP()
st.getPlayer().restoreMP()
htmltext = "1.htm"
elif event.startswith("buff_") :
id_lvl = event.replace("buff_", "")
id_lvl = id_lvl.split("_")
SkillTable.getInstance().getInfo(int(id_lvl[0]), int(id_lvl[1])).getEffects(st.getPlayer(), st.getPlayer())
htmltext = str(int(id_lvl[2])) + ".htm"
elif event.startswith("profile_") :
act = event.replace("profile_", "")
con = L2DatabaseFactory.getInstance().getConnection()
if act.startswith("buff_") :
act = str(int(act.replace("buff_", "")))
sql = con.prepareStatement("SELECT * FROM profile_buff WHERE char_id = ? AND pindex = ?")
sql.setInt(1, int(ownerid))
sql.setInt(2, int(act))
rs = sql.executeQuery()
rs.next()
full_buffs = rs.getString("skills").split(";")
sql.close()
rs.close()
for buff in full_buffs :
if buff != "" :
buff = buff.split(",")
SkillTable.getInstance().getInfo(int(buff[0]), int(buff[1])).getEffects(st.getPlayer(), st.getPlayer())

htmltext = "1.htm"
elif act.startswith("save_") :
act = str(int(act.replace("save_", "")))
sqll = con.prepareStatement("DELETE FROM profile_buff WHERE char_id = ? AND pindex = ?")
sqll.setInt(1, int(ownerid))
sqll.setInt(2, int(act))
sqll.execute()
sqll.close()
saving = "++"
for eff in effects :
eff_id = eff.getSkill().getId()
eff_level = eff.getSkill().getLevel()
if saving == "++" :
if (eff_id in ACCEPT_BUFF or eff_id in ACCEPT_DANCES or eff_id in ACCEPT_SONGS or eff_id in ACCEPT_CHANTS or eff_id in ACCEPT_SPECIAL or eff_id in ACCEPT_RESISTS) :
saving = str(eff_id) + "," + str(eff_level) + ";"
else :
if (eff_id in ACCEPT_BUFF or eff_id in ACCEPT_DANCES or eff_id in ACCEPT_SONGS or eff_id in ACCEPT_CHANTS or eff_id in ACCEPT_SPECIAL or eff_id in ACCEPT_RESISTS) :
saving += str(eff_id) + "," + str(eff_level) + ";"
sql = con.prepareStatement("INSERT INTO profile_buff (char_id, pindex, skills) VALUES ('" + str(ownerid) + "', '" + str(act) + "', '" + saving + "')")
sql.execute()
sql.close()
htmltext = "8.htm"
con.close()
return htmltext

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


QUEST = Quest(QuestId, qn, QuestDesc)
CREATED = State('Start', QUEST)
STARTED = State('Started', QUEST)
COMPLETED = State('Completed', QUEST)
QUEST.setInitialState(CREATED)

for npcId in NPC:
QUEST.addStartNpc(npcId)
QUEST.addTalkId(npcId)

 

 

код ошибки из файла __init__.py.error

Error on: D:\Old\gameserver\data\scripts\custom\9990_buffer\__init__.py.error.log
Line: -1 - Column: -1

Traceback (innermost last):
(no code object) at line 0
SyntaxError: ('invalid syntax', ('__init__.py', 70, 13, ' if buff != "" :'))

 

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

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


Ссылка на сообщение
Поделиться на другие сайты
if buff != " ":

// или

if buff != null:

изменил. лог ниже 

Error on: D:\Old\gameserver\data\scripts\custom\9990_buffer\__init__.py.error.log

Line: -1 - Column: -1

 

Traceback (innermost last):

(no code object) at line 0

SyntaxError: ('invalid syntax', ('__init__.py', 70, 13, ' if buff != null:'))

 

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


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

Укажите сборку в не которых сборках надо дописывать

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


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

Укажите сборку в не которых сборках надо дописывать

фрозен

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


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

изменил. лог ниже 

Error on: D:\Old\gameserver\data\scripts\custom\9990_buffer\__init__.py.error.log

Line: -1 - Column: -1

 

Traceback (innermost last):

(no code object) at line 0

SyntaxError: ('invalid syntax', ('__init__.py', 70, 13, ' if buff != null:'))

 

с 1м вариантом так же?

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


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

с 1м вариантом так же?

 с первым вот такое

 

Error on: D:\Old\gameserver\data\scripts\custom\9990_buffer\__init__.py.error.log

Line: -1 - Column: -1

 

Traceback (innermost last):

(no code object) at line 0

SyntaxError: ('invalid syntax', ('__init__.py', 70, 13, ' if buff != " ":'))

 

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


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

Всё просто: != нету функции в этом языке. ее заменяет команда not

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


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

Всё просто: != нету функции в этом языке. ее заменяет команда not

if buff != " ":

изменить на 

if buff not " ":    ?

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


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

именно)

теперь такая бредовина.
Error on: D:\Old\gameserver\data\scripts\custom\9990_buffer\__init__.py.error.log

Line: -1 - Column: -1

 

Traceback (innermost last):

(no code object) at line 0

SyntaxError: ('invalid syntax', ('__init__.py', 70, 13, ' if buff not " ":'))

наверное в *опу его. пойду другого баффера искать

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


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

 

теперь такая бредовина.
Error on: D:\Old\gameserver\data\scripts\custom\9990_buffer\__init__.py.error.log

Line: -1 - Column: -1

 

Traceback (innermost last):

(no code object) at line 0

SyntaxError: ('invalid syntax', ('__init__.py', 70, 13, ' if buff not " ":'))

наверное в *опу его. пойду другого баффера искать

 

лол. синтаксис условий языка не знаете просто. посмотрите примеры как реализованы условия с not. он вообще спереди должен стоять. 

  • Upvote 1

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


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

лол. синтаксис условий языка не знаете просто. посмотрите примеры как реализованы условия с not. он вообще спереди должен стоять. 

синтаксисы. финтаксисы. написал бы уже как надо и всё.

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


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

синтаксисы. финтаксисы. написал бы уже как надо и всё.

Уважаемый, вам никто тут ничего не должен!

Откройте любой питон скрипт и посмотрите условия.

  • Upvote 1

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


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

no comment. Примеры, интернет... нет, пусть кто-то сделает за меня и всё

1й вариант:

if len(buff) > 0:

2й вариант:

if not buff.endswith(""):

Выбирай любой. На фрозене получилось запустить. 

  • Upvote 1

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


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

no comment. Примеры, интернет... нет, пусть кто-то сделает за меня и всё

1й вариант:

if len(buff) > 0:

2й вариант:

if not buff.endswith(""):

Выбирай любой. На фрозене получилось запустить. 

спс за помощь. я другова нашел баффера.

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


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

Совет — при разработке бафера не забываем проверять на валидность данные от игрока.

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

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


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

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

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

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

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

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

Войти

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

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

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

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

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