المساعد الشخصي الرقمي

مشاهدة النسخة كاملة : GML - كل ما يتعلق بلغة الجيم ميكر



Son Of UAE
18-11-2004, 02:25 PM
بسم الله الرحمن الرحيم

GML هي اللغة المستخدمة بالجيم ميكر. بها الكثير من الاوامر و المتغيرات التي تساعد على تصميم الالعاب بسهولة و مرونة اكثر. و يمكنك التحكم بجميع خصائص اللعبة ايضاً. الهدف من هذا الموضوع هو جعلك قادرا على تصميم اكوادك الخاصة و ليس نسخها من هنا وهناك. ستكتشف بعد فترة من الزمن وبعد متابعة الدروس القادمة انه بإمكانك الاستمرار لوحدك و الدخول بالاوامر الاكثر تعقيداً من غير الحاجة للعوده إلى هنا.

ولكن لماذا نستخدم اللغة بالرغم من وجود بعض ايقونات الاوامر ؟
لعدة اسباب وأهمها على حسب اعتقادي.
- سهولة كتابة الاوامر و تصميم الحركات التي تريدها ( بعد ان تعتاد على الاوامر).
- السرعة في تتبع الاخطاء و سهولة متابعة الاوامر بالكود الواحد وفهم ما بالكود بنظرة واحدة.
- وجود اوامر اكثر باللغة عن التي هي موجوده بالايقونات.
- سهولة نقل الاكواد من اوبجيكت لاخر عن طريق ( النسخ و اللصق).
- سيكون بداية انطلاقك إلى عالم البرمجة الحقيقة بسبب التشابة الكبير بينهما.

لمذا اصبحت اللغة GML اسهل من السابق؟
- وجود كتاب المساعدة الذي يحتوي على جميع الاوامر و قواعدها. مع الامثلة للبعض.
- تقوم واجهة البرنامج بتلوين النص على حسب نوع الكلمه المستخدمة .
- وجود كاتب سريع يتتبع الاوامر و يساعدك في اختصار كتابتها في اسفل واجهة البرنامج.

أين ابداء البرمجة بالجيم ميكر؟
البرمجة تكون لشيئين. الاول هو الاوبجيكت Object والثاني هو الروم Room.
في حالة كتابة الكود للروم فانه عليك دخول الي خصائص الروم المطلوب ثم الدخول الي الاعدادات Settings. ستجد زر صنع الاكود Create Code . اضغط علية لتتمكن من البدء بالبرمجة فيه.
في حالة كتابة الكود للاوبجيكت فهناك مكانين:
الاول هو قطعة من الكود Piece of Code: يمكنك ضعها في الحدث event المناسب وبداء كتابة اوامر البرمجة بها.
الاثاني هو السكريبت Script : يمكنك كتابة اوامر البرمجة بها و ستكون محفوظة مع المصادرResources وعند الانتهاء يمكنك وضعها بأي اوبجيكن و بأي حدث.

هناك فروقات بين قطعة من الكود و السكريبت .. سنتكلم عنها لاحقاً.


الفقرة الثانية ستكون عن المتغيرات.
إلى اللقاء ....

dante sparda
18-11-2004, 02:46 PM
مشكور أخوي Son Of UAE

gc_master
19-11-2004, 05:24 AM
مشكور اخوي
كنت استنى هالدرس ...
اعتقد بعد ما اتعلم اللغه مالت الجيم ميكر بقدر اسوي لعبه ثري دي لان في الجيم ميكر 6 هو حط الخصائص هاي لكن في اللغه مش في الايقونات...
مشكور وما قصرت...

Son Of UAE
19-11-2004, 12:09 PM
المتغيرات
في البداية, يجب معرفة ان المتغيرات هي حاويات لقيم عددية او احرف. او بالاحرى المتغيرات هي عناوين لمواقع في ذاكره الكمبيوتر تحوي قيم معينه. و الجدير بالذكر ان متغيرات الجيم ميكر تنقسم إلى ثلاثة اقسام.

