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

zzxxzz 28.02.2012 13:43

Связать два круга
 
Вложений: 1
Добрый день!

Подскажите пожалуйста способ, как можно связать два круга (mc и mc1) между собой.

Два круга mc и mc1 имеют эластичный твин. Хочу чтобы когда менялся размер круга, нитка между придерживалась края круга и имела динамику.

Скрин:

[IMG]http://i079.***********/1202/68/bf4676f13978.jpg[/IMG]

Код:

Код AS1/AS2:

stop();
 
import mx.transitions.Tween;
import mx.transitions.easing.*;
 
mc.onRollOver = mcOver;
mc.onRollOut = mc.onDragOut = mcOut;
 
mc1.onRollOver = mcOver;
mc1.onRollOut = mc.onDragOut = mcOut;
 
function mcOver()
{
        mc.twX.stop();
        mc.twX = new Tween(this, '_xscale', Elastic.easeOut, this._xscale, 120, 0.8, true);
        mc.twY.stop();
        mc.twY = new Tween(this, '_yscale', Elastic.easeOut, this._yscale, 120, 0.8, true);
}
 
function mcOut()
{
        mc.twX.stop();
        mc.twX = new Tween(this, '_xscale', Elastic.easeOut, this._xscale, 100, 0.8, true);
        mc.twY.stop();
        mc.twY = new Tween(this, '_yscale', Elastic.easeOut, this._yscale, 100, 0.8, true);
}


Исходник:

Tails 28.02.2012 13:53

Вложений: 1
Ну, если нитка не должна изгибаться и, нам особо не заморачиваясь, сделать это не так уж и сложно.
Шарики поместите "сверху" нитки. Гляньте исходник:

mooncar 28.02.2012 14:03

zzxxzz, исходники прикрепляйте к сообщению, на сторонних сервисах очень нежелательно.

zzxxzz 28.02.2012 14:07

Не совсем понятно по исходнику, как это сделать. Возможно Вы меня не правильно поняли. Если Вы посмотрите на mc.swf там линия просто нарисована, а я хочу, чтобы она привязана к mc1 и mc и когда мы меняем размер, она тоже с ними дергалась.

Добавлено через 3 минуты
Цитата:

Сообщение от mooncar (Сообщение 1065989)
zzxxzz, исходники прикрепляйте к сообщению, на сторонних сервисах очень нежелательно.


Не нашел кнопку прикрепить файл.(

Tails 28.02.2012 14:16

Код AS1/AS2:

a._xscale = _xmouse-a._x;
a._yscale = _ymouse-a._y;

Что же тут непонятного? Попытайтесь понять. Это и так - максимально простой вариант.

a - это имя мувика на сене (линия)
Вы копируете её себе в проект,и ставите ниже чем шарики.
Привязка линий к шарикам осуществляется так:

Код AS1/AS2:

a._x = mc._x;
a._y = mc._y;
 
a._xscale = mc1._x - mc._x;
a._yscale = mc1._y - mc._y;


zzxxzz 28.02.2012 14:26

Заработало, создал свою линию, не работала, скопировал вашу, все заработало.

Но задача была немного в другом. Связать шарики с динамикой. Сейчас у нас линия связывает от центра, а если нитка будет привязываться к краю, то когда меняется размер шарика, линия должна подергиваться.

Tails 28.02.2012 14:31

Да от центра, потому-что в вашей задаче так проще всего. У вас шарики не прозрачные же, так-что не видно, от центра идёт линия или от края. И что значит "должна подергиваться" ?

zzxxzz 29.02.2012 13:33

C этим разобрался спасибо!!! Можно в эту тему еще задавать вопросы?


Мне нужно сделать условие в котором говорится:

если мувиклип сместился на 10 пх по оси х то выполнить следующее действие stop();
Как это записать?

Код AS1/AS2:

if()
{
stop();
}


Zebestov 29.02.2012 13:51

Цитата:

Можно в эту тему еще задавать вопросы?
Одна тема — один вопрос.


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

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