Автор: Belial
Здесь я помещаю шаблон торговой лавки на URQ win 1.4 и AkURQ 1.1 (На досурке не работает).
Данный шаблон может использоваться, как с целью ознакомления/обучения языку URQL, так и в качестве готового шаблона - достаточно вставить этот код в свой квест и в нужном вам месте сделать ссылку на локацию "лавка". Локация "начало" в данном случае удаляется. Ну и соответственно адаптируете предметы/цены под свой квест.
---------------------------------КОД-----------------------------------
:начало
mon=240
inv+ #%mon$, монет
pln Наконец ты заработал достаточно денег, чтобы прикупить оружие.
btn лавка, Идти в лавку
end
;----ОПРЕДЕЛЯЕМ ЧТО ЗА ТОВАР ЕСТЬ В НАШЕЙ ЛАВКЕ
:лавка
pln Ты вошел в лавку. На стенах развешаны мечи, кольчуги и щиты.
btn щиты, Смотреть щиты
btn кольчуги, Смотреть доспехи
btn мечи, Смотреть мечи
end
;----И ЕЩЕ РАЗ БОЛЕЕ КОНКРЕТНО КАЖДЫЙ ВИД ТОВАРА
:щиты
btn деревянный, Купить деревянный за 20 монет
btn стальной, Купить стальной за 60 монет
btn лавка, Назад
end
:кольчуги
btn кожаная, Купить кожаную за 50 монет
btn медная, Купить медную за 100 монет
btn лавка, Назад
end
:мечи
btn короткий, Купить короткий за 60 монет
btn двуручный, Купить двуручный за 100 монет
btn лавка, Назад
end
:деревянный
;----ЗАДАЕМ СТРОКОВУЮ ПЕРЕМЕННУЮ, СОДЕРЖАЩУЮ
;----НАЗВАНИЕ ВЫБРАННОГО ПРЕДМЕТА
instr щит=Деревянный-щит
;----ЗАДАЕМ ПЕРЕМЕННУЮ СОДЕРЖАЩУЮ ЦЕНУ
;----ВЫБРАННОГО ПРЕДМЕТА
цена=20
;-----ОТПРАВЛЯЕМСЯ К ОБРАБОТЧИКУ ПОКУПКИ
goto 8
end
;-----ПОВТОРЯЕМ ПОСЛЕДНИЕ ТРИ ПОЗИЦИИ ДЛЯ КАЖДОГО
;-----ВИДА ТОВАРА
:стальной
instr щит=Стальной-щит
цена=60
goto 8
end
:кожаная
instr доспех=Кожанная-кольчуга
цена=50
goto 10
end
:медная
instr доспех=Медная-кольчуга
цена=100
goto 10
end
:двуручный
instr оружие=Двуручный-меч
цена=100
goto 9
end
:короткий
instr оружие=Короткий-меч
цена=60
goto 9
end
;-----ОБРАБОТКА ПРОЦЕССА ПОКУПКИ
:8
;-----ЕСЛИ У ИГРОКА УЖЕ ИМЕЕТСЯ ВЫБРАННЫЙ ПРЕДМЕТ
if #%щит$ then pln У вас уже есть #%щит$.
;-----ЕСЛИ У ИГРОКА НЕДОСТАТОЧНО ДЕНЕГ
if mon<#цена$ and not #%щит$ then pln У вас недостаточно денег, чтобы купить #%щит$ , приходите в другой раз...
;-----И НАКОНЕЦ УДАЧНАЯ ПОКУПКА
if mon>#цена$ and not #%щит$ then pln Вы купили #%щит$, благадорим за покупку... & mon=mon-#цена$ & inv- #цена$, монет & inv+ #%щит$
;-----ОТПРАВЛЯЕМСЯ НАЗАД К ОПИСАНИЮ ЛАВКИ
btn лавка, Назад
end
;-----ПРОПИСЫВАЕМ ОБРАБОТКУ ПРОЦЕССА ПОКУПКИ
;-----ДЛЯ КАЖДОГО ТИПА ТОВАРА (У НАС ИХ ТРИ -
;-----ЩИТЫ, ДОСПЕХИ и МЕЧИ)
:9
if #%оружие$ then pln У вас уже есть #%оружие$.
if mon<#цена$ and not #%оружие$ then pln У вас недостаточно денег, чтобы купить #%оружие$, приходите в другой раз...
if mon>#цена$ and not #%оружие$ then pln Вы купили #%оружие$, благадорим за покупку... & mon=mon-#цена$ & inv- #цена$ , монет & inv+ #%оружие$
btn лавка, Назад
end
:10
if #%доспех$ then pln У вас уже есть #%доспех$.
if mon<#цена$ and not #%доспех$ then pln У вас недостаточно денег, чтобы купить #%доспех$, приходите в другой раз...
if mon>#цена$ and not #%доспех$ then pln Вы купили #%доспех$, благадорим за покупку... & mon=mon-#цена$ & inv- #цена$ , монет & inv+ #%доспех$
btn лавка, Назад
end
;------ВОТ И ВСЕ - УДАЧНЫХ ВАМ ПОКУПОК!
А здесь можно скачать файл .qst с этим шаблоном.
|