القسم الاول : المتغيرات العالمية Global Variables
وهي متغيرات لا يمكن تغير محتواها و لكن يمكن الاستفاده منها. وغالبا ما تكون هذي المتغيرات تفيدك بمعلومات عن جهازك. او عن اللعبة نفسها. و خير مثال هو الامر التالي
mouse_x هذا الامر يعطيك موقع مؤشر الفاره على حسب موقعها من واجهة اللعبة
وايضاً
current_minute فهذا المتغير يعطيك عدد الدقائق على حسب ساعة جهازك.

القسم الثاني: متغيرات الاوبجيكت Objects Variables
وهي متغيرات تكون موجوده افتراضيا مباشرةً بعد وضع اوبجيكت في الروم. ومن اهمها
x و y حيث انهما يدلان على موقع الاوبجيكت في الروم

القسم الثالث : المتغيرات الخاصة بك
وهي متغيرات انت تقوم بتحديدها لغرض ما باللعبةز عادةً تكون اما عداد لشيء ما او مؤقت لغرض معين. و مثال عليها
money= 0 و هو متغير قمت انا بوضعه و هو غير معروف للجيم ميكر و جعلت قيمته صفر. واريد ان استخدمه كعداد للنقود التي ساجمعها باللعبة.

لا تنسى ان تسمية متغيراتك الخاصة لها شروط
- ان لا تتعدى 64 حرف
- ان تبداء بحرف
- ان تستخدم حروف او ارقام او خط السفلي ( _ ) فقط !
- يكون باللغة الانجليزية و يجب ان تنتبه للحروف الكبيرة و الصغيره.

هذا ما تحتاج معرفته حالياً .

الفقرة التالية عن المعادلات

الافاق
19-11-2004, 02:11 PM
مشكورررررررررررررر على الدرس الرائع

DANTSHUO
20-11-2004, 12:46 PM
أبي أعرف من هذا الدرس :أفكر:
الـجـيـم مـيـكر
لـغـة برمجة تنحط فيها الأكواد
أو برنامج تصميم ينحط فيه الأكواد
؟؟؟؟؟؟؟؟؟؟؟؟:06:
و أنا متعجب:bigeyes: :bigeyes: من هذا البرنامج

Son Of UAE
20-11-2004, 06:28 PM
أبي أعرف من هذا الدرس :أفكر:
الـجـيـم مـيـكر
لـغـة برمجة تنحط فيها الأكواد
أو برنامج تصميم ينحط فيه الأكواد
؟؟؟؟؟؟؟؟؟؟؟؟:06:
و أنا متعجب:bigeyes: :bigeyes: من هذا البرنامج

برنامج تصميم ينحط فيه اكواد ... :)

Son Of UAE
20-11-2004, 07:38 PM
المعادلات
قبل البدء بالمعادلات. يجب معرفة بعض الاساسيات. اهمها تعريب المتغير ووضع قيمة له. ونحن تنحدث عن متغيرات الاوبجيك او المتغيرات الخاصة بك. ويتم ذلك عن طريق التالي:
في الحدث Create لكل اوبجيكت يجب تسمية المتغيرات و ووضع قيمه لها. ومثال على ذلك لو كنت تريد صنع بطل له سلاح به عدد 10 من الطلقات و طاقته تساوي 100 و له 3 ارواح. فيكون كالتالي:

weapon =10;
health= 100;
live = 3;
نلاحظ وجود فاصلة منقوطه في نهاية كل سطر. لندل البرنامج على نهاية السطر او المعادلة.

أثناء اللعب. تحث بعد التغيرات في القيم. وذلك من خلال عمليات حسابية بسيطة و اهمها:
الجمع +
الطرح -
الضرب *
القسمة /

علينا معرفة كيف استخدام هذه الادوات البسيطه. مثلاً لو اردنا ان ننقص عدد الطلقات للسلاح بمقدار (واحد) عن كل طلقة يقوم اللاعب بها فماذا نفعل ؟ في المثال الاول اعطينا المتغير قيمه ثابته و هي 10. ولكن الان نحتاج الي معادلة تساعدنا على انقاص قيمة الطلقات بمقدار (واحد) لكل طلقة دون الحاجه لمعرفة كم طلقة موجوده عندنا حالياً.ويتم ذلك بأحد الطرق التالية:

weapon -= 1; او
weapon = weapon -1
الطريقة الاولى هي ان هذه المعادلة تقوم باخذ القيمة الموجوده بالمتغير weapon و انقاص منها بالقيمة الموجوده بعد الاشارة يساوي. وهي في مثالنا تساوي (واحد).
الطريقة الثانية هي ابسط للمبتدئين.حيث انك تستطيع ان ترى ما هي القيم المتوفره و كم الناتج الذي سيخرج لك في المتغير weapon. فلو كان المتغير يساوي (7) فان المعادلة تصبح
weapon = 7 - 1; ويكون الناتج هو (6). اليس الامر سهلاً ؟

يمكن تطبيق هذه الطريقتان لكل من الادوات الحسابية المتوفره. علماً بان هناك المزيد. ولكن كمبتدئين, هذا يفي بالغرض. وهنا بعض الامثلة لاستخدام المعادلات البسيطة.

{
score = 100*5;
live = live + 1;
speed /= 100+(score*live);
}

وهكذا ...

الفقره القادمة عن الادوات الشرطيّة.

Mr. Black Man
20-11-2004, 10:38 PM
موضوع أكثر من رااااائع :bigeyes:
هذا الموضوع راح يفيد الكثير من مبتدئي الجيم ميكر :)
في إنتظار التكملة ;)
و شكراً لك على المجهود الرائع :biggthump

DANTSHUO
21-11-2004, 01:40 PM
برنامج تصميم ينحط فيه اكواد ... :) أحـيـن فهمت أنا كنت أدري أنه برنامج تصميم

Wolf Sniper
21-11-2004, 06:28 PM
الله يعطيك العافية .. موضوع ممتاز ;) هذه المواضيع التي نريدها في المنتدى .. دروس و تعليم من أجل تطوير هذا المنتدى .. الله يوفقك و يجعل هذا الموضوع في ميزان حسناتك .
على فكرة بعض الأوامر اللي كاتبها مشابهة تماماً لأوامر ++C .. عجيب :icon16:

Son Of UAE
21-11-2004, 06:32 PM
الادوات الشرطية
اعتبرها شخصياً اهم جزء بالبرمجة. لو تتقنها بشكل ممتاز سيسهل التعامل مع جميع المتطلبات الاخرى. هناك عدة ادوات ومن اهمها:
If و Else
While
Do و Until
سنتكلم بهذه الفقرة عن الادات If والتي تعني بالعربية " إذا ". فكيف يكون استخدامها؟ على حسب الشكل التالي يمكنك كتابة الادات في ابسط صورة:
{
if (<expression>) <statement>
} حيث ان expression هي المعادلة للجملة الشرطية. فإذا كان الجواب صحيحاً فانه يقوم بقراءه الامر الذي يليه مباشرة. وهو statement.
ولتسهيل فهم الطريقة نحاول ان نعطي عبارة يفهمها الانسان ونحولها إلى لغة بسيطة للجهاز ليقوم هو لاحقاً بتحويلها إلى لغة الالة. فنقول:
لو كان عندنا شخصية تجمع التفاح في احد الالعاب. فلو جمع 100 تفاحة فانك تسمع صوت يعلمك بذلك. و بطريقة اخرى , انه " إذا " كان عدد التفاحات يساوي 100 " فأنه " يسمع صوت معين.
لا حظ ان " إذا " هي الادات الشرطية IF و "التفاحات يساوي 100" هي المعادلة الشرطية و " فأنه " هي عبارة عن بداية الناتج و تكتب Then. كما بالكود التالي:
{
If (apples == 100) Then
sound_play(sound01);
} لاحظ وجود اقواس على المعادلة الشرطية فهي مهمة لتوضيح مكان المعادلة. ولو تلاحظ أننا وضعنا اشارتين يساوي فهذي تدل على ان المعادلة موجودة للمقارنه بين قيمتين. فكانت المقارنه هي هل عدد التفاحات يساوي العدد 100.
ماذا لو اردنا ان يحدث عدد من الاشياء بعد اكتمال الشرط ؟ مثال على ذلك. بعد جمع 100 تفاحة فانه:
1 - تسمع صوت
2 - يصبح حدد التفاحات يساوي صفر
3 - يزداد عدد الارواح بمقدار 1

تقوم الادات IF بقراءة السطر الذي يليها مباشرة لو كانت الاجابة صحيحة True و يقوم بتجاوزها و الانتقال للجملة التي بعدها لو كانت خاطئة False. ولكن بستخدام الاقواس {} فاننا نحدد للادات اي مجموعة من الاسطر التي يجب قرائتها إذا كانت الاجابة صحيحة.

هنا مثال على شاكلة السابق يبين ما يحدث بالتفصيل. عند اخذ اي تفاحة فان النقاط Score تزيد بمقدار 100. ونسمع صوت Sound01 يدل على اخذ التفاحة ويزيد عدد التفاح بمقدار واحد. ولكن لو اصبح عدد التفاح يساوي 100 فان اشياء اضافية تحدث مثل صوت اخر Sound02 يدل على بلوغ ال100 تفاحة و يصبح عدد التفاح apples يساوي صفر. و الارواح lives تزيد بمقدار واحد.
في الحدث Collision للتصادم بين اللاعب و التفاحة نضع هذا الكود.
{
score = score + 100;
apples = apples + 1;
sound_play(Sound01);
if (apples ==100) then
{
sound_play(Sound02);
apples = 0;
lives = lives + 1;
}
} من هذا الكود لو تتبعه سطر بسطر ستلاحظ اني قمت بتحويل المثال السابق الي كود بسيط تستطيع فهمه و يستطيع الجهاز فهمه ايضاً.
لا اريدك ان تنسى ان ادات المقارنه ليست فقط يساوي انما هناك اشارات اخرى مثل " اكبر من " > او " اصغر من او يساوي" <= و العديد منها: كما بالتالي :
< <= == != > >=

هذه الفقرة عبارة عن خلاصة لاستخدامات الادات IF حيث هناك اسرار و اساليب كثيره لاستخدامها. و لا يمكن تصميم لعبة من غير هذه الادات. سنقوم بمراجعة الاستخدامات الاخرى للادوات الشرطية حيث انني لم اتعمق بالموضوع لجعله بابسط صوره.

الفقرة التالية عن الدوال. وكيفية استخدامها.

Son Of UAE
21-11-2004, 06:36 PM
على فكرة بعض الأوامر اللي كاتبها مشابهة تماماً لأوامر ++C .. عجيب :icon16:
شكراً على شهادتك .. هذا هو المقصود بوضع هذي الدروس. :) تسهيل الانتقال للمرحلة التالية ;)

the kelar + الافاق + rayman4anime + MR. BLACK MAN = العفو .. و شكرا للتشجيع :أفكر: .

UAE Naruto
21-11-2004, 07:30 PM
::

::

هممممم

good luck

::

::

Son Of UAE
25-11-2004, 08:25 AM
الدوال Functions
الدوال هي عبارة عن اوامر مبنية بلغة الجيم ميكر لتساعدك على اختصار بعض العمليات المطلوبة لبرمجة الالعاب. واحب ان اقسم انواع الدوال في الجيم ميكر إلى ثلاثة انواع. و قبل البدء اود ان اوضح ان شكل الدالة هو عبارة عن أمر يلية قوسين كما بالمثال التالي:
sound_play(sound01); وهو نفس الكود الذي استخدمناه بالفقرة السابقة لتشغيل صوت معين.

النوع الاول: هي الدالة التي تقوم بوظيفة معينة من غير الحاجة إلى ادخال معطيات بها. ومثالها
instance_destroy(); وهي تقوم بتدمير الاوبجيكت الخاص بها. لاحظ انه لايوجد شيء بين القوسين. أي اننا لم ندخل اي معطيات او بيانات بها.

