عفاف العتيبي
01-31-2009, 12:22 PM
بسم الله الرحمن الرحيم
ملالالالالالالالالالالالالاحظة
الأكشن أنا شايفة فيه صورة بوسط وبين الأكشن هذا من الموقع حق الفراشة
اذا ماضبط معاكم سوو اقتباس لردي وانسخوا الأكشن صح
نبدأ الدرس على بركة الله
أولاً نقوم بالضغط على modify ثم Document لتحديد مقاس الصفحة الطول بالعرض أنا وضعته 300 × 400
في بداية الدرس نأتي بالصورة من file ثم import
نضع الصورة في الفريم الأول في اللير الأول نعطيه الفا بتحويل الصورة الى جرافيك بأف 8 ثم بالضغط على الصورة تطلع لنا خصائص الألفا فاعطائه قيمة 50 أو 60 لأنه الأكشن ما يقبل على اللون الأسود اللي مرة
http://affaf11.jeeran.com/folder/nar1.gif
الآن نضيف لير أخر في الفريم الأول نضع هذا الاكشن
function generate() {
rc = colors[random(colors.length)];
for (var i = 0; i<100; i++) {
do {
var rx = random(200)-100;
var ry = random(200)-100;
var rz = random(200)-100;
} while (rx*rx+ry*ry+rz*rz>10000 or rx*rx+ry*ry+rz*rz<9000);
v[i] = new vertex(v[100].xx, v[100].yy-10, v[100].zz, rx+v[100].xx, ry+v[100].yy+10, rz+v[100].zz, rc);
}
}
function fire() {
v = new Array();
rc = colors[random(colors.length)];
v[100] = new vertex(random(100)-50, centery, random(100)-50, rx=random(100)-50, random(100)-50, random(100)-50, rc);
}
_root.onLoad = function() {
vertex = function (x, y, z, xx, yy, zz, c) { this.x = x;this.y = y;this.z = z;this.c = c;this.xx = xx;this.yy = yy;this.zz = zz;};
vertex.prototype.rotation = function(AX, AY, AZ) {
var CAX = Math.cos(AX);
var SAX = Math.sin(AX);
var CAY = Math.cos(AY);
var SAY = Math.sin(AY);
var CAZ = Math.cos(AZ);
var SAZ = Math.sin(AZ);
var tempx = (this.xx-v0[0])*CAZ-(this.yy-v0[1])*SAZ;
var tempy = (this.xx-v0[0])*SAZ+(this.yy-v0[1])*CAZ;
var temp2x = (tempx-v0[0])*CAY-(this.zz-v0[2])*SAY;
var temp2z = (tempx-v0[0])*SAY+(this.zz-v0[2])*CAY;
var temp3y = (tempy-v0[1])*CAX-(temp2z-v0[2])*SAX;
var temp3z = (tempy-v0[1])*SAX+(temp2z-v0[2])*CAX;
this.xx = temp2x;
this.yy = temp3y;
this.zz = temp3z;
};
vertex.prototype.draw = function() {
var x = (this.xx-this.x)*n/50+this.x;
var y = (this.yy-this.y)*n/50+this.y;
var z = (this.zz-this.z)*n/50+this.z;
var xx = x*distation/(distation-z)+centerx;
var yy = y*distation/(distation-z)+centery;
if (n>40) {
var dd = 5*distation/(distation-z)*(51-n)/10;
} else {
var dd = 5*distation/(distation-z);
}
_root.beginGradientFill("radial", [this.c, this.c], [100, 0], [0, 255], {matrixType:"box", x:xx-dd, y:yy-dd, w:2*dd, h:2*dd, r:0});
_root.moveTo(xx-dd, yy-dd);
_root.lineTo(xx-dd, yy+dd);
_root.lineTo(xx+dd, yy+dd);
_root.lineTo(xx+dd, yy-dd);
_root.lineTo(xx-dd, yy-dd);
_root.endFill();
};
centerx = 180;
centery = 120;
distation = 1000;
rad = Math.PI/360;
colors = new Array(0xFFFFFF, 0x33FF66, 0xFF0000, 0xCCFF00, 0x9933FF, 0xFFFF00, 0x3300FF, 0xFF00FF, 0x33FFFF);
fire();
n = -20;
};
_root.onEnterFrame = function() {
_root.clear();
if (n<=0) {
v[100].rotation(0, rad);
var x = (v[100].xx-v[100].x)*(n+20)/20+v[100].x;
var y = (v[100].yy-v[100].y)*(n+20)/20+v[100].y;
var z = (v[100].zz-v[100].z)*(n+20)/20+v[100].z;
var xx = x*distation/(distation-z)+centerx;
var yy = y*distation/(distation-z)+centery;
if (n>-10) {
var dd = 5*distation/(distation-z)*(-n)/10;
} else {
var dd = 5*distation/(distation-z);
}
_root.beginGradientFill("radial", [v[100].c, v[100].c], [100, 0], [0, 255], {matrixType:"box", x:xx-dd, y:yy-dd, w:2*dd, h:2*dd, r:0});
_root.moveTo(xx-dd, yy-dd);
_root.lineTo(xx-dd, yy+dd);
_root.lineTo(xx+dd, yy+dd);
_root.lineTo(xx+dd, yy-dd);
_root.lineTo(xx-dd, yy-dd);
_root.endFill();
n++;
} else if (n>0 and n<50) {
if (n == 1) {
generate();
}
for (var k = 0; k<v.length; k++) {
v[k].rotation(0, rad);
}
for (var i = 0; i<100; i++) {
v[i].draw();
}
n++;
} else {
fire();
n = -20;
}
};
http://affaf11.jeeran.com/folder/nar2.gif
اجلسوا العبوا بالاكشن شوفو ويش يطلع معاكم تمام
على فكرة أنا عملت العاب نارية في الاصدار السابق وان شاء الله قريبا راح نعمل العاب نارية في هذا الاصدار
راح يكون بطرق مختلفة باذن الله
اتمنى الدرس عجبكم من سهولته وينفعكم بتصاميم اخرى
وهذا التطبيق
WIDTH=400 HEIGHT=300
وفقكم الله ورعاكم
ملالالالالالالالالالالالالاحظة
الأكشن أنا شايفة فيه صورة بوسط وبين الأكشن هذا من الموقع حق الفراشة
اذا ماضبط معاكم سوو اقتباس لردي وانسخوا الأكشن صح
نبدأ الدرس على بركة الله
أولاً نقوم بالضغط على modify ثم Document لتحديد مقاس الصفحة الطول بالعرض أنا وضعته 300 × 400
في بداية الدرس نأتي بالصورة من file ثم import
نضع الصورة في الفريم الأول في اللير الأول نعطيه الفا بتحويل الصورة الى جرافيك بأف 8 ثم بالضغط على الصورة تطلع لنا خصائص الألفا فاعطائه قيمة 50 أو 60 لأنه الأكشن ما يقبل على اللون الأسود اللي مرة
http://affaf11.jeeran.com/folder/nar1.gif
الآن نضيف لير أخر في الفريم الأول نضع هذا الاكشن
function generate() {
rc = colors[random(colors.length)];
for (var i = 0; i<100; i++) {
do {
var rx = random(200)-100;
var ry = random(200)-100;
var rz = random(200)-100;
} while (rx*rx+ry*ry+rz*rz>10000 or rx*rx+ry*ry+rz*rz<9000);
v[i] = new vertex(v[100].xx, v[100].yy-10, v[100].zz, rx+v[100].xx, ry+v[100].yy+10, rz+v[100].zz, rc);
}
}
function fire() {
v = new Array();
rc = colors[random(colors.length)];
v[100] = new vertex(random(100)-50, centery, random(100)-50, rx=random(100)-50, random(100)-50, random(100)-50, rc);
}
_root.onLoad = function() {
vertex = function (x, y, z, xx, yy, zz, c) { this.x = x;this.y = y;this.z = z;this.c = c;this.xx = xx;this.yy = yy;this.zz = zz;};
vertex.prototype.rotation = function(AX, AY, AZ) {
var CAX = Math.cos(AX);
var SAX = Math.sin(AX);
var CAY = Math.cos(AY);
var SAY = Math.sin(AY);
var CAZ = Math.cos(AZ);
var SAZ = Math.sin(AZ);
var tempx = (this.xx-v0[0])*CAZ-(this.yy-v0[1])*SAZ;
var tempy = (this.xx-v0[0])*SAZ+(this.yy-v0[1])*CAZ;
var temp2x = (tempx-v0[0])*CAY-(this.zz-v0[2])*SAY;
var temp2z = (tempx-v0[0])*SAY+(this.zz-v0[2])*CAY;
var temp3y = (tempy-v0[1])*CAX-(temp2z-v0[2])*SAX;
var temp3z = (tempy-v0[1])*SAX+(temp2z-v0[2])*CAX;
this.xx = temp2x;
this.yy = temp3y;
this.zz = temp3z;
};
vertex.prototype.draw = function() {
var x = (this.xx-this.x)*n/50+this.x;
var y = (this.yy-this.y)*n/50+this.y;
var z = (this.zz-this.z)*n/50+this.z;
var xx = x*distation/(distation-z)+centerx;
var yy = y*distation/(distation-z)+centery;
if (n>40) {
var dd = 5*distation/(distation-z)*(51-n)/10;
} else {
var dd = 5*distation/(distation-z);
}
_root.beginGradientFill("radial", [this.c, this.c], [100, 0], [0, 255], {matrixType:"box", x:xx-dd, y:yy-dd, w:2*dd, h:2*dd, r:0});
_root.moveTo(xx-dd, yy-dd);
_root.lineTo(xx-dd, yy+dd);
_root.lineTo(xx+dd, yy+dd);
_root.lineTo(xx+dd, yy-dd);
_root.lineTo(xx-dd, yy-dd);
_root.endFill();
};
centerx = 180;
centery = 120;
distation = 1000;
rad = Math.PI/360;
colors = new Array(0xFFFFFF, 0x33FF66, 0xFF0000, 0xCCFF00, 0x9933FF, 0xFFFF00, 0x3300FF, 0xFF00FF, 0x33FFFF);
fire();
n = -20;
};
_root.onEnterFrame = function() {
_root.clear();
if (n<=0) {
v[100].rotation(0, rad);
var x = (v[100].xx-v[100].x)*(n+20)/20+v[100].x;
var y = (v[100].yy-v[100].y)*(n+20)/20+v[100].y;
var z = (v[100].zz-v[100].z)*(n+20)/20+v[100].z;
var xx = x*distation/(distation-z)+centerx;
var yy = y*distation/(distation-z)+centery;
if (n>-10) {
var dd = 5*distation/(distation-z)*(-n)/10;
} else {
var dd = 5*distation/(distation-z);
}
_root.beginGradientFill("radial", [v[100].c, v[100].c], [100, 0], [0, 255], {matrixType:"box", x:xx-dd, y:yy-dd, w:2*dd, h:2*dd, r:0});
_root.moveTo(xx-dd, yy-dd);
_root.lineTo(xx-dd, yy+dd);
_root.lineTo(xx+dd, yy+dd);
_root.lineTo(xx+dd, yy-dd);
_root.lineTo(xx-dd, yy-dd);
_root.endFill();
n++;
} else if (n>0 and n<50) {
if (n == 1) {
generate();
}
for (var k = 0; k<v.length; k++) {
v[k].rotation(0, rad);
}
for (var i = 0; i<100; i++) {
v[i].draw();
}
n++;
} else {
fire();
n = -20;
}
};
http://affaf11.jeeran.com/folder/nar2.gif
اجلسوا العبوا بالاكشن شوفو ويش يطلع معاكم تمام
على فكرة أنا عملت العاب نارية في الاصدار السابق وان شاء الله قريبا راح نعمل العاب نارية في هذا الاصدار
راح يكون بطرق مختلفة باذن الله
اتمنى الدرس عجبكم من سهولته وينفعكم بتصاميم اخرى
وهذا التطبيق
WIDTH=400 HEIGHT=300
وفقكم الله ورعاكم