А вот и боевая система "Арена"! http://hyperbook.ru/file13764029087384
Неактивен
А DD как всегда меня опередил
Ну в общем да. Там боевая система «Арена», а обсуждения боевых систем предлагаю перенести в эту тему.
Неактивен
Подскажите, пожалуйста, как сделать следующее:
Есть Параграф1, в котором сначала пару секунд должен выводиться прогресс бар в виде добавляющихся точек (......), после чего выводится Параграф2.
Заранее премного благодарю!
Неактивен
:: тест1 <<set $takt = 0>> <<repeat 'Повтор' 1>> :: Повтор .<<set $takt = $takt + 1>><<if $takt eq 5>><<stop 'Повтор'>><<br>>Конец отсчёта<<endif>>
Вот такой код из двух параграфов. В параграфе Повтор важно написать весь код в одну строку без единого пробела между командами, для того чтобы точки выводились в линию, а не перескакивали каждая на следующую строчку.
Параграф Тест1
<<set $takt = 0>>
Здесь задаём счётчик такт.
<<repeat 'Повтор' 1>>
Включаем повторение, с задержкой в 1 секунду.
Параграф Повтор
.
Выводим точку
<<set $takt = $takt + 1>>
Увеличиваем значение счётчика на единицу.
<<if $takt eq 5>>
Проверяем число повторений, в данном случае выводится 5 точек, за 5 секунд реального времени.
<<stop 'Повтор'>><<br>>Конец отсчёта<<endif>>
Если условие соблюдается (5 повторений), тогда повторение останавливается и на новой строке выводится сообщение (или ссылка).
Отредактировано Ergistal (20.08.2013 00:36)
Неактивен
Ergistal, огромное спасибо! Особенно за подробное разъяснение.
А задержка может быть меньше секунды? Скажем, полсекунды?
Уже прочитал в руководстве. Нельзя.
Отредактировано sosiskin (20.08.2013 00:49)
Неактивен
А через Loop сразу попробовал, но там есть очень хитрая загвоздочка в тех-задании. Попробуй.
Неактивен
Ergistal написал:
А через Loop сразу попробовал, но там есть очень хитрая загвоздочка в тех-задании. Попробуй.
У меня вот что получилось:
:: Start [[Test]] :: Test # Начальное значение счётчика <<set $time = 0>> # Запускаем повтор параграфа1 с интервалом 1 сек. <<repeat 'Passage1' 1>> # И сразу же показываем параграф <<display 'Passage1'>> :: Passage1 # Очистка экрана (т.к. параграф по таймеру добавляется к текущему) <<clrscr>> # Увеличиваем счётчик на 1 <<set $time++>> <<if $time eq 6>> # Если параграф1 вызывается 6-й раз (нарисовано уже 5 точек) останавливаем повторение <<stop 'Passage1'>> # И показываем параграф2 <<display 'Passage2'>> <<else>> # Иначе выводим точки в цикле. Который раз вызывается параграф1, столько и точек Loading<<loop $time>>.<<endloop>> <<endif>> :: Passage2 Hello world!
Неактивен
Morych
Да, отлично вышло обошёл загвоздку с задержкой! но для этого пришлось лишний repeat прицеплять. Зато у меня короче код вышел
Отредактировано Ergistal (20.08.2013 11:04)
Неактивен
Как можно в ссылке сделать переход на переменную?
<<if $сутки eq 1>>
__===''День [[(сменить)| {$сутки=2}$curloc]]''===__
<<else>>
__===''Ночь [[(сменить)| {$сутки=1}$curloc]]''=== __
<<endif>>
$curloc - переменная наименования локации задана в каждой локации.
напр.
#горы
<<set $curloc = 'горы'>>
-----------------------------
#лес
<<set $curloc = 'лес'>>
Отредактировано Вета (20.08.2013 14:57)
Неактивен
Вета написал:
Как можно в ссылке сделать переход на переменную?
<<if $сутки eq 1>>
__===''День [[(сменить)| {$сутки=2}$curloc]]''===__
<<else>>
__===''Ночь [[(сменить)| {$сутки=1}$curloc]]''=== __
<<endif>>
$curloc - переменная наименования локации задана в каждой локации.
напр.
#горы
<<set $curloc = 'горы'>>
-----------------------------
#лес
<<set $curloc = 'лес'>>
Я давно мечтаю про такую фичу))
Сейчас можно сделать таким образом:
:: горы <<set $curloc = 'горы'>> ===''Ночь [[(сменить)|Переход {$сутки=1}]]''=== :: Переход <<clrscr>> <<display $curloc>>
Неактивен
Morych написал:
Вета написал:
Как можно в ссылке сделать переход на переменную?
<<if $сутки eq 1>>
__===''День [[(сменить)| {$сутки=2}$curloc]]''===__
<<else>>
__===''Ночь [[(сменить)| {$сутки=1}$curloc]]''=== __
<<endif>>
$curloc - переменная наименования локации задана в каждой локации.
напр.
#горы
<<set $curloc = 'горы'>>
-----------------------------
#лес
<<set $curloc = 'лес'>>Я давно мечтаю про такую фичу))
Сейчас можно сделать таким образом:Код:
:: горы <<set $curloc = 'горы'>> ===''Ночь [[(сменить)|Переход {$сутки=1}]]''=== :: Переход <<clrscr>> <<display $curloc>>
Боюсь, как бы у меня остальное не нарушилось... Там же вкладки... Давай пилить Драгона, пусть сделает эту фичу.
К тому же мне надо сменить на день... И там еще с числами будет завязано потом...
ЗЫ: попробовала, не получается, как нужно
Отредактировано Вета (20.08.2013 15:55)
Неактивен
А вообще такая фича планируется?
А то у меня внезапно игра на КРИЛ на Аксме без нее перекочует на кусп, ибо альтернативной замены я не вижу, чтобы не порушилась конструкция геймплея.
ЗЫ: В версии 2.0 вроде планируется, да?
Отредактировано Вета (20.08.2013 16:35)
Неактивен
Вета написал:
А вообще такая фича планируется?
А то у меня внезапно игра на КРИЛ на Аксме без нее перекочует на кусп, ибо альтернативной замены я не вижу, чтобы не порушилась конструкция геймплея.
Итак, Вета пустила в ход мягкий шантаж, что же будет дальше?
Если не опасаешься, что я похищу твою идею для КРИЛа, можешь мне куда-нибудь в личку полный код игры показать. Так, по кусочку трудно сказать, где баг.
Неактивен
Написала
ЗЫ: Никакого шантажа, констатация факта в связи с невозможностью реализации )))
Неактивен
Возможно всё
Но только если мне вменяемо скажут, что надо сделать, а то сейчас и так голова пухнет
PS. И в тему предложений, пожалуйста.
Неактивен
Морыч, ты можешь это для Драгона правильно сформулировать?
Неактивен
Вета написал:
Морыч, ты можешь это для Драгона правильно сформулировать?
Попробовал сформулировать здесь. Посмотри и дополни при необходимости, а то ведь я написал, чего мне хочется. Вдруг, ты другое имела ввиду
Неактивен
Cheshire написал:
А можно как-нибудь отключить затухание/проявление текста при переходе? В определённых условиях очень мешает это «мигание».
Я у себя использую такую хитрость, как переход по добавляющей ссылке (с плюсом) и очистку экрана. При этом обязательно нужно передавать в ссылке параметр. Например:
:: Passage1 <<clrscr>> ===Text 1=== [[+Go to 2|Passage2 {$a = $a}]] :: Passage2 <<clrscr>> ===Text 2=== [[+Go to 1|Passage1 {$a = $a}]]
Неактивен
Просто изначально стоял запрет на вызов параграфа из самого себя. А указание параметра это обходит.
Неактивен
arudzo написал:
Ребята подскажите как сделать раскрывыющеюся ссылку? Урок данный на этом форуме прочёл, сделал как там написано (наверное?) но ничего не получается! Может кто нибудь покажет код готовой ссылки для ознакомления? Спасибо!
Параграф с такой ссылкой выглядит следующим образом:
:: НазваниеПараграфа <<clrscr>> [[+Название ссылки|НазваниеПараграфа {$признак1 = !$признак1}]]<<if $признак1>> ▼<<br>>Содержимое, которое появляется или прячется при нажатии на ссылку. Может быть не только текст, но и картинки.<<else>> ►<<endif>>
А в параграфе «Start» обязательно нужно указать изначальное значение признака:
<<set $признак1 = false>>
Неактивен