![]() |
работа с таймером
Здравствуйте, такой у меня есть вопрос, например на уровне есть предметы,которые двигаются, задумал сделать задержку, вспомнил о таймере, но вот есть такое но - если допустим на уровне два предмета с задержкой в движении, это что нужно два таймера создавать, а если на уровне много предметов с задержками.. и вот что то в голову не приходит как можно упростить, например на несколько предметов вешать, еще смысл такой что у каждого предмета может быть своя задержка по времени или например своя траектория движения
У кого какие мысли есть на сей счет? |
Вы довольно сумбурно изложили свои мысли, тем более без кода, какой вопрос, такой и ответ. Можно вешать на 1 таймер обработку нескольких предметов (тогда задержка у них будет синхронная). Можно написать функцию в которой будет создаваться локальный таймер с нужной по времени задержкой, который будет отрабатывать на каждом конкретном предмете (в этом случае нужно следить чтобы удалялся слушатель на таймер, и он сам удалялся сборщиком мусора - иначе если предметов будет много, будет нехилая утечка памяти). Ну а хотите что то более конкретное задавайте более конкретные вопросы.
|
ну примерно так
Код AS3:
Код AS3:
у каждого предмета разные координаты предметы опускаются и поднимаются, из кода например видно что на втором предмете я делаю задержку, а на первом он тупо опускается и поднимается |
Если честно, то не совсем понимаю проблему в создании нескольких (пусть хоть 50) таймеров. Вряд ли это "повесит" вашу флешку. У вас же там не 5000 таймеров, так что нет смысла оптимизировать, на мой взгляд.
Как-то делал тест, подписав много предметов на ентерФрейм и на таймер для каждого объекта. И результат был не сильно отличающийся, куча таймеров работали где-то на 5% медленнее и всё. Но объектов было много, что вряд ли часто встречается в реальной ситуации. |
у тс проблемы в организации кода.
|
Цитата:
И что Вы ждете? Чтобы ТС начал Вас умалять и восхвалять после чего Вы объясните ему, какие именно проблемы? И это, типа, "я сказал, а Вы теперь подорвались объяснять"? Или ещё чего Вам показалось, что Ваше мнение, настолько ценно, что форум и посещают, только из-за Вас?))) |
Цитата:
samana - я в принципе думаю что да, вряд ли буду использовать огромное количество, но иногда так хочется написать универсальнее, что бы было меньше кода,иногда получается,а вот с таймером чета прям в ступр .. наверное так и сделаю как вы говорите, если уж совсем мозг поплавится от дум)) Ну я думаю что продав игру буду глубже изучать, а пока для понимания как продавать, как организовывать конечно будет много мест не продуманных, лишних, как один человек говорил что лучшее написание это тренировка, писать,пробовать, никто так сразу не пишет гениальный код, или правильный. На лом найдется другой лом, так же и с людьми, кто то напишет,другой исправит еще правильней, если гнаться за тем что правильно а что нет то никогда не напишешь игру, или напишешь через год, если желание не упадет до этого))) Добавлено через 24 минуты кстати samana я нашел загрузчик на cs системы http://flashgamedev.ru/viewtopic.php?f=6&t=9896, что, кто думает насчет его подхода? я вот не понял зачем там все пихать в embed_clip, если прелодер выступает как главный класс то в нем stop() прописать а во второй кадр накидать ресурсы. пытался написать но что то с акаунтом у меня там, как будто отправляю сообщение но оно не появляется, и ошибок вроде нет о нарушении. |
Цитата:
|
Цитата:
Цитата:
По теме внесу свою лепту. Где-то читал что все же таймер не очень хорошо и лучше временн`ые события вешать на frame и с синхронизацией нет проблем. там же на синхроне все контролировать можно. Еще насчет организации кода я тоже не соглашусь. Очевидно что перед приступлением к работе вы не составили элементарного плана. Я лично пруступаю к работе имея подробный план действий разделенный на этапы. В данный момент общая тетрадь исписана набросками зарисовками схемами и чертежами. Ну это все же моё личное мнение, поэтому несогласных прошу воздержаться от грубости в мой адрес. |
| Часовой пояс GMT +4, время: 20:15. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.