UltrusAra 0 Опубликовано 30 апреля, 2014 (изменено) Всем привет, просто молю о помощи, в сприпте! Сидел и писал квест 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) Не останавливается, а тут же сразу делает и вторую, и получается, когда человек жмет кнопку, сразу весь скрипт проходит. Вопрос, как сделать так, что бы он при сдаче делал сначала первую часть, затем вторую только при следующем обращении, потом третью опять же со след обращением, а если итема не хватает, то писал чтобы итем был. Помогите прошу, сижу уже трое суток, не могу никак решить проблему. Изменено 30 апреля, 2014 пользователем UltrusAra Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
desolator 267 Опубликовано 30 апреля, 2014 (изменено) после первой проверки, зкаанчивайть queststate, т.е. разбить квест по частям, 1-я часть квеста итем1 ... проверка и т.д. начинаем 2-ю. часть квеста, офк при условии если 1-я пройдена. Изменено 30 апреля, 2014 пользователем desolator 1 Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
UltrusAra 0 Опубликовано 1 мая, 2014 Спасибо, но я все равно не догнал, как поставить это правильно в коде. Как поставить QuestState, чтобы правильно читал, а то ставлю, а он все равно читает обе части разом. Если не затруднит, можно пожалуйста пример привести? Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты