АвторСообщение
Юрист урки, адвокат дьявола




Сообщение: 138
Зарегистрирован: 07.12.06
ссылка на сообщение  Отправлено: 30.07.10 23:17. Заголовок: Специальная тема для гостей и вновь прибывших. Здесь вы можете задавать свои вопросы. (продолжение)


Дорогие гости, если у вас есть небольшие "одноразовые" вопросы, пожалуйста, не стоит заводить под каждый из них отдельную тему на форуме, задавайте их здесь. Также, тут можно просто поздороваться или даже представиться.
Спасибо :)

Спасибо: 0 
ПрофильЦитатаОтветить
Ответов - 269 , стр: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 All [только новые]





Сообщение: 2
Зарегистрирован: 21.08.14
ссылка на сообщение  Отправлено: 21.08.14 15:35. Заголовок: Благодарю, Ajenta! Н..


Благодарю, Ajenta! Не знал, что знаки < > работают в урке так, как положено.
Подскажите, а такой код будет верен, или?...
If M < or = N then GoTo код1
Else код2

Спасибо: 0 
ПрофильЦитатаОтветить
постоянный участник




Сообщение: 130
Зарегистрирован: 06.11.08
ссылка на сообщение  Отправлено: 21.08.14 15:48. Заголовок: Kalten пишет: Благо..


Kalten пишет:

 цитата:
Благодарю, Ajenta! Не знал, что знаки < > работают в урке так, как положено.
Подскажите, а такой код будет верен, или?...
If M < or = N then GoTo код1
Else код2



Нет не будет так нельзя писать, посмотрите справку если что, возможны <, >, <> - это не равно, =, <=, >=
ну и между ними or и and
в вашем же случае надо писать через then else. Подругому никак.

Я за мир во всём мире. За отдельно взятые инопланетные цивилизации ответственности не несу...Спасибо: 0 
ПрофильЦитатаОтветить



Сообщение: 3
Зарегистрирован: 21.08.14
ссылка на сообщение  Отправлено: 21.08.14 17:30. Заголовок: Написал примерно вот..


Написал примерно вот так:
:1
M =rnd3
N =RND3
If #N$ = #M$ then goto x
If #n$ < #M$ then goto x
Else
Pln Нет нет нет!!!
BTN 1,еще разок
End

Вроде работает,но не уверен,что это действительно верно, а точнее правильно.
Кстати,подскажите пожалуйста, возможна ли дешифровка файлов qs2, qs3? Т.е. Что это теоретически возможно- это понятно. Но есть ли утилиты, или какие либо редакторы для таких файлов?

Спасибо: 0 
ПрофильЦитатаОтветить
постоянный участник




Сообщение: 131
Зарегистрирован: 06.11.08
ссылка на сообщение  Отправлено: 21.08.14 19:19. Заголовок: Kalten пишет: Напис..


Kalten пишет:

 цитата:
Написал примерно вот так:
:1
M =rnd3
N =RND3
If #N$ = #M$ then goto x
If #n$ < #M$ then goto x
Else
Pln Нет нет нет!!!
BTN 1,еще разок
End

Вроде работает,но не уверен,что это действительно верно, а точнее правильно.
Кстати,подскажите пожалуйста, возможна ли дешифровка файлов qs2, qs3? Т.е. Что это теоретически возможно- это понятно. Но есть ли утилиты, или какие либо редакторы для таких файлов?




В урке нельзя просто так переносить на другую строку переменные и действия. Так работать не будет

if then else должны быть на одной строке. Или же перед оператором должен быть знак подчёркивания.

Или так:
:1
M =rnd3
N =RND3
If #N$ = #M$ then goto x
If #n$ < #M$ then goto x Else Pln Нет нет нет!!!
BTN 1,еще разок
End

или так:

:1
M =rnd3
N =RND3
If #N$ = #M$ then goto x
If #n$ < #M$ then goto x
_ Else
_ Pln Нет нет нет!!!
BTN 1,еще разок
End

В вашем же варианте else просто не сработает.

И ещё, не нужно переменные "открывать". Достаточно сравнения как в любом языке. Я бы написала так. чтобы можно было ещё и проверить результат.

:1
M =rnd3
N =rnd3
pln N = #N$
pln M = #M$
if N = M then goto x
if N < M then goto x
_ else
_ pln Нет нет нет!!!
btn 1,еще разок
End

Я за мир во всём мире. За отдельно взятые инопланетные цивилизации ответственности не несу...Спасибо: 0 
ПрофильЦитатаОтветить



Сообщение: 4
Зарегистрирован: 21.08.14
ссылка на сообщение  Отправлено: 23.08.14 04:48. Заголовок: Приветствую! Agenta,..


Приветствую! Agenta, Спасибо за помощь!
Вот,что не ясно:
Agenta Писала:
*
В урке нельзя просто так переносить
на другую строку переменные и действия. Так работать не будет if then else должны быть на одной строке. Или же перед оператором должен быть знак подчёркивания.
*
Может этого нельзя делать в FireURQ?
Т.к. в AKURQ1.28pre6 такой вот код работает, да и другие:
:1
M =rnd3
N =rnd3
pln N = #N$
pln M = #M$
if N = M then goto x
if N < M then goto x
else
pln Нет нет нет!!!
btn 1,еще разок
End



Спасибо: 0 
ПрофильЦитатаОтветить



Сообщение: 5
Зарегистрирован: 21.08.14
ссылка на сообщение  Отправлено: 24.08.14 19:53. Заголовок: Приветствую! Такая с..


Приветствую! Такая ситуация: имеется некое кол-во предметов,"к примеру 10", из которых можно взять только не больше 5-ти.
Подскажите,пожалуйста,как такое можно сделать? Т.е. чтобы стояло ограничение на 5 предметов? "список предметов планирую выводить через btn с использованием конструкции IF Then, чтобы как только предмет взял,то тот появлялся в инвентаре,а из списка исчезал.
Это, думаю, реализую,а вот ограничение как поставить,не знаю.

Спасибо: 0 
ПрофильЦитатаОтветить
постоянный участник


Сообщение: 96
Зарегистрирован: 02.01.09
ссылка на сообщение  Отправлено: 24.08.14 21:21. Заголовок: Kalten пишет: Приве..


Kalten пишет:

 цитата:
Приветствую! Такая ситуация: имеется некое кол-во предметов,"к примеру 10", из которых можно взять только не больше 5-ти.



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

:Локация 
pln Ты стоишь у кучи кирпичей.
btn Взять_кирпич, Взять кирпич
end

:Взять_кирпич
if inv_Кирпич>=5 then pln Ты понимаешь, что больше пяти кирпичей тебе не унести. else inv+ Кирпич & pln Ты берешь кирпич из кучи.
goto Локация
end


Если предметы разнородные, я бы ввела некую переменную, которая отслеживала бы количество предметов в инвентаре. При этом надо будет вручную увеличивать ее каждый раз, когда берется очередной предмет, и уменьшать, когда игрок избавляется от предмета. Например:

Количество_предметов=0 
:Локация
pln Ты стоишь у кучи игрушек.
btn Взять_куклу, Взять куклу
btn Взять_мишку, Взять мишку
btn Взять_машинку, Взять машинку
// и т. д.
end

:Взять_куклу
if Количество_предметов<5 then inv+ Кукла & Количество_предметов=Количество_предметов+1 & pln Ты берешь куклу. else pln Ты не сможешь унести в руках столько игрушек.
end

:Взять_мишку
if Количество_предметов<5 then inv+ Мишка & Количество_предметов=Количество_предметов+1 & pln Ты берешь мишку. else pln Ты не сможешь унести в руках столько игрушек.
end

:Взять_машинку
if Количество_предметов<5 then inv+ Машинка & Количество_предметов=Количество_предметов+1 & pln Ты берешь машинку. else pln Ты не сможешь унести в руках столько игрушек.
end


Спасибо: 0 
ПрофильЦитатаОтветить



Сообщение: 6
Зарегистрирован: 21.08.14
ссылка на сообщение  Отправлено: 11.09.14 18:31. Заголовок: Приветствую! Спасибо..


Приветствую! Спасибо, Vito! Есть еще один вопрос: в первой локации введена переменная с определенным числом. По ходу игры эта переменная меняет свое значение. Так вот, можно ли сделать как-то так,чтобы при нулевом значении переменной происходило то или иное событие? Имею ввиду,можно ли сделать так, чтобы в одном месте сделать примерно так:
If V1 < 1 Then GoTo Exit
и не повторять этот код во всех локациях,где значение V1 меняется?

Спасибо: 0 
ПрофильЦитатаОтветить
постоянный участник


Сообщение: 97
Зарегистрирован: 02.01.09
ссылка на сообщение  Отправлено: 11.09.14 20:37. Заголовок: Из "Описания URQ..


Из "Описания URQL", имеющегося на сайте:


 цитата:
Подробнее о Common метках:
Часто необходимо выполнять некую общую последовательность действий для всех локаций... Именно для этого есть
:Common метка - при вызове btn метка,Название метки на самом делается следующее: proc Common & GoTo метка к примеру, то есть вызывается Common и при встрече end идет выход из процедуры и только после этого уже переход на требуемую метку.
Но ведь для разных частей квеста порой требуется разные Common локации, поэтому системная числовая переменная Common отвечает за имя вызываемой локации: :Common_номер к примеру при Common=5 будет вызов :Common_5. Никаких ограничений по номерам (подряд или нет) не накладывается, для простоты рекомендуется использовать только целые числа. Если Common=-5, то вызов будет соотвественно :Common_-5.
Можно также обойтись и без использования локации Common вообще, например в КАЖДОЙ локации писать proc CommonLoc_#CommonLoc_N$, при этом будет происходить подобный же механизм(только имя Common локации будет :CommonLoc). Использование локации common сильно упрощает написание квестов, в которых надо вести учет ходов игрока (например, для введения игрового времени, голода, запаса энергии в лампе и т.п.)



Спасибо: 0 
ПрофильЦитатаОтветить



Сообщение: 1
Зарегистрирован: 28.12.14
ссылка на сообщение  Отправлено: 28.12.14 21:02. Заголовок: Убийство персонажа при использовании предмета


Я решил начать вовсю использовать use-метки для предметов.Но вот незадача - когда я дошел до "плохого" предмета(типа отравленного печенья и т.д.) я застрял - goto, btn и прочие команды работают, но после использования предмета меня отправляет на ту локацию, где я до этого был(а там и описание локации, и кнопки разные), то есть игрок при "смерти" вполне может нажать одну из этих кнопок и спокойно продолжить игру.Что мне делать? :(
Как-то так:
Скрытый текст


Спасибо: 0 
ПрофильЦитатаОтветить
постоянный участник




Сообщение: 145
Зарегистрирован: 06.11.08
ссылка на сообщение  Отправлено: 29.12.14 13:30. Заголовок: Юзай команду cls - ..


Юзай команду cls - это очистка экрана, тогда гг сдохнет, как ты хочешь :)

типа такого например

:место
inv+ Отрава
btn вернуться, Вернуться.
end
:use_отрава_Выпить

cls
pln ТЫ отравился и сдох.
goto конец
end




Я за мир во всём мире. За отдельно взятые инопланетные цивилизации ответственности не несу...Спасибо: 0 
ПрофильЦитатаОтветить



Сообщение: 2
Зарегистрирован: 28.12.14
ссылка на сообщение  Отправлено: 30.12.14 14:44. Заголовок: Ajenta Я так пробова..


Ajenta Я так пробовал. Для полной картины сойдет отакой код:
:место
pln Бла-бла-бла.
inv+ Отрава
btn вернуться, Вернуться.
end
:use_отрава_Выпить
cls
pln ТЫ отравился и сдох.
goto конец
end
:Вернуться
pln Бла-бла-бла


В конце злобный неуязвимый персонаж вполне может нажать на кнопку "Вернуться". Его хоть за стопицот локаций переноси, а старые кнопки останутся.

Спасибо: 0 
ПрофильЦитатаОтветить
постоянный участник


Сообщение: 669
Зарегистрирован: 25.05.05
ссылка на сообщение  Отправлено: 31.12.14 10:16. Заголовок: EudGenius пишет: Aj..


EudGenius пишет:

 цитата:
Ajenta Я так пробовал.


На какой версии программы Вы работаете?

У меня Ваш пример работает как надо.

clsb попробуйте?

Спасибо: 0 
ПрофильЦитатаОтветить



Сообщение: 3
Зарегистрирован: 28.12.14
ссылка на сообщение  Отправлено: 01.01.15 17:37. Заголовок: Korwin пишу под досу..


Korwin пишу под досурку.Обе версии.

Спасибо: 0 
ПрофильЦитатаОтветить



Сообщение: 4
Зарегистрирован: 28.12.14
ссылка на сообщение  Отправлено: 01.01.15 17:40. Заголовок: clsb вместо cls ниче..


clsb вместо cls ничего не дает :/ Даже не чистит экран.

Спасибо: 0 
ПрофильЦитатаОтветить
постоянный участник


Сообщение: 670
Зарегистрирован: 25.05.05
ссылка на сообщение  Отправлено: 02.01.15 19:02. Заголовок: EudGenius пишет: Ko..


EudGenius пишет:

 цитата:
Korwin пишу под досурку.Обе версии.


