RU 📌 Pinned

Как сделать?

Dark[Ol(U23)leneri] #34 18.04.2010 22:57 6408 comments 2436892 views

Aleks Versus Moderator 26.12.2016 09:21 (9 years ago)

cleep,
есть тема синтаксис QSP для SublimeText, NotePad++.
стандартный блокнот windows, насколько я знаю, не поддерживает подсветку синтаксиса.

cleep:

то есть вместо закорючек, было бы видно нормальны команды

что ты имел в виду под словом “закорючки”, тайна для меня.

Aleks Versus,
вот что-то такое

Добрый день всем. Подскажите, если это возможно. Сейчас пишу игру, действие происходит в одном экране (основное описание), выбор игрока - это в нужном месте подсвеченные ссылки. При помощи такой конструкции (просто для примера):

‘Теперь пришло время <a href=“EXEC:GOTO’’глава1’’”>начать</a> игру…’

Однако, я недавно обнаружил, что можно делать активную ссылку таким образом:

– чтобы выделенное активное слово было любого цвета, а не так как в настройках QSP плеера
– чтобы это выделенное слово не было изображено с подчеркиванием, как это получается после применения конструкции <a href=…</a>


Вот, что мне нужно, но я не знаю как. Пароля от кода игры у меня нет и я не могу посмотреть. Уверен, что это что-то простое. И возможно, оно касается тонкостей именно работы HTML, в которых я пока не очень силен. Заранее спасибо, если кто подскажет или тыкнет меня носом, чтоб я почитал об этом приеме.

Edited at 26.12.2016 11:18 (9 years ago)
Aleks Versus Moderator 26.12.2016 16:58 (9 years ago)

Wol4ik,
в классическом плеере, чтобы ссылка не подчёркивалась, нужно определить для неё класс plain:

<a href="..." class="plain">ссылка</a>

Не знаю точно, как у Олегуса в играх организуется расцвечивание ссылок, я делал так:

<a href="..."><font color=#008888>ссылка бирюзового цвета</font></a>

Aleks Versus,получилось! Спасибо еще раз. Вот теперь, наконец, я обладаю практически безграничными возможностями в оформлении классических текстовых игр)))

Как вставить и описание/доп. описание кусок текста с отличным от остального массива текста шрифтом/размером шрифта?

Aleks Versus Moderator 28.12.2016 05:49 (9 years ago)

Hungry,
это делается с помощью html.

usehtml = 1
*pl "<font size=7 color=#000088 face=Arial>Большие буквы синего цвета шрифтом Arial</font>
<h1>Заголовок первого уровня</h1>
<i><b>жирный курсивный текст</b></i>"

Aleks Versus, премного благодарен!

Как сделать обработку команд через поле ввода, например если персонаж находится в комнате.

Spoiler

Стандартные команды движения задумано сделать по стандарту например:

act ‘Коридор’: gt ‘koridor’

И добавить команды которые надо вводить через поле ввода, именно на этой локации.

Например: “Искать улики” - соответственно poisk_ulik_komn =1
“Подбросить улики” - соответственно podstava_ulik_komn =1, geroin -1

Самое главное что бы эти команды были введены через ПОЛЕ ВВОДА.

Aleks Versus Moderator 05.01.2017 15:57 (9 years ago)

Gefestions,
Всё достаточно просто.
Создаём специальную локацию — обработчик строки ввода. Название может быть любым, но я обычно называю “inputText”.
Далее, указываем плееру, что именно эта локация отвечает за обработку строки ввода. Для этого в самой первой локации в игре пишем:

$usercom = 'inputText'

Теперь, все команды, которые доступны игроку через поле ввода, прописываем на локации “inputText”:

! если игрок ввёл текст "искать улики"
if LCASE($user_text) = 'искать улики':
	! если действие происходит в комнате с уликами
	if $curloc = 'комната_с_уликами':
		! находим улики
		poisk_ulik_komn =1
	else
	! иначе дело происходит где-то ещё
		*pl 'Глупо искать улики там, где ничего не происходило.'
	end
end
! или так, если удобнее:
! если игрок находится в некоей комнате
if $curloc='обычная_комната':
	! если игрок вводит команду подбросить улики
	! и улики ещё не подброшены
	if LCASE($user_text)='подбросить улики' and podstava_ulik_komn=0:
		podstava_ulik_komn=1
		! улики подброшены, героиним
		geroin-=1 	&	!	или geroin+=1 не знаю
	elseif LCASE($user_text)='подбросить улики' and podstava_ulik_komn=1:
	! иначе, если команду опять вводят, но улики подброшены
		*pl 'Я уже подставил бедолагу. Зачем тратить на него столько герыча?'
	end
end

Функция $user_text возвращает текст, введённый в поле ввода.
Функция LCASE - переводит все символы строки в нижний регистр. Это позволяет игроку вводить “искать улики”, “Искать Улики”, “ИСКАТЬ УЛИКИ” или даже “ИсКаТь УлИкИ”.
Обработка локации inputText будет происходить в тот момент (если я правильно помню), когда игрок ставит курсор в поле ввода (набирает текст) и нажимает Enter.

Подскажите, пожалуйста, как вставить видео в quest navigator?
Вот пример кода, где в одной из игр на quest navigator проигрывается видео:

'<video autoplay loop ><source src="content/example.webm" type=''video/webm;''></video>'

И видео таки играет.
В моей игре такого вида код не работает. Что нужно, чтобы видео заработало? Можно ли как-то использовать видео в форматах wmv или mp4? Заранее спасибо.

Aleks Versus Moderator 05.01.2017 17:39 (9 years ago)

Deagle,
где-то на форуме писали, что mp4 поддерживается.
попробовать можно следующее:
пережать видео, проверить пути, проверить корректность кода (если это код не из твоей игры, приведи код из своей).
Почитать вот эти сообщения/темы.

Вот конкретно мой код:

'<video loop src="content/video1.WebM" width="800" height="400" autoplay />'

Ну и пробовал так же как указано в прошлом сообщении, пробовал без параметров высоты, ширины
Просто черный прямоугольник и видео не воспроизводится (ни webm, ни mp4).
С путями все в порядке, если меняю на картинки, гифки из этой же папки (ну и код соответственно меняю под картинку) все нормально работает.
C видео тоже все в порядке, брал и видео из работающей игры, да и свое туда вставлял, все работает.
В чем проблема-то? Может надо что-то глобальное прописать, чтобы видео работало? (по типу USEHTML = 1)

Aleks Versus Moderator 05.01.2017 19:39 (9 years ago)

Deagle,
странно. У меня тоже ни одна видяшка не запускается. Точно помню, что работало.
А что за работающая игра? Скинь ссылку в личку, надо глянуть.

Давно не задавал глупых вопросов.
Все вроде просто, но опять где то ошибки. Задача есть Н-ное количество героев, нужно каждому присвоить 1-но из 5-ти “оружий”.

К примеру:
m_1 = ‘Нож’
m_2 = ‘Заточка’
m_3 = ‘Кинжал’
m_4 = ‘Сабля’
m_5 = ‘Меч’

1WHero = M+”_”+rand(1,5)

pl ‘<<1WHero>>’

Пробовал по разному, и с квадратными скобками и с обычными. Максимум чего добивался это в строке pl надпись M_1

Log in or Register to post comments.