Skip to content
La2Base
Home
DownloadsWikiForumFAQ
Search
ruen
Sign up Login
HomeFilesWikiLogin
  • Home
  • Downloads
  • Wiki
  • FAQ
  • Contact Us
  • About
  • Rules
  • Privacy
  • Terms of Service

© 2026 la2base.com · All rights reserved

ruen
Forum/Квесты/Проверка на наличие скила
Search

Проверка на наличие скила

6 replies152 viewsCurrently viewing: 1
Хам
Хам

User

Бывалый

Posts: 179

На форуме с: 03/16/2008

Репутация: +45

Рейтинг: 0

· 01/05/2010, 07:27 PM

я в java и питоне полный лох, но все же хочу понять как это работает

в общем, имеется квест который добавляет чару за определенный итемы скил, но в квесте нет проверки на наличие этого итема у чара, тупо стоит закрытие квеста (по типу одноразовый)
я же хочу его переделать так что бы можно было несколько скилов разных добавлять

в общем никак не могу найти класс отвечающий за проверку нужного скила у чара

кусок кода:

Код
    def onTalk (self,npc,player):
        st = player.getQuestState(qn)
        if st.getPlayer().getLevel() < MIN_LVL or st.getPlayer().getLevel() > MAX_LVL :
            htmltext = "badlevel.htm"
        elif st.getPlayer().getSkill().getId(ID_SKILL) :
            htmltext = "skillinyou.htm"
        elif st.getQuestItemsCount(ID_ITEM) < NEED_ITEM :
            htmltext = "noitem.htm"
        else:
            htmltext = "skill.htm"
        return htmltext


прошу помощи, очень нужно починить...

0
Хам
Хам

User

Бывалый

Posts: 179

На форуме с: 03/16/2008

Репутация: +45

Рейтинг: 0

· 01/06/2010, 02:31 PM

up

0
Хам
Хам

User

Бывалый

Posts: 179

На форуме с: 03/16/2008

Репутация: +45

Рейтинг: 0

· 01/07/2010, 05:50 PM

неужели никто не знает? :( неверю :( ну плиз подкажите, ну Ооочень надо...

0
U
Uphill
· 01/08/2010, 04:27 PM

есть один выход... для каждого скила, который хочешь дать - делать копии скрипта, только с изменением конфига...

0
Хам
Хам

User

Бывалый

Posts: 179

На форуме с: 03/16/2008

Репутация: +45

Рейтинг: 0

· 01/09/2010, 12:58 PM

я немного не правильно описал :), нужно сделать проверку на наличие этого скила у перса, а то получается что чел может скил покупать сколько угодно раз... мне тут подсказали следующий выход:

Код
for s in st.player.getAllSkills():
                         if s.getId() == 759:

но каким образом его реализовать я не знаю :(

0
G
Gradesk
· 01/09/2010, 09:56 PM

xameleon: я немного не правильно описал :), нужно сделать проверку на наличие этого скила у перса, а то получается что чел может скил покупать сколько угодно раз... мне тут подсказали следующий выход:
Код
for s in st.player.getAllSkills():
                         if s.getId() == 759:

но каким образом его реализовать я не знаю :(

ммм, а то тут не понятного?
Фор создаёт цикл...
Ты получаеш список всех скилов чара при помощи "st.player.getAllSkills()" (только мне кажется после СТ не правильно написан плеер).
После чего при помощи "if s.getId() == 759:" ты проверяеш на наличие нужного тебе скила, только это крайне недописано..
После ифа должно быть действие, и чтобы цикл остановить (ну и рас у тебя првоерка на наличие скила) надо написать "return "some.htm""
Кстати не плохой вариант, но мне кажется должен быть другой, без фора... хотя для начала и так сайдёт...

0
Войдите или зарегистрируйтесь чтобы ответить