Издательский дом ООО "Гейм Лэнд"СПЕЦВЫПУСК ЖУРНАЛА ХАКЕР #26, ЯНВАРЬ 2003 г.

][-desktop - взгляд в небо

ilich (ilich@winfo.org)

Спецвыпуск Xakep, номер #026, стр. 026-086-4


ПУСТЬ ВСЕГДА БУДЕТ СОЛНЦЕ!

Как раз именно солнце в нашей флешке будет отнюдь не всегда, а лишь только днем. Создай новый символ клипа "C - Sun" для светила. Ровно в центре рисуй желтый круг, не превосходящий по размерам твою луну (если бы она была полной) - солнечный диск. Правда, солнце не совсем желтое, оно, скорее, белое - #ffffbb. На другом слое изобрази расходящиеся от солнца лучи. Нарисуй их широкими и редкими, знаешь, как в мультиках рисовали коммунисты годов семидесятых. Мудрые дядьки были. Знали, как лучи надо правильно изобразить. Прикольно выглядит также, когда эти самые лучи крутятся вокруг солнца. Помнишь, как в прошлый раз делали вращающуюся звезду на Кремль. Сделай с лучами то же самое. Только надо, чтобы они крутились не так быстро. Пусть на каждые девяносто градусов уходит кадров по двадцать. И зацикли это движение точно так же, как там.

Тащи теперь символ солнца на второй слой в "C - Sky", задавай ему имя "sun".

Располагай его так, чтобы центр его... а хотя какая разница, все в скриптах сделаем. По размерам мое светило получилось вместе с лучами где-то 150 на 150 пикселей. Скрипт для солнца и неба приведу тебе для моих размеров. Открой клип Кремля и залезь в панель "Actions" для символа часов (то бишь курантов).

И сделай там вот что...

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

onClipEvent (enterFrame) {

time = new Date();

hours = time.getHours();

minutes = time.getMinutes();

seconds = time.getSeconds();

// НОВОЕ НАЧАЛОСЬ

// ДЛЯ НЕБА

if ((hours>=5)and((hours<10)or((hours==10)and(minutes<=0)))) {

ad=((hours-5)*60+minutes+1)/3;

_root.sky.blue._alpha=ad;

} else if ((hours>=17)and((hours<22)or((hours==22)and(minutes<=0)))) {

ad=((hours-17)*60+minutes+1)/3;

_root.sky.blue._alpha=100-ad;

} else if ((hours>=22)or(hours<5)) {

_root.sky.blue._alpha=0;

} else if ((hours>=10)and((hours<17)or((hours==17)and(minutes<=0)))) {

_root.sky.blue._alpha=100;

};

// ДЛЯ СОЛНЦА

if ((hours<=5)or(hours>=22)) {

_root.sky.sun._alpha=0;

_root.sky.sun._x=2;

_root.sky.sun._y=660;

} else if ((hours>=5)and((hours<22)or((hours==22)and(minutes<=0)))){

col=(hours-5)*60+minutes;

_root.sky.sun._x=2+col;

if ((hours<13)or((hours==13)and(minutes<=30))) {

_root.sky.sun._y=660-col;

} else if ((hours>14)or((hours==13)and(minutes>30))) {

_root.sky.sun._y=col-360;

Назад на стр. 026-086-3  Содержание  Вперед на стр. 026-086-5