النوع الثاني: هي الدالة التي ندخل بها بعض البيانات لتقوم بوظيفة معينه. ويجب ان تكون البيانات مقبولة من قبل الدالة لتفادي الأخطاء ومثالها:
sleep(numb); حيث ان هذه الدالة تقوم بتجميد اللعبة بعدد الموجود بين القوسين و هذي الوحده مكتوبة بالجزء من الثانية.

النوع الثالث: هو النوع الذي يقوم بارجاع معلومات لك والمعروف بكلمة Return. وهي من اهم الانواع لكفائتها بختصار البرمجة بشكل عام. ستلاحظ ذلك بعد قيامك بتصميم لعبتك لاحقاً. ومثال ذلك:
instance_create(x,y,obj); وهذه الدالة تقوم بصنع اوبجيكت جديد بالروم حيث اننا ادخلنا ثلاث معطيات و هي الموقع بالطول X و الموقع بالعرض Y و اسم الاوبجيكت. ( على حسب تسميتك له ). ولكن اين القيمة العائدة وما هي ؟ القيمة العائدة Return هي رقم التعريفي للاوبجيكت الذي صنعته و المعروف بID. حيث ان لكل اوبجيكت رقم تعريفي خاص. حتى لو كانوا من نفس النوع. القيمة العائدة لم يستفد منها بالمثال السابق. و بالمثال التالي سوف اريكم كيف نستفيد منها. نفرض اننا نصمم لعبة حيث يقوم البطل باطلاق النار باتجاهين مختلفين بنفس الوقت. لا داعي لتصميم طلقتين واحد لليمين و الاخرى لليسار. كل ما عليك فعله هو كتابة كود بنفس طريقة التالي. حيث ان اسم الطلقة هو shot و اسم المتغير الذي سيحفظ الرقم التعريفي للمتغير هو new_shot.
{
new_shot = instance_create(x,y,shot);
new_shot.hspeed = 10;
new_shot = instance_create(x,y,shot);
new_shot.hspeed = -10;
} لاحظ ان الكود يكتب مثلاً في حدث الضعط على الزر مسافة في اوبجيكت البطل. و يكون المتغيران x و y عائدان للبطل . اي ان الطلقات تخرج من البطل. و استخدمنا hspeed وهو متغير للاوبجيت بعطيه سرعة افقية. بالطلقة الاولى جعلناها تنطلق الي الجهة اليمنى حيث كانت الاشارة موجبة. و الى الجهة اليسرى للطلقة الثانية بوضع اشارة سالبة.

قد يستغرب البعض من السطر التالي حيث اني لم اشرح هذا التركيب الغريب:
new_shot.hspeed = 10; بختصار. تستخدم هذي الطريقة لاستخدام متغيرات اوبجيكت اخر في اي وقت. وفي مثالنا حددنا الاوبجيكت المطلوب وهو الذي تم حفظ رقمه التعريفي بالمتغير new_shot و من ثم حددنا المتغير الخاص به المطلوب تغييره وهو hspeed. ساقوم بشرح مفصل لاحقاً

عند الانتهاء من هذي الفقره. يجب ان تعلم بانك تعلمت اهم الاساسيات المطلوبه وكل ما تبقي هو قيامك بتشغيل البرنامج وفتح ملف المساعده و البدء بتصميم اكوادك الخاصة.

الفقرة التالية عن كيفية قراءه كتاب المساعدة.

Son Of UAE
26-11-2004, 10:05 PM
عندي سؤال ... هل استفاد شخص واحد من شرح لغة الجيم الميكر ؟ :06:
بختصار .. هل اتابع ؟

Mr. Black Man
27-11-2004, 12:57 PM
نعم تابع ;)
شرحك أكثر من رائع و أعتقد إنه جميع مستخدمي الجيم ميكر سيستفيدون منه ... و أيضاً الموضوع سيبقى مرجعاً للأعضاء الجدد في المستقبل :)

son of Qatar
27-11-2004, 01:32 PM
نعم استفدت كثيرا شكرا لك على شرحك المفصل والرائع وارجو منك ان تكمل دروسك في اسرع وقت:biggthump

