Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript (http://www.flasher.ru/forum/forumdisplay.php?f=5)
-   -   Странный тамагочи (http://www.flasher.ru/forum/showthread.php?t=58816)

JuliWa 30.05.2004 14:32

Странный тамагочи
 
Доброго всем времени суток. У меня получается неприлично длинный вопрос, но я прошу проявить терпение по отношению к совершенному новичку :). Так вот. Мне нужно создать игрушку - некое подобие тамагочи. Ребенок его кормит, а он от этого растет. Ребенок заставляет заниматься спортом - а он худеет от переутомления и так далее. В игре присутствуют две "линии управления" - во-первых, на экране всегда есть кнопки "Кушать", "Заниматься спортом", каждая из которых открывает экран с выбором меню, и каждый выбранный пункт должен влиять на внешний вид этого самого тамагочи (то есть, если ему предложен пятый гамбургер за последние полчаса, то его видимо разносит, а цвет лица становится очень нездоровым :)). Но, кроме того, в определенное время должны выскакивать просьбы тамагочи о еде, а также вопросы о том, что ему предпочтительнее сделать в данный момент времени (например: "Мы с другом хотим отправиться в путешествие. Мне выбрать поход или поездку на автобусе?" Естественно, выбор опять меняет внешний вид существа. Хотелось бы, чтобы перед тем, как этому вопросу появиться, менялась бы и картинка - для логичности. Скажем, вопрос о том, сдавать ли зачет сегодня, было бы здорово задать на фоне школы).
Внимание, вопросы
1. Как сделать, чтобы я при нажатии на любую из созданных мной кнопок могла изменить цвет, толщину и изгиб губ существа?
2. Что написать, чтобы автоматически в случайном порядке выбирались и показывались пользователю вопросы (вот эти, о путешествии)?
3. Как заставить Flash понимать иврит?
4. Нужна некая функция, которая будет видеть нажатия на все кнопки и в зависимости от них считать, как будет выглядеть существо. Еще и ему об этом говорить. Куда мне ее вставить?

Заранее очень благодарна. Извините, что так длинно. Я действительно новичок, и мне сложно определить, что важно, а что нет. Для иллюстрации высылаю картинку. Никакого кода там нет, я пока не умею. Просто училась обращаться с инструментами

artfla$her 31.05.2004 00:56

Картинка просто СУПЕР! Скачивал правда долго..... Ты в следующей раз хоть поменьше файлы прикрепляй :D :D
Ладно, это я так. Отвечу, на что успею. Если хочешь сделать случайные вопросы своему зверю, то надо сначала создать массив этих вопросов, типа

questionsArray = ["Как тебя зову-у-ут?", "Пойдем сегодня пить?", "Сколько часов ты сидишь за компьютером?", "Кто автор этого тамагочи?"];

Далее вот так определяется случайный вопрос (вернее, его текст)

nowQuestion = questionsArray[random(questionsArray.length)];

Если хочешь прикрепить к каждому вопросу еще какой-то параметр, используй многомерный массив, например

questionsArray = [ ["Как тебя зову-у-ут?", "00:00:12"]];

Здесь во втором элементе первого элемента :) задно время, когда этот вопрос может выскочить. Обратиться к элементу многомерного массива можно так (на предыдущем примере показываю)

questionsArray[0][1] // - это время вопроса

Нажатия всех кнопок просто можно обработать функцией-обработчиком события OnMouseDown для _root-а.

_root.onMouseDown = function(){
acceptIsClick ? trace("Нажата кнопка принять") : "";
closeIsClick ? trace("Кнопка закрыть") : "";
}

Соответственно на кнопки повесь включение этих переменных, на accept - acceptIsClick = 1; и тп.

Цвет губ меняем переходом на кадр - gotoAndStop(N);

Извиняюсь за очепятки, тороплюсь. :)

dimarik 31.05.2004 17:57

в следующей серии мы расскажем о том, как научить тамогочу отправлять маме эсэмэски на мобилу и мессаги по емайлу, с жалобами о том, сколько гамбургеров пришлось слопать по желанию дитятки. :)

Просто шутка юмора вылезла после прочтения поста.

З.Ы. А почему бы не организовать массовое участие флэшеров в написании тамогочи на радость маме и малютки?

JuliWa 31.05.2004 22:34

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

"организовать массовое участие флэшеров в написании тамогочи на радость маме и малютки" - было бы здорово.

У меня есть еще вопросы.

1. Я не могу изменить губы просто проигрыванием другого кадра, в котором губы уже изменены. Изменения тут не нарисованные, а программные. То есть губы кривятся тем сильнее, чем в более стрессовом состоянии зверюга. На каждый стрессовый вопрос вешается определенный стрессовый балл, и уголки губ опускаются тем ниже, чем больше ответов, влекущих стресс, ввел ребенок. И наоборот. Вид губ определяется значением переменной Уровень_Стресса. Как с этим поступить?

2. Вопросы, которые случайно вылетают, должны, я думаю, выглядеть как стандартные мессаги Виндоус, например, но под ними картинка все равно должна быть (например, если сейчас "свободное время" по графику, то случайно вылетает вопрос "Я собираюсь в путешествие. Мне ехать или остаться смотреть ТВ?" Если выбор ребенка - "Смотреть ТВ", то картинка меняется на ТВ, а сообщение пропадает. И, соответственно, зверь "поправляется" и цвет его лица тоже делается не ахти). Это вообще возможно?

3. Функция-обработчик события увидит все кнопки? Во всех кадрах? А где ее положить, чтобы видела? (наверное, это я не должна спрашивать, но в книге как-то не описаны такие случаи странные :) или концептуальное решение неправильное :( )

Простите мне мою навязчивость, но других знакомых флешеров у меня нет :)

dimarik 31.05.2004 22:56

Цитата:

Я не могу изменить губы просто проигрыванием другого кадра, в котором губы уже изменены.
Очень даже можно. Пускай у Уровень_Стресса(MAX) = 10. Тогда десять нарисованных кадров помогут отцу русской демократии. На крайний случай shape или motion tween применить.

Цитата:

3. Функция-обработчик события увидит все кнопки? Во всех кадрах? А где ее положить, чтобы видела?
кнопку можно положить в отдельный слой, присутствующий во всех кадрах

artfla$her 01.06.2004 00:30

Используй глобальные переменные - _global.myVar. Можно также, если кнопка имеет большую вложенность, использовать _parent.myVar - ссылку на внешний клип. Если уж так хочется сделать программное искривление рта и других органов тамагочи, можно применить curveTo() - рисование кривых. Не помню уже ни параметров, ни действия этого метода... Поэксперементируй. А картинку можно сделать тоже (под окно в смысле). Для этого используй готовый компонент (а можно и мой, если нужен будет) загрузки картинок, и создай собственную компоненту, типа мессадж-бокса. У мэнэ пока нету такого, может на днях смастерю, тогда поделюсь :)

JuliWa 01.06.2004 18:46

СПАСИБО. :)

artfla$her 02.06.2004 00:37

Вложений: 1
Лови компоненту. Сделал на скорую руку - это мессадж-бокс.

JuliWa 02.06.2004 14:09

Распаковывается, но не открывается. Flash говорит: "Unexpected file format". :(

artfla$her 03.06.2004 00:17

Ставь Flash 2004. Если я сохраню как MX, то компонента будет работать некорректно. :)


Часовой пояс GMT +4, время: 00:50.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.