Форум 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)
-   -   AS2 prototypes, ООП и прочее (вопрос к гуру) (http://www.flasher.ru/forum/showthread.php?t=67217)

PinkPong 27.07.2005 22:03

AS2 prototypes, ООП и прочее (вопрос к гуру)
 
Доброго времени суток, Господа... и Дамы (если таковые имеются)

хочу вот спросить у вас совета...
задача следующая:

1. есть к примеру 2 клипа - mc1 mc2
2. нет желания для каждого из них прописывать *.onPress
3. значит есть желание написать один для всех *.onPress
4. соответственно у каждого свое поведение при этом

ВОПРОС:
что же лучше?
1. сделать *.prototype.onPress и в зависимости от this.state делать нечто внутри прототипа
2. написать просто функцию, которая будет вызываться из каждого *.onPress (внутри функции в зависимости от this.state делать нужное)

да... this.state - это просто состояние клипа (true/false)

интересен Ваш ответ с точки зрения опытного ООПэшника (во флэш хотя-бы)....
хотя говорят, что AS это совсем не ООП (но в эту сторону углубляться не будем :D )

почему я это спрашиваю ?
1. ну потому что сам не знаю :D
2. надоело делать copy&past из старых проектов в новые (видимо пора подойти серьезно к классам и прочему)

Король 27.07.2005 22:50

и при чем тут ООП и гуру? пишешь одну функцию, в цикле прописываешь ее для событий скольких угодно мувов, вызываешь с параметрами (допустим, присваиваешь в том же цикле каждому муву свой state или что угодно)

PinkPong 27.07.2005 23:28

:)
ладно про гуру проехали...

а ООП....
интересно как ПРАВИЛЬНО строить приложение согласно принцЫпам этого самого ООП...

вопрос видно я задал не так...
хорошо...

mc1
mc1.state=true/false

onPress & true = передвинутся в точку А
onPress & false = вернуться назад

*********************************

mc2
mc2.state=true/false

onPress & true = visible
onPress & false = inVisible

и таких mc1 - 10 шт, mc2 - 20 шт... а еще есть mc3 и т.д.

т.е. я должен написать функцию в которую передаю ну допустим имя клипа.. в зависимости от имени клипа она делает нужный набор действий...
это вроде понятно

но! а как это красиво оформить с точки зрения классов и прочего ?
насколько я понимаю должно выглядеть так:

есть два объекта mc1 и mc2
оба они принадлежат классу MovieClip
там же есть метод - myPress()
так как вот нужно его запрограммировать чтоб в контексте mc1 он говорил A, а в конексте mc2 говорил Б ?

mc1.myPress() // A
mc2.myPress() // Б

myPress()
{

???????? // все тот же SWITCH или несколько IF

}

или бежать в магазин за книжкой по ООП ? :D

Король 28.07.2005 00:13

советую сначала научиться управляться с переменными, циклами и массивами


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

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