Посимвольный вывод текста
|
|
Hitorimaru | Дата: Воскресенье, 19 Октября 2014, 12:22 | Сообщение # 1 |
был не раз
Сейчас нет на сайте
| Добрый день. Помогите, пожалуйста, разобраться: как сделать посимвольный вывод на экран заданного текста? Эффект, наверное, достаточно элементарно делается, но подобрать рабочий код не могу. Находил иногда использование схожих приемчиков в примерах, которые были ориентированы на другие проблемы, из-за чего вычленить отвечающий за фишку с выводом текста код и понять его я не мог. Помогите разобраться - как можно это сделать? gml недавно начал штудировать, прошу объяснить доходчиво т.т
Под посимвольным выводом я имею в виду поочередный вывод символов вплоть до вывода всего текста на экран... думаю, я достаточно точно объяснил х.х
|
|
| |
JonLivingston | Дата: Воскресенье, 19 Октября 2014, 14:52 | Сообщение # 2 |
почетный гость
Сейчас нет на сайте
| Не знаю, как это делается на гамаке, но в общем виде я бы написал что-то типа:
Код i = i + time.deltaTime; if(i > 3) { write(str[x]); x = x + 1; //предварительно приравняйте ее к нулю i = 0; }
Код вставляется в метод обновления состояния игры (обычно Update называется). Если по-русски, то код каждые 3 секунды выводит следующий символ из строки str. Все, что Вам осталось, это адаптировать код под GML, которого я не знаю
"Почему труднее всего на свете заставить птицу поверить в то, что она свободна?" - Ричард Бах Наша первая игра Dark Forest Let's play на Dark Forest
Сообщение отредактировал JonLivingston - Воскресенье, 19 Октября 2014, 16:01 |
|
| |
Hitorimaru | Дата: Воскресенье, 19 Октября 2014, 15:07 | Сообщение # 3 |
был не раз
Сейчас нет на сайте
| Хм, чутка понятно, вроде, только в гамаке еще надо привязать к какому-то событию... и еще не уверен в создании счетчика по времени, что в гамаке за него там отвечает... А так-то да, логично-лаконично)
Сообщение отредактировал Hitorimaru - Воскресенье, 19 Октября 2014, 15:08 |
|
| |
MartinKitten | Дата: Воскресенье, 19 Октября 2014, 15:15 | Сообщение # 4 |
почетный гость
Сейчас нет на сайте
| Hitorimaru, alarm'ы. Или почитай про работу с системным временем. А так да. Лучше использовать массив.
Per aspera ad astra __________________
|
|
| |
Hitorimaru | Дата: Воскресенье, 19 Октября 2014, 15:26 | Сообщение # 5 |
был не раз
Сейчас нет на сайте
| Точно, точно, сейчас проверю.
|
|
| |
JonLivingston | Дата: Воскресенье, 19 Октября 2014, 15:59 | Сообщение # 6 |
почетный гость
Сейчас нет на сайте
| Цитата MartinKitten ( ) Лучше использовать массив. Строка (тип string) это и есть массив, массив символов. По крайней мере в тех языках, на которых я писал.
"Почему труднее всего на свете заставить птицу поверить в то, что она свободна?" - Ричард Бах Наша первая игра Dark Forest Let's play на Dark Forest
Сообщение отредактировал JonLivingston - Воскресенье, 19 Октября 2014, 16:00 |
|
| |
Hitorimaru | Дата: Воскресенье, 19 Октября 2014, 16:10 | Сообщение # 7 |
был не раз
Сейчас нет на сайте
| Блин, не получается запечатлеть в коде. В скрипте, нужный текст - это argument0. Однако, не смотря на то, что он состоит из текста, is not an Array. Блин, не могу написать эту штуку все равно...
Блин, работа со временем в гм какая-то жесткая и запутанная, не могу реализовать, помогите, пожалуйста.
Сообщение отредактировал Hitorimaru - Воскресенье, 19 Октября 2014, 17:51 |
|
| |
jayreck | Дата: Воскресенье, 19 Октября 2014, 18:47 | Сообщение # 8 |
участник
Сейчас нет на сайте
| мб так ? Курлык Курлык
g-null-dc Ippolit - тамагоч немного моего пиксель арта
|
|
| |
Hitorimaru | Дата: Воскресенье, 19 Октября 2014, 18:58 | Сообщение # 9 |
был не раз
Сейчас нет на сайте
| Цитата jayreck ( ) мб так ? Курлык Курлык Ооо, вполне похоже на правду, спасибо, буду пробовать. А то я такие извращения уже перепробовал... жесть индусская. Весь день угробил х)
В общем, тот вариант работает, но конфликтует с другими надписями, выводящимися в комнате... буду думать. Но по сути - проблема решена.
Сообщение отредактировал Hitorimaru - Воскресенье, 19 Октября 2014, 20:31 |
|
| |
XDominator | Дата: Понедельник, 20 Октября 2014, 21:20 | Сообщение # 10 |
постоянный участник
Сейчас нет на сайте
| Вообще в гамаке строка - не массив. Для того чтобы получить конкретный символ в строке, есть специальная функция, не помню как точно, вроде string_pos или вроде того. Переключаешь итератором символы по очереди и выводишь их на экран, всего и делов
Ghaarp
The soul lighter(Android, logic)
Zzzzombie RAGE!!!(For android)
|
|
| |
Hitorimaru | Дата: Вторник, 21 Октября 2014, 11:41 | Сообщение # 11 |
был не раз
Сейчас нет на сайте
| Цитата XDominator ( ) Вообще в гамаке строка - не массив. Для того чтобы получить конкретный символ в строке, есть специальная функция, не помню как точно, вроде string_pos или вроде того. Переключаешь итератором символы по очереди и выводишь их на экран, всего и делов Хоть я и не особо понял, но спасибо за вариант. Однако я уже разобрался с методом, описанным в ссылке выше и успешно осознал и адаптировал код. Метод оказался весьма органично-выглядящим для моей задумки, его я и развиваю :з.
|
|
| |