stop();
for (a=1 ;a<=50; a++) {
var tmp:MovieClip = _root.attachMovie('mc_tmp', 'sx_new'+a, '10'+a);
tmp.txt.text = a;
tmp.onEnterFrame = function () {
if (hitTest(_root._xmouse, _root._ymouse, true)) {
moveme = false;
} else {
moveme = true;
}
}
}
setrndmask(_root, 500, 400, 0, 0, 0);
var mc_tmp:MovieClip = _root.createEmptyMovieClip('temp_movieclip', _root.getNextHighestDepth());
count = 50;
a_dist = 15;
a_width = 90;
t_width = (count * a_width) + ((count-1) * a_dist);
l_point = -(t_width - 500) / 2;
r_point = 500 + (t_width-500) / 2;
roll_spd = 0;
tar_spd = 1;
base_acc = 0.500000;
moveme = true;
for (i = 1; i<=count; i++) {
var ins = _root['sx_new' + i];
ins._x = l_point + i * (a_width + a_dist);
ins._y = 200;
}
mc_tmp.onEnterFrame = function () {
if (moveme) {
tar_spd = -(Math.round((_root._xmouse - 250) / 25));
acceleration = base_acc - roll_spd / 20;
if (roll_spd > tar_spd) {
roll_spd = roll_spd - acceleration;
}
if (roll_spd < tar_spd) {
roll_spd = roll_spd + acceleration;
}
for (i=1; i<=count; i++) {
var ins:MovieClip = _root['sx_new' + i];
ins._x = ins._x + roll_spd;
if (ins._x < l_point) {
diffy = l_point - ins._x;
ins._x = r_point - diffy;
continue;
}
if (ins._x > r_point) {
diffy = ins._x - r_point;
ins._x = l_point + diffy;
}
}
}
// trace(tar_spd+' '+acceleration+' '+roll_spd);
}
function setrndmask(mcname, w, h, x, y, rnd){
var ins = mcname.createEmptyMovieClip("masking",10);
with(ins){
beginFill(0x000000);
moveTo(x,y);
lineTo(w-rnd,y);
curveTo(w,y,w,y+rnd);
lineTo(w,h-rnd);
curveTo(w,h,w-rnd,h);
lineTo(x+rnd,h);
curveTo(x,h,x,h-rnd);
lineTo(x,y+rnd);
curveTo(x,y,x+rnd,y);
endFill();
}
mcname.setMask(ins);
}
در ابتدا باید بگم که در فایل ضمیمه لایه 3 یک لایه اضافی است ...
1. تعداد فریم مورد نیاز 1 ، به این قسمت کد دقت کنید movie متوقف شده است ...
stop();
2. اگر منظور شما a داخل کد است هیچ ربطی بین نام لایه و حروف داخل کد وجود ندارد.
3. نهوه کار کد :
آبجکت ها بداخل صفحه اضافه می شوند
for (a=1 ;a<=50; a++) {
var tmp:MovieClip = _root.attachMovie('mc_tmp', 'sx_new'+a, '10'+a);
...
شما یکسری آبجکت دارید که باید به ترتیب با فاصله های معین قرار گیرند
for (i = 1; i<=count; i++) {
var ins = _root['sx_new' + i];
ins._x = l_point + i * (a_width + a_dist);
ins._y = 200;
}
حالا همه چیز آماده است تا آبجکتها حرکت کنند
با عددی که به نسبت موقعیت موس در صفحه بدست می آید آنها را به راست و یا چپ حرکت می دهیم
...
tar_spd = -(Math.round((_root._xmouse - 250) / 25));
...
هیچ کد و یا فایل اضافه ای هم برای ساخت یک نمومه دیگر لازم نیست !!!
موفق باشید ، یا حق ...