السلام عليكم
عدلت على الملف كالتالي:
هنا نحتاج الى درس المتغيرات فهو مهم جدا راجع الدروس السابقة .
اضفت اليه كود يحسب الدرجات ارجو ان يكون مفهوما
و طريقته نعرف فقط متغير في حدث اللود lode باسم و يكون كالتالي
sum=0
اي اجعل قيمة المجموع = 0
و نضيف نص داينمك و نكتب اسمه sum في المتغير اي في var و ليس في اسم الكائن
و فقط ماكان الذي نريد ان نضيف درجة نزيد 1 على القيمة كالتالي:
قمت بتعريف متغيرات من بداية تشغيل العرض هي التالي :
تضغط على السين 1 و تذهب للسكربت و تلصق هذا الكود
كود PHP:
onSelfEvent (load) {
xt1=t1._x;
yt1=t1._y;
xt2=t2._x;
yt2=t2._y;
sum=0;
}
هذا الكود يعمل من بداية ضهور الصفحة اي من بداية تشغيل العمل يتنفذ فيه هذه الاوامر
السطر الاول عرفنا متغير اسمه xt1 و به يحفظ قيمة موضع النص t1 في البعد السيني
السطر الثاني عرفنا متغير اسمه yt1 و به يحفظ قيمة موضع النص t1 في البعد الصادي
السطر الاول عرفنا متغير اسمه xt2 و به يحفظ قيمة موضع النص t2 في البعد السيني
السطر الثاني عرفنا متغير اسمه yt2 و به يحفظ قيمة موضع النص t2 في البعد الصادي
السطر الخامس عرفنا متغير اسمه sum لحساب الدرجات و اعطايناه القيمة 0 من بداية تشغيل العرض
الان قم بدراج نص داينمك و اجعل المتغير var اسمه sum لكي تكتب نتيجة الطالب هناك
قم بصنع اجابة صحيحة و سمها t و تعمل من الفريم الثاني اي تأثير حيث الفريم الاول به توقف
و صنع اجابة خاطئة و سمها f و تعمل من الفريم الثاني اي تأثير حيث الفريم الاول به توقف
اجعل اسم النص الاول طبيعي الاضائة اسمه t1 و لا بد ان يكون تارجت target
اجعل اسم النص الثاني صناعئ الاضائة اسمه t2 و لا بد ان يكون تارجت target
سم صورتين طبيعية الاضاءة باسم s1 , s3 و لا بد جعلهما target
سم صورتين صناعية الاضاءة باسم s2 , s4 و لا بد جعلهما target
قم بالضغط النص ذاتي الاضاءة و الصق به هذا الكود
على السكربت و الصق هذا الكود .
كود PHP:
onSelfEvent (press) {
startDrag(_target, false);
}
onSelfEvent (release) {
stopDrag();
if (_droptarget==_root.s1._target) {
_root.s1._visible=false;
_root.sum+=1;
_root.t.gotoAndPlay(2);
}else if (_droptarget==_root.s3._target) {
_root.s3._visible=false;
_root.sum+=1;
_root.t.gotoAndPlay(2);
}else{
_root.f.gotoAndPlay(2);
}
_root.t1._x=_root.xt1;
_root.t1._y=_root.yt1;
}
قم بالضغط على نص صناعي الاضاءة t2 و الصق به هذا السكربت
كود PHP:
onSelfEvent (press) {
startDrag(_target, false);
}
onSelfEvent (release) {
stopDrag();
if (_droptarget==_root.s2._target) {
_root.s2._visible=false;
_root.sum+=1;
_root.t.gotoAndPlay(2);
}else if (_droptarget==_root.s4._target) {
_root.s4._visible=false;
_root.sum+=1;
_root.t.gotoAndPlay(2);
}else{
_root.f.gotoAndPlay(2);
}
_root.t2._x=_root.xt2;
_root.t2._y=_root.yt2;
}
اقصد بهذا الكود عندما يضغط المستخدم على النص يتم السماح للنص بالتحرك مع الماوس و هو اول ثلاثة اسطر
و عندما يفلت المستخدم النص يحصل ما يلي
اول سطر
كود PHP:
onSelfEvent (release) {
يعني عندما يفلت المستخدم الماوس
يتم الغاء السحب عن الكائن اي يبقى مكانه
كود PHP:
if (_droptarget==_root.s2._target) {
اذا قمنا بافلات الماوس و كنا ساحيبن النص t2 على الهدف s2 يحصل التالي
كود PHP:
_root.s2._visible=false;
يتم اخفاء الصورة s2
يتم زيادة 1 على الاجابات الصحيحة
كود PHP:
_root.t.gotoAndPlay(2);
يتم تشغيل موفي الاجابة الصحيحة من الفريم الثاني
كود PHP:
}else if (_droptarget==_root.s4._target) {
و الا يتنفذ شرط جديد يكون النص t2 ممسوكا الماوس فإذا افلت على الهدف s4 يتنفذ ما يلي
و هي نفس السابق
كود PHP:
root.s4._visible=false;
_root.sum+=1;
_root.t.gotoAndPlay(2);
يخفي الكائن s4
و يجمع 1 على الاجابات الصحيحة
و يتم تشغيل الاجابة الصحيحة من الفريم الثاني
و الكود
اذا لم تتنفذ الشروط السابقة يحصل ما يلي
كود PHP:
_root.f.gotoAndPlay(2);
يتم تشغيل الاجابة الخاطئة من الفريم الثاني .
انتهى الشرط
كود PHP:
_root.t2._x=_root.xt2;
يقوم بارجاع النص t2 لمكانة الاصلي المحفوظ لكي يتم سحبه مرة اخرى في البعد السيني
كود PHP:
_root.t2._y=_root.yt2;
و يتم ارجاع الكائن t2 لمكانة الاصلي حسب الموضع الصادي حسب القيمة المحفوظة في ذاكرة الكمبيوتر و التي تم ادراجها في حدث lode
لا حظ انني عمل الشرط فقط لصورتين بها اضاءة طبيعية و 2 اضائتها صناعية فبجب عليك استكمال الشرط
يعني تضيف شرط جديد بعد تسمية الصور الباقية s9 s5 s6 s7 s8 و جعلها جميعها target يكون الشرط اعلى else
حاول في هذا الامر علشان تعرف تعدل الاكواد
و اليك الملف ايضا لتقوم بالتعديل عليه و عليك ارجاعه كاملا
الاستاذ خليل