Игра: "Твой шанс, Азура."
Всем доброго времени.
Кидаю на ваш суд свою очень сырую игру.
Она ещё в самом своём начале, сюжета почти нет, но основные вещи реализованы:
-переходы по локациям
-дроп лута
-подбор врагов
-взятие квеста и отображение информации о нём
-какая-никакая боевая система (взят шаблон за основу и слегка модифицирован)
-прокачка уровней и статов
-много других основных вещей уже введено
В своём жанре это будет что-то вроде РПГ с сюжетом, но при этом дающую свободу песочницы.
Основная фишка должна быть в том, что повествование идёт от лица ГГероини, и вся игра - это как бы одна её большая история, которую она постоянно рассказывает.
Не смог вложить архив с ней, но если тут не запрещается, то дам ссылку на яндекс.диск:
скачать игру: “Твой шанс, Азура.” (0.24)
CoSinyS:
Нужны очень тестеры, что бы баги убить на ранней стадии.
CoSinyS:
Спасибо, помощи я не просил
Кто-то кому-то противоречит :)
Делать мне больше нечего, осталась только забота пароль подбирать. Я его просто стер.
evp, ну, ок-ок)
Я уже знаю, с тобой трудно спорить.
Тем более замечание с этими WAIT действительно правдивое, они меня тоже бесят. Я думаю над кнопкой, которая бы сразу всё перематывала без ожидания. Ещё надо в твоей версии посмотреть сейчас как выглядит)
А ещё что-нить скажешь?
Белый Шарик,
fifty-fifty, проблема в основном с текстом.
Я не вникал, дальше первой-второй локации не смотрел. Но… кто вас научил писать wait 1000*5? Почему бы не просто wait 5000?
CoSinyS:
P.S.: спасибо, грамматика всегда страдала у меня)
Не надо скромничать. Как раз в этом аспекте вы на высоте.
evp,
Чё-то не происходит ничего с предложенным тобой кодом, я так понимаю, там должно по буквам выходить?
Поковыряю, мож додумаю)
evp, прочитал, что wait 1000 - это 1 секунда, подумал будет мне удобнее по секундам писать)
CoSinyS:
Чё-то не происходит ничего с предложенным тобой кодом, я так понимаю, там должно по буквам выходить?
Поковыряю, мож додумаю)
Присваивание значения переменной $FOR куда поместили?
CoSinyS:
прочитал, что wait 1000 - это 1 секунда, подумал будет мне удобнее по секундам писать)
Секунда - это очень долго. Именно поэтому оператор wait оперирует миллисекундами.
evp,всё, прочитал тему про динамик, текст красиво вываливается, но мне так и хочется сделать паузу между строк)
“вэйты” не уберу, но сделаю их намного короче, твой цикл красиво замедляет вывод длинных предложений)
evp, должен признать, эта твоя подсказка, если не ускорила вывод текста, то, точно, выглядит визуально в 100 крат лучше!
Спасибо.
вэйтов оставил только 5 штук по 2 секи - между абзацами
Добавим в dynamic одну строчку
if MID($hello, letter, 3) = '<p>': wait 1000
Сам dynamic вынесем в локацию typing:
$hello = $ARGS[0]
dynamic $FOR, 'letter', 1, LEN($hello), 1, {
!Пауза между абзацами
if MID($hello, letter, 3) = '<p>': wait 1000
*clr
*nl MID($hello, 1, letter)
!Пауза между символами
wait 50
}
!Пауза между страницами
wait 1500
Локация history теперь приобретает благопристойный вид:
gs 'typing', 'Привет.<p>Меня зовут Азура.<p>Не то, что бы это моё имя... Cкорее, это прозвище, которое прилипло ко мне, потому что я всегда ношу с собой свой кинжал, на котором выгравировано:<center><p><b>"AZURA"</b><p></center>'
gs 'typing', 'Начну, пожалуй, с самого начала.<p>Когда я была совсем ещё ребёнком, я и мой отец жили на улицах этого города. Мы были бедны, как урожай на полях возле города Грайда. Единственное, что помогало нам не сгнить в подвалах - это отцовский кинжал "Азура".<p>Вечерами мы выходили в подворотни и поджидали кого побогаче. Отец набрасывался на нашу жертву с ножом, а я шманала карманы и убегала с украденным. Затем мы встречались в нашем секретном месте.<p>Но однажды он не пришёл...'
gs 'typing', 'Я прождала его, кажется, с неделю!<p>Конечно, я понимала, что, скорее всего, его уже нет в живых, но в тот момент меня это не расстроило - злость задавила все остальные мысли.<p>Злость на то, что теперь я одна должна бороться за существование. Злость на паршивца, из-за которого мой отец не вернулся.<p>Я была уже почти без сил, но мне всё же удалось выследить человека с кинжалом моего отца. Целый день мне пришлось выжидать подходящий момент, и этот момент настал...<p>Прекрасно помню, как эта тварь справляла нужду недалеко от лавки торговца рыбой, что находится у северных ворот, а я, затаив дыхание, подкралась к нему сзади. Он уже стал поворачиваться, но я успела вытащить кинжал, который висел у него на ремне!<p>Мне показалось, что кинжал стал одним целым с моей рукой, которая в тот момент, словно не зная усталости, наносила удар за ударом по истекающему кровью телу моего нового "приятеля".<p>Спустя какое-то время ярость отпустила меня, и кинжал в моей руке потяжелел...<p>С тех я пор не одна - со мной кинжал "Азура".<p>Да и не ребёнок я уже.'
gs 'typing', 'Теперь грабежом я занимаюсь редко. Вместо этого я научилась охоте, а иногда подрабатываю по найму.'
gs 'typing', 'Но вот однажды...'
gs 'typing', 'Я проснулась в своей комнате, и в тот момент вся жизнь моя перекрутилась...'
gs 'begin'
Ни одного wait, семь строк кода :) А все тайминги регулируются в одном месте - в локации typing.
Быстро, ты обновы строчишь))
Обновил предыдущий пост, оптимизировал чуть.
evp, о, код - огонь! Спасибо!
У меня такого опыта ещё нет) Первый мой гейм, и всего вторая неделя работы… Буду впитывать)
А я чтот так и не понял пока работу dynamic на этом примере. :(
dynamic $FOR, 'i', 5, 10, 1, {
dynamic $FOR, 'j', 9, 2, -3, {
*nl '<<i>> <<j>>'
}
}
При исполнении кода должно что-то происходить? У меня висит просто.