Форум 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=91832)

Эрман 09.02.2007 14:38

Подёргивания
 
Есть некоторый текст, который хотелось бы оживить эффектом рандомного подёргивания букв. Не случаем у кого нить похожей штуки?

Mr. Fixit 09.02.2007 14:51

Вложений: 1
он слишком дёрганный:yahoo:

Эрман 09.02.2007 14:54

а как сделать чтобы текст сам был на одной строке и дёргались только буквы?

CorC 09.02.2007 14:54

я думаю имелось ввиду не подергивание текста а подергивание отдельных букв
это лучше программно делать createTextField для каждой буквы

Mr. Fixit 09.02.2007 14:55

простым способом разбить слово на буквы, через МС выполнять функцию..
сложный способ - незнаю..

CorC 09.02.2007 15:02

простой :)
Код:

stop();
Text = "Breathe pressure... Voodoo People";
for (var i = 0; i<Text.length; i++) {
        this.createTextField("txt"+i, this.getNextHighestDepth(), 8*i, 100, 0, 0);
        this["txt"+i].autoSize = true;
        this["txt"+i].text = Text.substr(i, 1);
}
onEnterFrame = function () {
        for (var i = 0; i<Text.length; i++) {
                this["txt"+i]._x = (Math.random()*2-1)*1+i*8;
                this["txt"+i]._y = (Math.random()*2-1)*1+100;
        }
};


Эрман 09.02.2007 15:05

клёво

Oreanor 09.02.2007 15:51

Цитата:

Сообщение от CorC
простой :)

только зачем их каждый кадр криэйтить? это лишнее имхо.

CorC 09.02.2007 15:52

мдя, косячокс :) забыл удалить
осталось с прошл хозяина :)
поменял

Oreanor 09.02.2007 15:56

теперь все ок! :)

CorC 09.02.2007 16:05

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

Oreanor 09.02.2007 16:19

сделал цацку и радуюсь :)

Код:

stop();
Text = "Breathe pressure... Voodoo People";
for (var i = 0; i<Text.length; i++) {
        this.createTextField("txt"+i, this.getNextHighestDepth(), 8*i, 100, 0, 0);
        this["txt"+i].autoSize = true;
        this["txt"+i].text = Text.substr(i, 1);
}
onEnterFrame = function () {
        for (var i = 0; i<Text.length; i++) {
                if(i==0){
                        dx = (_root._xmouse - this["txt"+i]._x)/4;
                        dy = (_root._ymouse - this["txt"+i]._y)/4;
                       
                } else {
                        dx = (this["txt"+(i-1)]._x - this["txt"+i]._x)/4;
                        dy = (this["txt"+(i-1)]._y - this["txt"+i]._y)/4;
                }
                this["txt"+i]._x +=dx+2;
                this["txt"+i]._y +=dy;
                this["txt"+i]._x += (Math.random()*2-1);
                this["txt"+i]._y += (Math.random()*2-1);
        }
};


CorC 09.02.2007 17:11

продолжение темы :)
Код:

stop();
Text = "А вот этот вот текст мало|того что многострочный|но еще и разветвляется,|но причем здесь уже сабж|просто непонятно становится";
var j = 0;
var k = 0;
for (var i = 0; i<Text.length; i++) {
        if (Text.substr(i, 1) == "|") {
                j = 0;
                k++;
        } else {
                this.createTextField("txt"+i, this.getNextHighestDepth(), 8*j, 100+k*15, 0, 0);
                this["txt"+i].autoSize = true;
                this["txt"+i].text = Text.substr(i, 1);
                j++;
        }
}
Ko=k/2;
onEnterFrame = function () {
        var j = 0;
        var k = 0;
        for (var i = 0; i<Text.length; i++) {
                if (Text.substr(i, 1) == "|") {
                        j = 0;
                        k++;
                } else {
                        if (j == 0) {
                                dx = (_root._xmouse-this["txt"+i]._x)/2;
                                dy = (_root._ymouse-this["txt"+i]._y)/2;
                        } else {
                                dx = (this["txt"+(i-1)]._x-this["txt"+i]._x)/2;
                                dy = (this["txt"+(i-1)]._y-this["txt"+i]._y)/2-8*(k-Ko);
                        }
                        this["txt"+i]._x += dx+6;
                        this["txt"+i]._y += dy;
                        this["txt"+i]._x += (Math.random()*2-1);
                        this["txt"+i]._y += (Math.random()*2-1)+8*(k-Ko)+(k-Ko)*j/20;
                        j++;
                }
        }
};



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

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