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

Бафер За Итемы На Frozen Dev

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

Уважаемые форумчане столкнулся с такой проблемой. Прописывал бафера под сборку. Обычный баф бафается шикарно, без ошибок.

Но решил сделать еще также премиум баф, который бы бафал за квест итем который находится в инвентаре. Но есть одно "НО": выставляю итем в настройках но бафер их не учитывает и бафает бесплатно

Вот код

import sys
from com.l2jfrozen.gameserver.model.actor.instance import L2PcInstance
from java.util import Iterator
from com.l2jfrozen.gameserver.datatables import SkillTable
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
qn = "20701_NPCBuffer"
NPC=[50028]
ADENA_ID=9555
QuestId	 = 20701
QuestName   = "NPCBuffer"
QuestDesc   = "custom"
InitialHtml = "1.htm"
print "Global Buffer : LOADED "
class Quest (JQuest) :
def __init__(self,id,name,descr): JQuest.__init__(self,id,name,descr)

def onEvent(self,event,st):
 htmltext = event
 count=st.getQuestItemsCount(ADENA_ID)
 if count < 1  or st.getPlayer().getLevel() < 1 :
  htmltext = "<html><head><body>У вас в квестовых предметах нету,<br> Buff token. Купите в Donate Shop.</body></html>"
 else:
  st.takeItems(ADENA_ID,0)
  st.getPlayer().setTarget(st.getPlayer())

И код непосредственно одного из бафа:

#Blessing of Queen
  if event == "94":
   st.takeItems(ADENA_ID,0)
   SkillTable.getInstance().getInfo(4699,3).getEffects(st.getPlayer(),st.getPlayer())
   return "7.htm"
   st.setState(COMPLETED)

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


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

st.takeItems(ADENA_ID,0)

А что тут не так?

Ведь по идеи я в начале указываю что Adena_ID это определенный итем...или неправильно?

Мне главное чтобы бафер ссылался на квест итем, но не забирал его, а если итема нету посылал в шоп покупать его...

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


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

А что тут не так?

Ведь по идеи я в начале указываю что Adena_ID это определенный итем...или неправильно?

Мне главное чтобы бафер ссылался на квест итем, но не забирал его, а если итема нету посылал в шоп покупать его...

что то типа такого ищите у себя(мб он у вас и есть) st.getQuestItemsCount(ADENA_ID) >= 1 Изменено пользователем JunkyFunky

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


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

что то типа такого ищите у себя(мб он у вас и есть) st.getQuestItemsCount(ADENA_ID) >= 1

Странно но такого условия нету...есть упоминание только в начале

def onEvent(self,event,st):
 htmltext = event
 count=st.getQuestItemsCount(ADENA_ID)
 if count < 1  or st.getPlayer().getLevel() < 1 :
  htmltext = "<html><head><body>У вас в квестовых предметах нету,<br> Buff token. Купите в Donate Shop.</body></html>"
 else:
  st.takeItems(ADENA_ID,0)
  st.getPlayer().setTarget(st.getPlayer())

И больше нигде нету ссылки на это

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


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

Что если подправить в условиях и сделать чтото вот такое:

count=st.getQuestItemsCount(ADENA_ID)
if count < 1 or st.getPlayer().getLevel() < 1 :
htmltext = "<html><head><body>У вас в квестовых предметах нету,<br> Buff token. Купите в Donate Shop.</body></html>"
else:
[color=#ff0000]st.getQuestItems(ADENA_ID,0)[/color]
st.getPlayer().setTarget(st.getPlayer())

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

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


Ссылка на сообщение
Поделиться на другие сайты
htmltext = event
count=st.getQuestItemsCount(ADENA_ID)
if count >= 1 or st.getPlayer().getLevel() > 1 :
st.getPlayer().setTarget(st.getPlayer())
else:
htmltext = "У вас в квестовых предметах нету,
Buff token. Купите в Donate Shop."

попробуй так

  • Upvote 1

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


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

ПОЛУЧИЛОСЬ!!!!! Проблема до ужаса смешная....

NPC=[50028]

ADENA_ID = 9555

QuestId = 20702

QuestName = "NPCBuffer"

QuestDesc = "custom"

InitialHtml = "7.htm"

В выделенном не было пробела....капец((( невнимательность доведет меня)

Админ вопрос исчерпан, закрывай

Всем спасибо

JunkyFunky лови спасибо

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


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

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

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

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

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

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

Войти

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

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

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

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

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