![]() |
|
||||||||||
|
|||||
|
Регистрация: Dec 2007
Сообщений: 102
|
import mx.transitions.Tween;
import mx.transitions.easing.*;
//
name1.varTween = new Tween(name1, "_x", Back.easeOut, -100, 20, 0.5, true);
name2.varTween = new Tween(name2, "_x", Back.easeOut, -100, 20, 0.6, true);
name3.varTween = new Tween(name3, "_x", Back.easeOut, -100, 20, 0.7, true);
name4.varTween = new Tween(name4, "_x", Back.easeOut, -100, 20, 0.8, true);
name5.varTween = new Tween(name5, "_x", Back.easeOut, -100, 20, 0.9, true);
_root.name1.onRollOver = function() {
new Tween(name1, "_alpha", Back.easeOut, 100, 50, 1, true);
};
_root.name1.onRollOut = function() {
new Tween(name1, "_alpha", Back.easeOut, 50, 100, 1, true);
};
_root.name1.onRelease = function() {
new Tween(info1, "_x", Back.easeOut, 1100, 1100, 1, true);
new Tween(info2, "_x", Back.easeOut, 1100, 1100, 1, true);
new Tween(info3, "_x", Back.easeOut, 1100, 1100, 1, true);
new Tween(info4, "_x", Back.easeOut, 1100, 1100, 1, true);
new Tween(info5, "_x", Back.easeOut, 1100, 1100, 1, true);
new Tween(info1, "_x", Back.easeOut, 1100, 300, 1, true);
};
_root.name2.onRollOver = function() {
new Tween(name2, "_alpha", Back.easeOut, 100, 50, 1, true);
};
_root.name2.onRollOut = function() {
new Tween(name2, "_alpha", Back.easeOut, 50, 100, 1, true);
};
_root.name2.onRelease = function() {
new Tween(info1, "_x", Back.easeOut, 1100, 1100, 1, true);
new Tween(info2, "_x", Back.easeOut, 1100, 1100, 1, true);
new Tween(info3, "_x", Back.easeOut, 1100, 1100, 1, true);
new Tween(info4, "_x", Back.easeOut, 1100, 1100, 1, true);
new Tween(info5, "_x", Back.easeOut, 1100, 1100, 1, true);
new Tween(info2, "_x", Back.easeOut, 1100, 300, 1, true);
};
_root.name3.onRollOver = function() {
new Tween(name3, "_alpha", Back.easeOut, 100, 50, 1, true);
};
_root.name3.onRollOut = function() {
new Tween(name3, "_alpha", Back.easeOut, 50, 100, 1, true);
};
_root.name3.onRelease = function() {
new Tween(info1, "_x", Back.easeOut, 1100, 1100, 1, true);
new Tween(info2, "_x", Back.easeOut, 1100, 1100, 1, true);
new Tween(info3, "_x", Back.easeOut, 1100, 1100, 1, true);
new Tween(info4, "_x", Back.easeOut, 1100, 1100, 1, true);
new Tween(info5, "_x", Back.easeOut, 1100, 1100, 1, true);
new Tween(info3, "_x", Back.easeOut, 1100, 300, 1, true);
};
_root.name4.onRollOver = function() {
new Tween(name4, "_alpha", Back.easeOut, 100, 50, 1, true);
};
_root.name4.onRollOut = function() {
new Tween(name4, "_alpha", Back.easeOut, 50, 100, 1, true);
};
_root.name4.onRelease = function() {
new Tween(info1, "_x", Back.easeOut, 1100, 1100, 1, true);
new Tween(info2, "_x", Back.easeOut, 1100, 1100, 1, true);
new Tween(info3, "_x", Back.easeOut, 1100, 1100, 1, true);
new Tween(info4, "_x", Back.easeOut, 1100, 1100, 1, true);
new Tween(info5, "_x", Back.easeOut, 1100, 1100, 1, true);
new Tween(info4, "_x", Back.easeOut, 1100, 300, 1, true);
};
_root.name5.onRollOver = function() {
new Tween(name5, "_alpha", Back.easeOut, 100, 50, 1, true);
};
_root.name5.onRollOut = function() {
new Tween(name5, "_alpha", Back.easeOut, 50, 100, 1, true);
};
_root.name5.onRelease = function() {
new Tween(info1, "_x", Back.easeOut, 1100, 1100, 1, true);
new Tween(info2, "_x", Back.easeOut, 1100, 1100, 1, true);
new Tween(info3, "_x", Back.easeOut, 1100, 1100, 1, true);
new Tween(info4, "_x", Back.easeOut, 1100, 1100, 1, true);
new Tween(info5, "_x", Back.easeOut, 1100, 1100, 1, true);
new Tween(info5, "_x", Back.easeOut, 1100, 300, 1, true);
};
но мне надо кое что добавить в код, но низнаю как... Допустим нажал я на "name1", при этом вылезло "info1", мне надо чтобы при нажатии на другой, например "name2" "info1" плавно уходил обратно на прежнее место, а затем выплывал "info2" Поможите? буду очень признателен |
|
|||||
|
Modus ponens
|
Даже не знаю.... очень много всего нужно переделывать...
Зачем такое количество твинов? Да еще и не удаляющихся... плеер по-идее должен скончаться после эдак 10-20 минут работы такого меню. 4-й аргумент - исходная позиция, 5-й конечная. Какой смысл создавать твин и не создавать анимацию? В смысле, движения-то все равно никакого не будет... ща попробую сделать простенький пример с похожей логикой... import mx.transitions.Tween;
import mx.transitions.easing.*;
//
var select:Number;
var clips:Array = [];
var __tw:Tween = new Tween({i:0},"i",Back.easeOut, 0, 100, 1, true);
__tw.stop();
__tw.addListener(this);
onMotionChanged = function():Void {
for(var q:Number=0;q<clips.length;q++){
if(clips[q].__id != select){
if(clips[q]._lastPos == undefined){
clips[q]._lastPos = clips[q]._x;
}
if(clips[q]._x == 0){
delete clips[q]._lastPos;
}
clips[q]._x = clips[q]._lastPos-clips[q]._lastPos*__tw.obj.i/100;
} else {
clips[q]._x = __tw.obj.i;
}
}
}
onMotionFinished = function(){
for(var q:Number=0;q<clips.length;q++){
delete clips[q]._lastPos;
}
}
onMotionStarted = function(){
for(var q:Number=0;q<clips.length;q++){
delete clips[q]._lastPos;
}
}
for(var q:Number=0;q<5;q++){
var mc:MovieClip = rct(this,100,20,Math.random()*0xffffff,100);
mc._y = q*21;
mc.__id = q;
mc.onRelease = function():Void {
_root.select = this.__id;
_root.onMotionStarted();
_root.__tw.start();
}
clips.push(mc);
}
function rct(mc:MovieClip,w:Number,h:Number,c:Number,a:Number):MovieClip{
var _mc:MovieClip = mc.createEmptyMovieClip("rct"+mc.getNextHighestDepth(),mc.getNextHighestDepth());
_mc.beginFill(c,a);
_mc.moveTo(0,0);
_mc.lineTo(w,0);
_mc.lineTo(w,h);
_mc.lineTo(0,h);
_mc.lineTo(0,0);
_mc.endFill();
return _mc;
}
__________________
Hell is the possibility of sanity Последний раз редактировалось wvxvw; 15.12.2007 в 21:18. |
|
|||||
|
Регистрация: Dec 2007
Сообщений: 102
|
эти твины нужны чтоб вернуть info(1.2.3.4.5) за экран(на прежнее место)при нажатии на name =/ или это можно проще сделать?
не ругай, я не силен в AS |
|
|||||
|
Регистрация: Jul 2007
Адрес: Россия, Москва
Сообщений: 522
|
Цитата:
|
![]() |
![]() |
Часовой пояс GMT +4, время: 00:10. |
|
|
« Предыдущая тема | Следующая тема » |
|
|