Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 1.0/2.0 (http://www.flasher.ru/forum/forumdisplay.php?f=93)
-   -   Привязать событие к времени суток (http://www.flasher.ru/forum/showthread.php?t=81551)

bee77 22.06.2006 13:57

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

попробовала переделать исходники часов, скачанные с этого сайта - не получается

Король 22.06.2006 14:51

что именно не получается? узнать теущее время?
открываем хелп и смотрим что такое класс Date
несколько строк на английском + 25 минут экспериментов с кодом, пока не получится работающий - и все готово

bee77 22.06.2006 15:09

Вот такой код написала, не работает

Код:

time=new Date()
hr=time.getHours()
min=time.getMinutes()
if(hr=14){gotoAndPlay(480);}
else {gotoAndPlay (1);}


Король 22.06.2006 15:14

при твоем коде у тебя hr всенда будет равно 14 потому что ты применила операцию присваивания (синтаксис - "=") вместо операции сравнения (синтаксис - '==')

bee77 22.06.2006 15:27

Код:

time=new Date()
hr=time.getHours()
min=time.getMinutes()
if(hr==14){gotoAndPlay(480);}
else {gotoAndPlay (1);}

не работает :(

Король 22.06.2006 15:29

Код:

time=new Date()
time = new Date();
hr = time.getHours();
min = time.getMinutes();
if (hr == 14) {
        trace("1")
} else {
        trace("2")
}

у меня - работает. сейчас часов как раз 14 и он выводит "1"

bee77 22.06.2006 15:33

может, эти точки с запятой лишние?

Morozov1982 22.06.2006 15:38

Ага, ещё и скобочи какие-то :)

Morozov1982 22.06.2006 15:39

Всё реально написано, пробуй!!!

bee77 22.06.2006 16:03

не работает:(((
извиняюсь за тупость, конечно....

Morozov1982 22.06.2006 16:11

А ты trace пишешь?

Если да, то этого не надо делать, это для проверки, замениего своим gotoAnd Play'ем.

bee77 22.06.2006 16:29

Может, в чем-то другом у меня ошибка?

Morozov1982 22.06.2006 16:31

А как ты определяещь, что у тебя не работает?
Что-то выскакивает, или...?

bee77 22.06.2006 16:33

ну да, про trace- то я поняла:)
кстати, пишет 2

bee77 22.06.2006 16:38

ну да, про trace- то я поняла:)
кстати, пишет 2

bee77 22.06.2006 16:47

Не работает - не идет и не играет с нужного мне кадра

Reijii 22.06.2006 16:50

исходник выложи, а то долго можно так в лотерею играть (

bee77 22.06.2006 17:07

Вложений: 1
тут все условно, конечно, просто, чтобы понять, что не так

Morozov1982 22.06.2006 17:17

Создай новый слой, назови его Actions и в первом его ключевом кадре размести тот скрипт, который ты написал в 476 кадре

bee77 22.06.2006 17:25

Сделала
теперь играет все время 480 кадр, независимо от того, какое время задаю в строке if (hr == 14) {gotoAndPlay (1);}
то есть, что бы не ставила вместо 14 - на 1 кадр не переходит

Morozov1982 22.06.2006 17:29

Я не знаю в каком часовом поясе ты находишься, но введи вместо 14 то время (часы), которое сейчас в твоём часовом поясе и будет играть с 1-го кадра.

bee77 23.06.2006 08:42

Разобралась:)
Ну естественно, я вводила то время, которое показывают мои часы в углу экрана.
А дело было вот в чем: у нас в Казахстане отменили перевод на летнее время, то есть, вместо 15 часов у нас 14. Там в настройках виндовса снимаешь галочку - летнее время - и порядок.
А флэш возвращает НЕПЕРЕВЕДЕННОЕ время! То есть, если я хочу, чтобы ролик играл в 14 часов, в коде надо писать 15.
Спасибо всем, кто помогал!

Король 23.06.2006 11:10

вот для этого и нужен трейс - роверить хотя бы - получает ли функция то, что ты думаешь. возилась с кадрами - а оказалось что вообще вызывается не то

Morozov1982 23.06.2006 11:54

Человек судя по всему немного не рубит, что такое trace :)

Скоро спросит: "А что сделать, чтоб не только в 14 часов срабатывало, но и в 15"

bee77 23.06.2006 12:56

не рубит, не рубит ;)
ну после того, как попробовала, стало понятно
я вообще первый раз эти actionsы вижу, не ругайтесь :)

Morozov1982 23.06.2006 13:38

Я это написал к тому, что тебе hr=14 надо будет заменить на hr>6&&hr<20, если хочешь в зависимости от времени суток работать (первая цифра - время рассвета, вторая - время заката)

bee77 23.06.2006 14:37

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

Morozov1982 23.06.2006 14:39

Вообще есть масса вариантов, но можешь попробовать просто прописать в том кадре, где должна происходить остановка stop();

Это, наверное самое простое решение :)

bee77 26.06.2006 13:11

В общем, всё получилось, спасибо большое, правда, есть одна неувязочка:)
когда просто делаю экспорт Ctrl+Enter, или делаю exe- файл - все работает нормально
когда делаю экспорт в обычный swf - работает криво
почему?


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

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