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

Проблема С Квестом

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

Всем привет, просто молю о помощи, в сприпте!

Сидел и писал квест 24 дня, очень огромный получился, прям такой, какой я хотел. Все работает, но в конце вышла запара. Мне требуется, чтобы, нпс проверял наличие определенного итема1 в кармане, затем, если количество этого итема равно 1, то забирал этот итем, и выдавал итем2. Дальше, при следующем обращении, что бы имея уже полученный итем2, и попробуя сдачу снова, он сверял, итем1, и итем2 который мы получили, и выдавал уже итем3, при следующей сдаче сверял итем1 и итем3 дальше и выдавал итем4 и тд.

 

Я почти это реализовал, вышло так вот:

 

 

elif event == "EndZdacha" :

if st.getQuestItemsCount(item1) < 1 :

htmltext = "cant.htm"

else :

st.giveItems(item2,1)

player.broadcastUserInfo()

st.takeItems(item1,1)

htmltext = "udacha.htm"

st.playSound("ItemSound.quest_finish")

st.exitQuest(1)

if st.getQuestItemsCount(item2) >= 1 :

st.giveItems(item3,1)

player.broadcastUserInfo()

st.takeItems(item1,1)

st.takeItems(item2,1)

htmltext = "udacha.htm"

st.playSound("ItemSound.quest_finish")

st.exitQuest(1)

 

Проблема в том, что он когда делает первую часть, а то есть:

 

 

elif event == "EndZdacha" :

if st.getQuestItemsCount(item1) < 1 :

htmltext = "cant.htm"

else :

st.giveItems(item2,1)

player.broadcastUserInfo()

st.takeItems(item1,1)

htmltext = "udacha.htm"

st.playSound("ItemSound.quest_finish")

st.exitQuest(1)

 

Не останавливается, а тут же сразу делает и вторую, и получается, когда человек жмет кнопку, сразу весь скрипт проходит. Вопрос, как сделать так, что бы он при сдаче делал сначала первую часть, затем вторую только при следующем обращении, потом третью опять же со след обращением, а если итема не хватает, то писал чтобы итем был.

Помогите прошу, сижу уже трое суток, не могу никак решить проблему.

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

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


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

после первой проверки, зкаанчивайть queststate, т.е. разбить квест по частям, 1-я часть квеста итем1 ... проверка и т.д. начинаем 2-ю. часть квеста, офк при условии если 1-я пройдена.

Изменено пользователем desolator
  • Upvote 1

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


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

Спасибо, но я все равно не догнал, как поставить это правильно в коде. Как поставить QuestState, чтобы правильно читал, а то ставлю, а он все равно читает обе части разом. Если не затруднит, можно пожалуйста пример привести?

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


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

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

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

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

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

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

Войти

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

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

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

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

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