Просмотр полной версии : Задача: Диалог
SlayerDUDE
05.01.2014, 04:58
Hi! В универе дали задачу создать анимированный опросник.
Суть: На экране есть персонаж. Слоем выше располагается табличка с вопросами.
В слое с персонажем так же располагаются ответы на вопросы, т.е. несколько вариации того,
какая анимация заиграет при выборе одного вопроса из той самой таблицы.
Схема проекта:
[Слой0, имя:Вопросы]
*[Кадр1: Вопрос А; Вопрос Б; Вопрос Ц]
*[Кадр2: Вопрос Ы]
[Слой1, имя:Ответы]
*[Кадр1: СимволX]
*[Кадр2 - СимволY]
*[Кадр12 - СимволY2]
*[Кадр4 - СимволZ]
*[Кадр24 - СимволZa]
В примере выше я пытался показать, что в слое0 вопросы - это обычные кнопки, а в слое1 на таймлайне, к каждом кадре лежат символы, в которых и запакованы анимации ответов.
Как сделать так, :
1. чтобы каждый вопрос был привязан к своему символу?
2. чтобы в вопросе были подвопросы. К примеру после того, как ответ на вопрос Ц получен, показалась таблица, что на 2м кадре с вопросом Ы и ответом был СимволZa?
3. чтобы вопрос можно было задать еще один раз, но ответ уже был немного изменен?
Так, к примеру, однажды вопрос Б уже был задан, захотелось задать его еще раз, но теперь вместо символаY заиграла анимация символаY2.
4. чтобы заданные 2жды вопросы исчезали, либо тускнели?
Надеюсь в вашей помощи!
P.S: прошу не посылать меня штудировать учебники/справочники по AS3, я уже около недели этим занимаюсь в свободное от работы время.
Kind regards, Артур.
Eric Gurt
05.01.2014, 15:15
Что если всю анимацию сделать на одном таймлайне, первый кадр каждой анимаци как-то назвать, а при нажатии на кнопки gotoAndPlay("название кадра"); ?
SlayerDUDE
05.01.2014, 16:35
Спасибо за ответ! Наткнулся на подводный камень. Порядок моих действий:
слой 1 - создал 15 кадров, в каждых 5ти нарисовал разные анимации
слой 2 - создал 3 кнопки, выбрал одну, F9: Current selection cannot have actions applied to it.
Прошерстил инет на болезнь, асашаевцы говорят, мол, AS3 не поддерживает программирование кнопок, так что либо проект нужно даунгрейдить до AS2, либо искать другой выход без использования кнопки.
Есть идеи?
Не использоввать AdobeFlash и писать все программным способом. там и кнопки вам будут и все остальное
SlayerDUDE
05.01.2014, 17:51
Спасибо за ответ! Дело в том, что нужна именно живая анимация, так то конечно и в делфи можно это реализовать, но... опять же нужна анимация. Вообще была идея задействовать движок RenPy, что используется для создания визуальных новелл, но он дает только статичные изображения.
Я думаю имеется ввиду лучше отказаться от перехода по кадрам туда-сюда. Всё сделать в одном кадре, и вся логика (когда, какую анимацию проигрывать, что показыать или скрыть) - сделать с помощью кода, а не с помощью кадровых переходов.
SlayerDUDE
05.01.2014, 18:42
Спасибо за ответ! В таком случае не подскажете как это сделать? Прошу дать хотя бы наводку, примеры...
Akopalipsis
05.01.2014, 18:44
AS3 не поддерживает программирование кнопок
То есть, если нарисовать прямоугольник и повесить на него событие клика, клик не сработает?
Мне кажется, что Вы не правильно поняли. Или я..
Спасибо за ответ! В таком случае не подскажете как это сделать? Прошу дать хотя бы наводку, примеры...
хранить где-то JSON(или XML) всех вопросов такой структуры (на примере JSON)
"question":[
{
"number":1, //номер вопроса
"text":"Сколько будет 2+2 ?",//текст вопроса
"A":"5",//ответы
"B":"1",
"C":"4",
"answer":"C" //правильный ответ
},
{
"number":2,
"text":"Как зовут Пушкина?",
"A":"Вася",
"B":"Петя",
"C":"Коля",
"answer":"B"
}
]
потом подгружаете JSON во флешку, делаете функцию, которая будет создавать(случайные) классы-вопросы, которые и будут размещены на сцене, нажимаете на правильный ответ, проверяется случайная анимация, как-то так,
с кнопками нет никаких проблем, забудьте о том что вы прочитали.
AS3 не поддерживает программирование кнопок, так что либо проект нужно даунгрейдить до AS2Имеется в виду написание скрипта "на самой кнопке", как это было в AS 0.5, то есть когда не было языка а был только набор скриптовых команд. AS2 еще поддерживал такой механизм для совместимости, в AS3 это совершенно невозможно))) Но это же не значит, что "нельзя программировать кнопки", не смешите.
В таком случае не подскажете как это сделать?Перестать воспринимать флэш-ролик как киноленту с метками на кадрах. Представьте это как живую презентацию — вам задают вопрос, вы выбираете нужную кассету и вставляете в проектор.
Кассеты это отдельные ролики (МувиКлипы), которые Вы добавляете на экран ("на сцену") когда нужно и затем убираете. Сам экран "неподвижен", у него нет кадров и таймлайна. Он как рабочий стол, на котором Вы открываете один ролик, другой. Ролики хранятся в библиотеке, им присвоены классы. Вы создаете экземпляр нужного класса и добавляете его в отображение, затем убираете и добавляете другой.
SlayerDUDE
05.01.2014, 19:41
Спасибо за ответы!
>>нельзя программировать кнопки
Согласен, немного перегнул, ибо если бы это и было так, смысл в кнопках вообще бы пропал.
Что касается выше написанных ответов, буду пробовать, правда сомневаюсь, что что-то получится с моими то никакими знаниями программирования. Вот так бывает, когда уборщику дают докторскую работу =)
Тем не менее если найдутся энтузиасты объяснить на пальцах как реализовать мои задачи, буду примного благодарен, в долгу не останусь!
Ну а пока продолжу создавать анимации ответов и паковать их в мувиклипы...
Akopalipsis
06.01.2014, 00:30
Если ещё не кто не откликнулся, то могу ПОПРОБОВАТЬ помочь, но с одним условием - Вы сделаете fla проект с двумя анимациями, который будут разделены на клипы и сохранены в библиотеке. Так же их размеры должны быть реальными. И ещё пару вопросов и ответов. И чтобы анимация и вопросы были без чего либо, что может испортить чаепитие. И тут всё выложить в архиве.
не кто Некто никогда не откликается)))
могу ПОПРОБОВАТЬ помочь
Смотря что нужно ТС, хочет ли он научиться, или же ему нужен готовый к сдачи проджект, мне почему-то кажется что копипаст предпочтительней для ТС. ) А вообще, я придерживаюсь такого правила: Есть проблема - она не имеет решения, есть задача - она всегда имеет решение - следовательно чтобы решить проблему нужно разбить ее на задачи. Так и вы, нужно разбить проблему на задачи, и тогда форумчане помогут, каждый по отдельному пункту, а так вы просите что-то из рода "Научите меня на пальцах как строить корабль".
А вообще я бы сравнил флеш с Фотошопом, если вы там когда то работали, там есть слои, в слое можно еще создавать слой, и так далее. Так и во флеше, есть у вас экран, вы добавляете на него слой вопроса, в слоу вопроса добавляете слои ответов, кнопок, текстов вопроса и анимацию, когда пользователь ответил на вопрос, удаляем слой вопроса и заного создаем слой другого вопроса.
SlayerDUDE
06.01.2014, 15:50
Огромное спасибо за ваши ответы, господа! Я рад, что попал в позитивную аудиторию.
>>Isfet: Смотря что нужно ТС, хочет ли он научиться, или...
Хочу научиться! И я понимаю, что учиться придется многому, на это нужно время которого у меня, с одной стороны предостаточно - на работе к примеру, с другой стороны проект мне универу нужно засветить в эту среду, так что поджимает время... =(
>>Akopalipsis: могу ПОПРОБОВАТЬ помочь...
Вам отдельное спасибо за попытку! Как буду дома набросаю 3 анимации-ответы и табличку с вопросами.
А вообще у меня идея: я набросаю полную презентацию того, что мне нужно и выложу демку сюда +архив с исходником.
>>in4core: Некто никогда не откликается)))
Думаю "Никто никогда" будет правильней :D
Еще раз всем спасибо.
Akopalipsis
06.01.2014, 16:25
я набросаю полную презентацию того, что мне нужно и выложу демку сюда +архив с исходником.
Сразу скажу, что я только учусь и полная Ваша презентация меня может только запутать.
Так что сделайте, как я просил ранее. А потом Вы её сами доделаете.
ZackMercury
08.01.2014, 15:47
>>in4core: Некто никогда не откликается)))
Думаю "Никто никогда" будет правильней
Это вообще-то был сарказм(если я правильно понял).
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.