Ну, объясняя по-быстрому, надо просто глянуть как это происходит в оригинальных квестах, вспомнить где забираются вещи и выдается награда, и по репликам найти нужный кусок кода. Судя по тому что это первый урок, то в следующем может что-то интересное будет описано... А вообще, каждому шагу не научишь, тут самому догонять нужно.
А можно описать процедуру отдачи одного предмета и получения за него другого при выполнении какогото условия например - оплата, с доп условием - промежуток по времени выполнения. Проще говоря отдал доску, через час оплатил N-количество денег и получил "рогатку"(ки).
Если коротко, то делается это так: 1) в разговоре удаляется начальный предмет, например callm Player.DelItem(Woodplate) 2) добавляется атрибут, что предмет удалён и работа идёт, н-р Quest1Local.add InProgress 3) добавляется атрибут, который содержит конечный результат (какой предмет должен быть выдан), н-р Quest1Local.Result = Rogatka 4) добавляется таймер, по истечении которого работа окончена, н-р on event timer2+1 Quest1Local.del InProgress 5) через указанное время (1час) выдаём предмет, который запланировали Player.AddItem(Quest1Local.Result)
Попутно нужно привязывать фразы к наличию атрибутов. Н-р, if(has Quest1Local InProgress) then print("Работа идёт, но рогатка ещё не готова.")
Добавлять комментарии могут только зарегистрированные пользователи. [ Регистрация | Вход ]