2 مرفق
دورة c-script الدرس الثامن (المــ action ــهــام)
تعريف الكيانات برمجيا.....
يتم تعريف الكيانات بهذه الطريفة
كود:
entity player
{
type="اسم الموديل.mdl";//لأستدعاء الموديل
layer=1;//طبقة الموديل
x=0;//الموقع على المحور اكس على الشاشة
y=0;//الموقع على محور آي على الشاشة
z=0;//الأرتفاع على الشاشة
}
المهام
هي الوظيفة التي يُمْكِنُ أَنْ تُرْبَطَ بالكيانات: اللاعب، المصعد , الوحش , السلاح، الخ. أنت يُمْكِنُ أَنْ تَرْبطَ المهام بأيّ كيان ترغب: موديل، سبرايت , كائانات مرحلة أَو تضاريس. كُلّ المهام التي وضعت في سكربتنا تَظْهرُ في برنامج Wed، مثل ما الصورةِ تحت:
قد يتبادر الى ذهنك بان المهام تشبه الوظائف لنرى الاختلافات بينها:
كود:
action add_numbers( )
{
b = a + 5;
}
function add_numbers( )
{
b = a + 5;
}
المهمة و الوظيفةَ تقريباً نفس الشيء. إنّ الفرق الوحيدَ ان المهمة تظهر في برنامج WEd،
ويمكن ان تكون ملحقة باحد الكيانات. تشتغل تلقائيا بعد تشغيل المرحلةُ. أي وظيفة عادة من الضروري ان نقوم نحن بتشغيلها بواسطة اوامر معينة (راجع الدرسَ الثالث للمزيد من التفاصيل).
المهام يَجِبُ أَنْ تستعمل فقط عندما تُريدُها أَنْ تُسيطرَ على كيانِ؛ المهام ايضا ليس من الضروري ان تستعمل مع الكيانات فقط (على سبيل المثال، يمكنها التعامل مع الاعداد ، مثل ما في مثالِي فوق).
.>><>
قم بفتح المرحلة المرفقة ثم قم بتشغيلها:
ولاحظ استدارة الطائرة اليمني بخط افقي واستدارة الطائرة اليسرى بتقلب جانبي
كل هذا معرف بواسطة المهام التي تظهر في
ملف مرفق 308392
الان قم فتح السكــــــــــــربـــــــــــــت الموجود مع المرحلة :
كود:
////////////////////////////////
//FuNcTiOn
//
/////////////////////////////
function main()
{
level_load("mywork.wmb");
}
////////////////////
//AcTiOn
//
///////////////////
action pan_plan
{
while(1)
{
my.pan=my.pan+1;
wait(1);
}
}
action roll_pan
{
while(1)
{
my.roll=my.roll+1;
wait(1);
}
}
الكود سهل لاكن لنشرحه قليلا
كود:
function main()
{
level_load("mywork.wmb");
}
قمنا بتعريف الوظيفة الرئيسيـــة
ثم وضعنا بداخلهـا الامر اسستدعاء مرحلة:
كود:
level_load("mywork.wmb");
وهو يقوم باستدعاء ملف المرحلة mywork.wmb يجب ان يكون المرحلة بنفس مجلد السكـــــــــربت
ثم
قمنا
بوضع
كود:
action pan_plan
{
while(1)
{
my.pan=my.pan+1;
wait(1);
}
}
قمنا باستعمال الكلمة الدليلية action ثم اسمينا المهمة بأسم pan_plan يمكنك أختيار اي اسم تـريد
action pan_plan
ثم وضعنا الامر while(1) وهي امر التكرار وغير مشترط وضعه بأي اكشن وبحالتنا هذه سيتكرر باستمرار الى مانهاية وهذا الامر يكتب بهذه
الطريقة
كود:
while (expression)
{ مجموعة من الاوامر... }
اي اننا نضع الاوامر بين القوس المجعد
My هذا تعريف يدل على ان الذي سيكون له المهمة هو انا ثم وضعنا النقطة اذا كنت تذكر فهذه النقطة مفيدة جدا وايتعملناها كثيراً
ثم الامر pan وهو امر يجعل صاحب المهمة يدور حول محور افقي ثم وضعنا اشارة المساواة ثم وضعنا الامر pan مجددا ثم اشارة الزائد ثم الرقم1 وهذا يجعل سرعة الاستدارة هي 1 فقط
ثم جاء الامر وهو يامر المحرك بأن ينتظر ثانية واحدة لكي يعطي فرصة للاوامر الاخرى بالعمل.......
ثم اغلقنا القوسين المجعدين قوس عبارة التكرار وقوس المهمة
وهكذا تعلمنا عمل مهمة
سأترك المهمة الاخيرة عليك حاول ان تفهمها واخبرني بالرد ....
اعذروني لاني مابنزل الدرسين القادمين الان بنزله بكره فمان الله:biggthump
رد: دورة c-script الدرس الثامن (المــ action ــهــام)
لم يكن الشرح مطولا لاننا سنرى المهام بالدروس القادمة كثيراً
رد: دورة c-script الدرس الثامن (المــ action ــهــام)
مافهمت الدرس الصراحة
وهناك خطأ في أستدعاء الملف العمل
@_@
رد: دورة c-script الدرس الثامن (المــ action ــهــام)
ترا هذا الدرس هو مجرد معلومات بسيطة بنتعرف على المهام بالدروس القادمة ان شاء الله
جرب السكربت المرفق مع المرحلة لانه قبل طلعتلي هذي المشكلة ومااذكر كيف حليتها
رد: دورة c-script الدرس الثامن (المــ action ــهــام)
ههه
اوكيه ديمو نجرب ونشوف
رد: دورة c-script الدرس الثامن (المــ action ــهــام)
اهلا
لقد فهمت الاكشن الاخيري
كما يبدو أنك وضعت roll ليدور حول نفسه
ثم وضعت wait لكي تعطي فرصة للاوامر الاخرى
رد: دورة c-script الدرس الثامن (المــ action ــهــام)
كذا نبغاك بسرعة تحط الدروس
+
متى رقم اخر درس تقريبا
رد: دورة c-script الدرس الثامن (المــ action ــهــام)
اقتباس:
المشاركة الأصلية كتبت بواسطة Game baker
ههه
اوكيه ديمو نجرب ونشوف
اقتباس:
المشاركة الأصلية كتبت بواسطة Game baker
اهلا
لقد فهمت الاكشن الاخيري
كما يبدو أنك وضعت roll ليدور حول نفسه
ثم وضعت wait لكي تعطي فرصة للاوامر الاخرى
صـــــــح عليك تستاهل التحية
اقتباس:
المشاركة الأصلية كتبت بواسطة PoKe Vx
كذا نبغاك بسرعة تحط الدروس
+
متى رقم اخر درس تقريبا
ياهلابيك اخوي اخر درس لم يتم تحديده الى الان لكن ان شاء الله فوق العشرة:biggthump
رد: دورة c-script الدرس الثامن (المــ action ــهــام)
رد: دورة c-script الدرس الثامن (المــ action ــهــام)
أخي بعد الإنتهاء من الدروس أعطنا بعد الأكواد الأساسية مع الشرع مثل
اقتباس:
ent_create() level_load
والتي تعتمد الألعاب عليها أساسا نخن ننتظر بفارغ الصبر دروسك القادمة
رد: دورة c-script الدرس الثامن (المــ action ــهــام)
تسلم ايدك ياورد وبارك الله بيك............
....................