Как сделать?
…
fau2,
я уже сказал, без пересборки плеера ничего из этого сделать нельзя.
как сделать что-то вроде быстрого теста, выдается текст с вопросом, потом на несколько секунд появляются варианты ответов и если не успел нажать на правильный ответ или вообще нажать, то задается следующий вопрос… что то навроде действия по таймеру, только я не совсем понял как это оформить, чтобы
текст вопроса
через 30 сек появляются ответы
act ответ1
act ответ2
act ответ3
через 5 сек переход к другому вопросу
текст вопроса
через 38 сек появляются ответы и так далее
Aaaspavel,
локация counter:
Spoiler
! и т.д.
if marker=5 and (time + 30000)<=msecscount:
time=msecscount
act 'первый ответ':
point +=5
clr
pl point
*clr
cla
marker=7
end
act 'второй ответ':
point +=10
clr
pl point
*clr
cla
marker=7
end
act 'третий ответ':
point +=20
clr
pl point
*clr
cla
marker=7
end
marker=6
end
if marker=4 or (marker=3 and time+5000 <=msecscount):
*clr
cla
'Вопрос номер 2. Сейчас появятся варианты ответов, и у вас будет только пять секунд, чтобы выбрать один из них.'
marker=5
end
if marker=2 and (time + 30000)<=msecscount:
time=msecscount
act 'первый ответ':
point +=5
clr
pl point
*clr
cla
marker=4
end
act 'второй ответ':
point +=10
clr
pl point
*clr
cla
marker=4
end
act 'третий ответ':
point +=20
clr
pl point
*clr
cla
marker=4
end
marker=3
end
if marker=1:
'Вопрос номер 1. Сейчас появятся варианты ответов, и у вас будет только пять секунд, чтобы выбрать один из них.'
marker=2
end
if marker = 0:
time = msecscount
marker=1
end
clr
pl point
вывод point сделан исключительно для проверки.
Друзья! Дописываю игру и периодически вылавливаю всякие недоработки и ошибки с помощью QSP_Analyser. Сейчас, занимаясь уже только текстами, а не кодом, случайно наткнулся у себя же на такую строчку: “if x > 100 and y:”, где, как видите, “y” просто “y” без всяких там больше-меньше-равно. Разве это не ошибка? Строчка эта есть давно и находится в очень важном игровом месте, куда игрок постоянно возвращается, но при многочисленных тестах никакой ошибки не выскакивало и Analyser тоже ее не находит.
Если это не ошибка, то, что собственно, происходит, если переменную оставлять таким образом?
mkir,
если переменная отлична от нуля, утверждение верно.
y = 0
if y:
"игрек равно нулю"
end
y = 1
if y:
"игрек равен единице"
end
y = -1
if y:
"игрек равен минус единице"
end
Aleks Versus,
ничё не понял, вы предлагаете мне всё сделать в одной единственной локации?
Aaaspavel,
я предлагаю воспользоваться локацией-счётчиком. Во скольки единственных локациях будешь делать, это уже тебе решать. Но вот рабочий пример. Как я понял, ты не мог представить, как это реализуется. Я показал наглядно. Допили до варианта, который тебе нужен.
События, привязанные к действительному времени, можно контролировать только через локацию-счётчик. По-крайней мере активные действия ты больше никак не сделаешь. wait лишит возможности выбирать вариант в течении 5 секунд.
Доброго времени суток, камрады)
Подскажите, есть ли возможность убрать разворачивание экрана в классике? ( или как то регулировать размер окна при разворачивании)
мм, не совсем то.
Моя игрушка подточена под определенный размер и разворачивание в полноэкранку портит весь оформительский замысел.
qspgui.cfg , насколько я понял, задает только размер окна при запуске. или разворачивание там тоже регулируется?
Sin,
а. Отключить разворачивание нельзя.
К тому же у всех людей разные мониторы. Для оформления с фиксированными размерами это плохо.
С горем пополам прикрутил время и календарь. Время меняется при переходах. А как теперь сделать постоянно идущее время, независимое от действий? Но так чтобы часы , дни недели и календарь остались и время можно было поменять из строки ввода.
Сергей,
делай увеличение времени в COUNTER.
Всем привет. Подскажите, пожалуйста, как ограничить число посещений локации за день . Т.е. 3 раза зашёл - запрет , день сменился - можно опять 3 раза зайти .Календарь вот такой:
clr
!Время!
:minutplus
if minut<55:
minut=minut+5
if minut=55:
minut=minut+4
end
if minut>55:
minut=minut=0
set hour+=1
set bodro=bodro+10
end
:hourplus
if hour>=24:
set day+=1
set week+=1
set hour-=24
if hour>=24:jump’hourplus’
end
:weekplus
if week>7:
set week-=7
if week>7:jump’weekplus’
end
if day>31:set month+=1 & set day-=31
if month>12:set year+=1 & set month-=12
В стартовой локации прописано:
$ONNEWLOC=‘stat’
Сергей,
Ну как вариант:
Код в локации, в которую 3 раза заходишь:
Perem_zahod+=1
Код в локации, откуда заходишь:
act 'Перемещение в нужную локацию':
If Perem_zahod<3: goto 'Нужная локация'
end
Код в локации ‘stat’:
if day-day_last>0: Perem_zahod=0
day_last=day