Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Архив Flasher.ru > Flash > ActionScript

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему  
Старый 07.09.2003, 22:38
iLoveYou вне форума Посмотреть профиль Отправить личное сообщение для iLoveYou Найти все сообщения от iLoveYou
  № 11  
iLoveYou
wanted

Регистрация: Sep 2002
Сообщений: 1,737
а почему?
или ты меня так изящно послал с моими дурацкими вопросами?
круто звучит: "скажу те по секрету charAt(0)..."
почти что: "эй, приятель, твоя просьба меня near bird".
__________________
вот тебе, революционный единоличник! вот тебе кулачество! вот тебе Союзкиножурнал!

Старый 08.09.2003, 20:54
major вне форума Посмотреть профиль Отправить личное сообщение для major Найти все сообщения от major
  № 12  
major
 
Аватар для major

Регистрация: Jul 2003
Адрес: SPb
Сообщений: 125
Пушистик, что-то я не понял, а зачем заморачиваться с прототипом. После этого мне нельзя называть клипы начиная с s.
Не проще-ли:

function forout() { // onRollOut
this.dx=0;
this.dy=0;
};
function fop() { // onPress
trace(this._name+" Press event!");
this.dx=0;
this.dy=0;
};
function forover() { // onRollOver
var k=-1+2*Math.random();
this.dx=5*k/Math.abs(k);
var k=-1+2*Math.random();
this.dy=5*k/Math.abs(k);
};
function forenter(){ // onEnterFrame
this._x+=this.dx;
this._y+=this.dy;
};



_root.createEmptyMovieClip("sq1", 1);
with (_root.sq1) {
beginFill(0xff0000, 100);
lineStyle(0, 0xFFFF00, 100);
moveTo(50,100);
lineTo(70,100);
lineTo(70,120);
lineTo(50,120);
lineTo(50, 100);
endFill();
}
for (i=2; i<=10; i++) {
duplicateMovieClip("sq1", "sq"+i, i);
_root["sq"+i]._x=random(400);
_root["sq"+i]._y=random(400);
}
for(i=1;i<=10;i++){ // назначение обработчиков событий
_root["sq"+i].onPress=fop;
_root["sq"+i].onRollOut=forout;
_root["sq"+i].onRollOver=forover;
_root["sq"+i].onEnterFrame=forenter;
}
stop();

Старый 09.09.2003, 14:54
Пушистик вне форума Посмотреть профиль Отправить личное сообщение для Пушистик Посетить домашнюю страницу Пушистик Найти все сообщения от Пушистик
  № 13  
Пушистик
Bumble Bee
[+1 05.07.06]
 
Аватар для Пушистик

Регистрация: May 2003
Адрес: Третья планета от Солнца
Сообщений: 1,254
Отправить сообщение для Пушистик с помощью ICQ
ну кому как чегче...через прототипы проц напрегается намного меньше чем когда ты делаешь через цикл!...

Цитата:
После этого мне нельзя называть клипы начиная с s
this.substring(0,10)="sssssssssp";



Код:
_root.createEmptyMovieClip("square1", 1);
with (_root.square1) {
    beginFill(0x000000, 100);
    lineStyle(0, 0xFFFF00, 100);
    moveTo(50, 100);
    lineTo(70, 100);
    lineTo(70, 120);
    lineTo(50, 120);
    lineTo(50, 100);
    endFill();
}
for (i=2; i<=10; i++) {
    duplicateMovieClip("square1", "square"+i, i);
    _root["square"+i]._x = random(400);
    _root["square"+i]._y = random(400);
}
MovieClip.prototype.onRollOver = function() {
    randx = this._x-random(50)+50;
    randy = this._y-random(50)+50;
    if (this._name.substring(0,6)== "square") {
        this.onEnterFrame = function() {
            this._x+=(randx-this._x)/10;
            this._y+=(randy-this._y)/10;
        };
    }
};
__________________
Portfolio

Старый 10.09.2003, 11:57
major вне форума Посмотреть профиль Отправить личное сообщение для major Найти все сообщения от major
  № 14  
major
 
Аватар для major

Регистрация: Jul 2003
Адрес: SPb
Сообщений: 125
2Пушистик
Цитата:
через прототипы проц напрегается намного меньше чем когда ты делаешь через цикл!
Ну, раз пошла такая пьянка...
Тот копеечный выигрыш, который Вы получите за счет использования прототяпа, будет сразу же сьеден тем, что в обработчике используется if и строковая функция. Если же в фильме есть еще и другие клипы (а они наверняка есть), то обработчик, установленный через прототип, будет вызываться и для них. А значит ресурсы проца будут в пустую растрачиваться на обработку строковых ф-ций и if-ов.

В качестве конструктива: вариант2

function forout() { // onRollOut
this.dx=0;
this.dy=0;
};
function fop() { // onPress
trace(this._name+" Press event!");
this.dx=0;
this.dy=0;
};
function forover() { // onRollOver
var k=-1+2*Math.random();
this.dx=5*k/Math.abs(k);
var k=-1+2*Math.random();
this.dy=5*k/Math.abs(k);
};
function forenter(){ // onEnterFrame
this._x+=this.dx;
this._y+=this.dy;
};

_root.createEmptyMovieClip("sq1", 1);
with (_root.sq1) {
beginFill(0xff0000, 100);
lineStyle(0, 0xFFFF00, 100);
moveTo(50,100);
lineTo(70,100);
lineTo(70,120);
lineTo(50,120);
lineTo(50, 100);
endFill();
}
_root["sq1"].onPress=fop;
_root["sq1"].onRollOut=forout;
_root["sq1"].onRollOver=forover;
_root["sq1"].onEnterFrame=forenter;

for (i=2; i<=10; i++) {
// V V V вот оно !!! V V V
sq1.duplicateMovieClip( "sq"+i, i,sq1);
_root["sq"+i]._x=random(400);
_root["sq"+i]._y=random(400);
}
stop();

Старый 10.09.2003, 14:23
Пушистик вне форума Посмотреть профиль Отправить личное сообщение для Пушистик Посетить домашнюю страницу Пушистик Найти все сообщения от Пушистик
  № 15  
Пушистик
Bumble Bee
[+1 05.07.06]
 
Аватар для Пушистик

Регистрация: May 2003
Адрес: Третья планета от Солнца
Сообщений: 1,254
Отправить сообщение для Пушистик с помощью ICQ
Цитата:
будет сразу же сьеден тем, что в обработчике используется if и строковая функци

юзай свои циклы
закроем тему...
__________________
Portfolio

Старый 10.09.2003, 22:29
iLoveYou вне форума Посмотреть профиль Отправить личное сообщение для iLoveYou Найти все сообщения от iLoveYou
  № 16  
iLoveYou
wanted

Регистрация: Sep 2002
Сообщений: 1,737
2 major последний вариант - очень хороший

2 Пушистый не обижась, дружище! согласись, твои варианты слабы. у тебя получилось, как в пословице: "как поймать 4 льва? поймать 10 и 6 выпустить"
и прототипы тут явно не к месту были.
__________________
вот тебе, революционный единоличник! вот тебе кулачество! вот тебе Союзкиножурнал!

Создать новую тему   Часовой пояс GMT +4, время: 09:30.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


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


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