Как сделать?
…
Последний из Гаяр,
$perem[1] = ‘Privet’ - это строковая
perem[1] = 321 - это числовая.
а теперь про индексы
$perem[’дарова’] = ‘дарова’
perem[’odindvatri’] = 123
Тоесть числовые просто [i]где i любое число.
В индекс можно так переменную вставлять и она будет как число или же [$i] это уже строковый индекс тоесть $i = ‘stroka’ то бишь это текст.
Ну и под конец $i и i это разные переменные.
Ну и просто как пример мой недо инвентарь
Spoiler
clr
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!Оружие/Weapons
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
if weapon['dubinka'] > 0:
if $args[0] <> 'prov': nl 'У вас есть дубинка'
$weapon['dubinka'] = 'Дубинка'
end
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!Зелья/Potions
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
if potion['HitPoint'] > 0:
if $args[0] <> 'prov':
nl 'У вас зелье здоровья -- ' + potion['HitPoint'] + ' ' + '<a href="exec:
potion[''HitPoint''] -= 1
HP += 100
if Hp > HpMax: HP = HpMax
gs ''Инвентарь''">Выпить</a>'
end
prov['veschi'] = 1
end
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!Шлемы/Helmets
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
if helmet['leather'] > 0:
$helmet['leather'] = 'Кожаный шлем'
if $args[0] <> 'prov': nl 'У вас есть <<$helmet[''leather'']>>'
end
if helmet['iron'] > 0:
$helmet['iron'] = 'Железный шлем'
if $args[0] <> 'prov': nl 'У вас есть <<$helmet[''iron'']>>'
end
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!Броня/Armors
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
if armor['leather'] > 0:
$armor['leather'] = 'Кожаная Броня'
if $args[0] <> 'prov': nl 'У вас есть <<$armor[''leather'']>>'
end
if armor['iron'] > 0:
$armor['iron'] = 'Железная Броня'
if $args[0] <> 'prov': nl 'У вас есть <<$armor[''iron'']>>'
end
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!Штаны/Pants
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!Ботинки/Boots
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!Другое/Other
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
if other['HLAM'] = 1: if $args[0] <> 'prov': nl 'У вас есть рюкзак с книжками, тетрадями, ручками и тд.'
if other['kradRu4ka'] = 1:
if $args[0] <> 'prov': nl 'А вот ручка которую вы украли.'
$other['kradRu4ka'] = 'Ручка'
end
oleksandrigo,
Кавычек со скобками точно не надо?
Последний из Гаяр,
неа. Они скорее мешают. Зачем писать, то что не нужно?
oleksandrigo,
Ещё вопрос:
Я могу задать только текстовый индекс для массива с индексом из двух чисел формата :
массив[числовая_переменная0_числовая_переменная1]
?
Последний из Гаяр,
Честно это очень странный способ. Но здесь будет строка. Ну или же (числовая_переменная0_числовая_переменная1) это вообще станет одной переменной. Совершенно другой
massuv[’1_2’] = …
только с кавычками оно будет хоть как-то работать. Но итог, что индекс станет строковым. Можно поизвращаться немного и сделать как ты раньше.
massuv[’<<perem1>>_<<perem2>>’] =..
вот что-то что в теории может работать.
oleksandrigo,
Не знаю. Мне необходимо земельные участки поделить на фрагменты, формата [номер участка_номер фрагмента]. Как по другому это сделать я не вижу(
Последний из Гаяр,
massuv['<<№фрагмента>>_<<№участка>>']
просто индекс станет строковым здесь, но только индекс. Оно тебе не помешает. Менять твои №фрагмента на строковое значение(на $№фрагмента) не нужно.
Чтобы вывести какое-то определенное то
massuv['1_2']
будет показывать значение это переменной.
ps если без подвыражений (<<>>) то можно еще так
massuv[№фрагмента + '_' + №участка] =...
выводится так же
Доброго дня. Недавно начал изучать QSP начиная с классического плеера. Сейчас пересел на Quest Navigator из-за большего количества возможностей оформления и др. С языками программирования ранее не был знаком, с Css и Html тоже, но если в них я более-менее сносно разобрался, то с JavaScript всё плохо. Вопрос такой - можно ли подключить к игре библиотеку jQuery и как правильно использовать JavaScript для отображения в плеере? Что писать и куда? Пока что сообразил только, что подключение jQuery происходит через эту строчку, а дальше всё…
<script type="text/javascript" src="../standalone_content/skins/jquery-1.12.4.min.js"></script>
Как вызвать эту библиотеку, как использовать и как прописывать скрипт? Перерыл кучу информации, но так и не нашел ответа… Хочу сделать анимацию плавного раскрытия блока, однако получилось реализовать только появление блока по щелчку, а плавная анимация не получается…
Вопрос: как задать дефолтные настройки размера(размеров) экрана(экранов)? Тоесть чтобы при запуске игры у игрока уже были настройки выставленные мной.
oleksandrigo,
настройка окошек классического плеера.
нифига се, а так можно было???????
(простите за оффтоп, не сдержался)
Возможно, вопрос прозвучит максимально глупо, но…
Есть ли в QSP команда, которая отвечает за возврат на предыдущую локацию? Пример:
Есть локация, в которую можно перейти с нескольких других локаций. И нужно, чтобы каждый раз при нажатии на кнопку “возврат” возвращало не в определенную локацию, а на предыдущую.
Amadeus,
определённой команды нет. Но делается это весьма просто.
На самой первой локации в игре задаём локацию-обработчик события посещение новой локации:
$onnewloc = "onNewLoc"
Затем создаём локацию с именем onNewLoc и на ней пишем:
! эта строка прописывает в переменную $back_loc имя предыдущей посещённой локации:
$back_loc=$current_loc
! эта строка прописывает в переменную $current_loc имя текущей локации:
$current_loc=$curloc
! теперь воссоздаём возврат в виде действия, например:
act "Вернуться":
goto $back_loc
end
Если нужно действие, которое может провести по цепочке локаций в обратную сторону, сделать это можно, написав на локации onNewLoc следующий код:
Spoiler
if $back[]<>$curloc and back_act=0:
! если в последнем элементе массива нет названия текущей локации
! а так же если мы совершаем переход не по действию возврата
!записываем в последний элемент массива название текущей локации
$back[]=$curloc
end
! обнуляем переменную back_act, чтобы разрешить запись в массив $back, если мы захотим перейти на новую локацию
back_act=0
! создаём действие возврата
! только если есть куда возвращаться
if arrsize('$back')>1:
act "шаг назад":
! выставляем переменной-маркеру back_act значение 1,
! чтобы запретить запись в массив $back при возврате на предыдущую локацию
back_act=1
! непосредственно переход
! записываем во временную переменную название предыдущей посещённой локации
$args[0]=$back[arrsize('$back')-2]
! удаляем из массива текущую локацию
killvar '$back',arrsize('$back')-1
! переходим
goto $args[0]
end
end
А как сделать так, чтобы действие “Вернуться” появлялось не во всех локаций? А то при вводе этой команды она появляется во всех, что не удовлетворяет результату
Amadeus,
задай условием:
if $curloc='локация_такая-то':
act "вернуться":
...