الافاق
27-11-2004, 01:32 PM
اقولك اخي ابن الامارات كمل موضوعك لاني صراحة عندي اشغال في الاسبوعان الاخيريين فقد كان لدي اختبارات
اعذرني

UAE Naruto
27-11-2004, 01:51 PM
عندي سؤال ... هل استفاد شخص واحد من شرح لغة الجيم الميكر ؟ :06:
بختصار .. هل اتابع ؟


::

::

تبغي الصدق؟ لأ خخخخخخخخخخخخ اتمصخر :09:

الصدق إني استفد وايد لأني قبل اسبوع/ــين ابتديت احاول إني اتعلم على الجيم ميكر و خاصة في مجال كتبة الأكواد لأنها سهله و حلوة لكني واجهت بعض الصعوبات لحد ألحين ما لقيت لها حل

إن شاء الله في تكمله شرحك يمكن احصل حل لها (اتمنى :أفكر: )

يلّه...راونا شغلك...و توكل على الله

::

::

سلامة المصرى
27-11-2004, 09:04 PM
أكيد تابع ............. خصوصا وأنك تصل بطريقتك في الشرح لأفق السي بلس بلس بالفعل ... !!!
أستاذ فعلا .....

سلامة

Son Of UAE
27-11-2004, 10:28 PM
MR. BLACK MAN و son of Qatar و الافاق و UAE Naruto و سلامة المصرى
شكراً على ردودكم .. ساكمل الموضوع حالاً .. بالرغم من التوقيت السيء على ما اعتقد ..
اليست فترة اختبارات ؟ :33:

الي عنده اقتراحات .. يتفضل .. :)

Son Of UAE
27-11-2004, 11:30 PM
استخدام ملف المساعدة
في هذه الفقرة سوف تتعلم كيفية استخدام ملف المساعدة المرفق مع برنامج الجيم ميكر . قد يعتقد البعض انه غير مفيد . لكني أؤكد ان ملف المساعده هو افضل و اسرع و احسن مرجع للجيم ميكر. حيث يحتوي على جميع الشروحات و بعض الامثلة للكودات. ساقوم بنسخ ولصق بعض الاوامر و سوف اقوم بتفسيرها إلى أن تتمكن من قراءه الاوامر الاخرى بنفسك. ومنها يمكن تصميم العابك بسهولة و يسر. وكالمعتاد , سوف نبحث عن الاوامر البسيطة كبداية. ثم ننتقل للمراحل التي هي اصعب.

عند فتح ملف المساعده, تختار فصل لغة الجيم ميكر ومنه تجد عدة وحدات مقسمة بطريقة منسقة وبسيطة. و اهم الوحدات المطلوبة كمبتدئين هي:
الحسابات = Computing things
اللعب = Game play
واجة المستخدم او التحكم = User interaction
الرسومات = Game graphics
الاصوات و الموسيقى = Sound and music


والان نبداء بقراءة المثال الاول:
abs(x) Returns the absolute value of x. هذا النص منسوخ من ملف المساعده ولو نقراء الامر abs فهو اختصار لكلمة absolute value ومعناها القيمة المطلقة. نعم بالفعل. هي نفس القيمة المطلقة التي سمعت بها في حصص الرياضيات. وكما تعلمت سابقاً. الامر السابق هو عبارة عن دالة Function تدخل فيها قيمة معينة. ولقد وضع لها المتغير x للتعبير عنها فقط ( ليس شرط ان يكون الحرف x بين القوسين ) ومن كلمة Returns أي ترجع. نستنتج ان لها قيمة عائدة. وتكون القيمة العائده هي القيمة المطلقة للقيمه المدخلة. يبدو الامر معقداً ؟ تابع المثال التالي:
get_value = abs(vspeed); حيث نقوم بحفظ القيمة المطلقة للمتغير vspeed ( السرعة الافقية ) في المتغير get_value ( متغير خاص بك)
فلو كان vspeed = 15 فإن get_value = 15
ولو كان vspeed = -20 فإن get_value = 20

أليس الامر سهلاً ؟