Несколько странный выбор, при всей моей ностальгической любви к досурке. FireURQ - отличный современный интерпретатор URQL. Лучший из всех. При этом - с "живым" и очень отзывчивым разработчиком.

Но если есть какие-то супер важные причины для использования именно досурки, то было бы логично пользоваться именно моим руководством по ней.
http://urq.plut.info/system/files/+URQL.doc

А там поискать описание оператора forget_procs - особенного для досурки


 цитата:
12). "proc <метка> "- передает управление на метку <метка>, то есть инструкции квеста выполняются с метки <метка>, но когда встречается "end" возвращает управление обратно, оператору, следующему за proc, при условии, что не было оператора forget_procs. (forget_procs - "забывает" все переходы по процедурам.)




:место
pln Бла-бла-бла.
inv+ Отрава
btn вернуться, Вернуться.
end

:use_отрава_Выпить
cls
pln ТЫ отравился и сдох.
forget_procs
goto конец
end

:Вернуться
pln Бла-бла-бла
end




Спасибо: 0 
ПрофильЦитатаОтветить



Сообщение: 5
Зарегистрирован: 28.12.14
ссылка на сообщение  Отправлено: 11.01.15 19:50. Заголовок: Korwin , единственна..


Korwin , единственная супер-важная причина использовать именно досурку - олдскульный интерфейс и отсутствие тормозов на любом ПеКа :) (а также нормальное использование ASCII- картинок, в досе любой символ одной ширины). Под Фурку надо много чего переписывать, хотя если бы в ней опционально включался дос-режим, было бы классно.Да и парсер под Фуркой будет выглядеть жутко(я до сих пор хочу сделать пускай и простой, но парсер под урку).
*ушел пробовать новый оператор*

Спасибо: 0 
ПрофильЦитатаОтветить



Сообщение: 6
Зарегистрирован: 28.12.14
ссылка на сообщение  Отправлено: 11.01.15 19:52. Заголовок: И, да, я читал именн..


И, да, я читал именно это руководство (хотя описания для малышей в нем нет).

Как мне убрать надоедливое дальше при выводе кучи pln?

Спасибо: 0 
ПрофильЦитатаОтветить
постоянный участник




Сообщение: 146
Зарегистрирован: 06.11.08
ссылка на сообщение  Отправлено: 12.01.15 11:25. Заголовок: EudGenius пишет: Ko..


EudGenius пишет:

 цитата:
Korwin , единственная супер-важная причина использовать именно досурку - олдскульный интерфейс и отсутствие тормозов на любом ПеКа :) (а также нормальное использование ASCII- картинок, в досе любой символ одной ширины). Под Фурку надо много чего переписывать, хотя если бы в ней опционально включался дос-режим, было бы классно.Да и парсер под Фуркой будет выглядеть жутко(я до сих пор хочу сделать пускай и простой, но парсер под урку).
*ушел пробовать новый оператор*



В фурке можно использовать моноширинный шрифт. Можно изменить интерфейс на досовский и спокойно делать всё, что нравится. Ни на одном компе она ещё не тормозила. А парсер под досурку будет таким же как и под фурку, в этом плане ничего не меняется - это всё одна и та же урка.

Я за мир во всём мире. За отдельно взятые инопланетные цивилизации ответственности не несу...Спасибо: 0 
ПрофильЦитатаОтветить



Сообщение: 7
Зарегистрирован: 28.12.14
ссылка на сообщение  Отправлено: 12.01.15 20:15. Заголовок: В фурке можно исполь..



 цитата:
В фурке можно использовать моноширинный шрифт. Можно изменить интерфейс на досовский и спокойно делать всё, что нравится. Ни на одном компе она ещё не тормозила. А парсер под досурку будет таким же как и под фурку, в этом плане ничего не меняется - это всё одна и та же урка.


*Ушел искать клевые досовские фичи в фурке*

Спасибо: 0 
ПрофильЦитатаОтветить
Ответов - 269 , стр: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 All [только новые]
Ответ:
1 2 3 4 5 6 7 8 9
видео с youtube.com картинка из интернета картинка с компьютера ссылка файл с компьютера русская клавиатура транслитератор  цитата  кавычки оффтопик свернутый текст

показывать это сообщение только модераторам
не делать ссылки активными
Имя, пароль:      зарегистрироваться    
Тему читают:
- участник сейчас на форуме
- участник вне форума
Все даты в формате GMT  3 час. Хитов сегодня: 0
Права: смайлы да, картинки да, шрифты нет, голосования нет
аватары да, автозамена ссылок вкл, премодерация откл, правка нет