نجرب مثال اكثر تعقيداً:
random(x) Returns a random real number between 0 and x. The number is always smaller than x.
في هذه الدالة نرى الامر Random ومعنى الكلمة هو عشوائي. وتفسير الجملة هو :
يرجع رقم حقيقي عشوائي بين الصفر و المتغير. ويكون الرقم دائماً اصغر من المتغير.
تأمل جيداً . هل عرفت الحل ؟ ماذا لو كان المتغير يساوي 5. كم تتوقع ان تكون الاجابة ؟ من كم إلى كم ؟
لو كان تخمينك صحيحاً 100% . سيكون الجواب هو " بين 0 و 4.9999999999 ". قد يتسأل البعض ؟ لماذا لم يكن الجواب هو بين 0 و 4 ؟ الجواب هو ان مصمم البرنامج قام بتصميم الامر بهذه الطريقة لكي يستفاد منها بطرق اخرى لاحاجة لشرحها الأن.

سنقوم الان بخطوه جديده من نوعها . وهي دمج دالتين بحيث اننا نحصل على رقم صحيح عشوائي. وذلك عن طريق الدالتين :
random و round
والدالة Round هي ااتقريب لأقرب عدد صحيح Integer ( كما هو موجود بملف المساعدة )
ولكن نريد ان يكون الناتج هو من 0 الي 9 . وجميعها اعداد صحيحة. يكون ذلك كالتالي:
{
range = 10;
get_value = round(random(range));
} سيقوم الجهاز بتنفيذ الامر الذي بين الاقواس اولاً. ( كما درست بالرياضيات) اي ان الناتج سيكون بين 0 و 9.99999999 . فقد يكون 3.535642114 و قد يكون غيره . وهذا ما لا نريده. نقوم بالتخلص من الكسور عن طريق الدالة round حيث تحول القيمه 3.535642114 الي 3 وترجعها بالمتغير get_value.


نوع اخر من القرائات بملف المساعدة. عباره عن شرح للمتغيرات الخاصة بالاوبجيكت. وهي مفيده جداً. ومن امثلتها :
x Its x-position.
y Its y-position.
xprevious Its previous x-position.
yprevious Its previous y-position.
xstart Its starting x-position in the room.
ystart Its starting y-position in the room. وهي موضوعة بطريقة سهل و مرتبة. لاحظ انه يمكنك تغير جميع المتغيررات السابقة. ولكن يجب ان تعلم ان هناك قيم لا يمكن تغيررها. لكن يمكن الاستفاده منها. وامثلتها :
fps* Number of frames that are actually drawn per second.
current_time* Number of milliseconds that have passed since the system was started.
current_year* The current year.
current_month* The current month.
current_day* The current day.

هذا ما تحتاجه حالياً بخصوص الملف المساعدة . يفضل المرور على الدوال المتوفره بالبرنامج ليكون لديك فكره عن قدرات الجيم ميكر قبل البدء بتصميم العابك . مجرد تصفح سريع للملف.

الفقرة القادمة ستكون بإذن الله عن المتغيرات الجزء الثاني.

Mr. Black Man
28-11-2004, 01:18 PM
نعم فعلاً فالآن فترة إختبارات و بعد شوي راح تبدأ إمتحانات نصف السنة و شباب المنتدى كلهم مشغولين في الدراسة :D :D ... لذلك لا تنزعج إذا لاحظت قلة التفاعل في الفترة الحالية ... و إستمر :biggthump

DANTSHUO
28-11-2004, 02:39 PM
مـشـكـور أخ سون أوف

rabe3ab
02-12-2004, 06:02 AM
مشكور
و بشان تعم الفائدة ممكن تجمعلنا كل هالدروس و تحطلنا اياها بملف واحد
(.doc, .txt)
وشكرا

^عبدالعزيز..ع^
07-12-2004, 07:27 PM
موضوع في قمة الروعوعة خاصة بأني أتعلم أنجليزي آخر شي خذناه هاوس
الموضوع قمة بروعة بس أنت كذه:biggthump :biggthump :biggthump :bigok: :bigok: :bigok: :bigok: :bigok: :bigok: :bigok: :bigok:

DANTSHUO
09-12-2004, 06:31 AM
مشكور أخوي و تابع بس لا خطأ و تسمي الجيم ميكر لغة و هو برنامج تصميم عادي

Mr. Black Man
10-12-2004, 04:08 PM
مشكور أخوي و تابع بس لا خطأ و تسمي الجيم ميكر لغة و هو برنامج تصميم عادي

هو لم يسمي الجيم ميكر باللغة ... و لكن الجيم ميكر له لغة خاصة تساعد في تصميم الألعاب عليه بمستوى أعلى ... و هو قاعد يشرح هذه اللغة :tongue2: ... إذاً أين الخطأ ؟؟!

Mr. Black Man
10-12-2004, 04:09 PM
مشكور أخوي و تابع بس لا خطأ و تسمي الجيم ميكر لغة و هو برنامج تصميم عادي

هو لم يسمي الجيم ميكر باللغة ... و لكنه قاعد يشرح اللغة المستخدمة في الجيم ميكر و التي من خلالها يمكن تصميم الألعاب بمستوى أعلى و بإمكانيات أحسن ... إذاً أين الخطأ ؟؟!

Son Of UAE
10-12-2004, 07:21 PM
شكراً على الرد يا مستر بلاك مان .. كنت اعتقد ان العيب بالشرح ... ولكن اتضح العكس :)
اتابع الدروس قريباً جداً ان شاء الله. ;)

Tranedo
12-12-2004, 03:18 PM
مشكووووووووووووووووووووووور

واااااااااااااو تصدق ما انتبهت للدرس الا اليوم !!

طريقة شرحك راااائعة لكن لو تدعمها ببعض الامثلة يكون افضل :)

وفي انتظار التكملة ;)

^عبدالعزيز..ع^
14-12-2004, 01:38 PM
استمر
لاكن هل أنها الموضوع :17:

son of Qatar
23-01-2005, 04:54 PM
وين الشرح شكلك باطول .......انتظر:أفكر: :أفكر: :أفكر:

Son Of UAE
23-01-2005, 11:38 PM
الشرح موجود بس صناعه امثله امر صعب و متعب ... سأتابع الدروس عند اقرب فرصه كما وعدت :)

Ahmedbna
22-02-2005, 05:51 PM
اتمنى يا SON OF UAE كمالة دروسك
ولا تتوهم ان شرحك صعب صدقنى انا فهمة اتمنى ايضا ان تقرأ ما كتبتة للأخ الأخطبوط

Ahmedbna
04-03-2005, 09:41 AM
ايه يانت الأمارات لماذا لم تكمل الدروس حتى الأن انا مشتاق لكمالة الدروس سريعا

ZSER
05-03-2005, 03:00 PM
انا اضم صوتي لابن مصر كمــــــــــــــــــــــل

arabpconline
12-05-2005, 10:04 AM
شكرااااااااااااااااااااااااااااااااااا

الصراحة الموضوووووووووع جدا رااااااااائع وأنا كنت ودي أتعلم لغة الجيم الميكر ولم أجد درس رااااائع مثل درسك

Son Of UAE
12-05-2005, 02:50 PM
العفو اخوي .. ارجو انك تستفيد من الدروس .... و للذين يطالبون بالمزيد ياريت توضحون نقاط الضعف عندكم و المشاكل لتكون الدروس اكثر فائده ...

لاني اعتقد ان ملف المساعدة المرفق به كل ما تحتاج. ولقد شرحت حتى كيفية استخدامه :)

sunshine1
03-02-2009, 08:36 PM
ارجو منك متابعة الموضوع انه رائع جدا انا مكنتش فاهم اى حاجة من ملف المساعدة ده كنت محتاج مترجم يترجم من عربى لعربىى وكان موضوعك هو المترجم تابع الدروس اخى واشكرك على الاهتمام بمشاكل المبتدئين فى البرمجة

Karim Ghazal
03-02-2009, 09:22 PM
يُمنع الرد على المواضيع القديمة ...

مُغلق !