Unconfigured Ad Widget

تقليص

إعـــــــلان

تقليص
لا يوجد إعلان حتى الآن.

(درس Unity 3D) عمل شاشة تحميل قبل بدأ اللعبة أو المرحلة -الجزء الثاني-

تقليص
X
 
  • تصفية - فلترة
  • الوقت
  • عرض
إلغاء تحديد الكل
مشاركات جديدة

  • (درس Unity 3D) عمل شاشة تحميل قبل بدأ اللعبة أو المرحلة -الجزء الثاني-


    عمل قائمة تحميل قبل بداية المرحلة أو اللعبة
    "الجزء الثاني"

    السلام عليكم ورحمة الله وبركاته
    بعد إكمالنا التعرف على أساسيات عمل القائمة في الجزء الأول من السلسلة
    والتعرف على طريقة عمل شاشات التحميل الثابتة-أو غير المتحركة-
    نبدأ اليوم إن شاء الله بإضافة بعض الحياة لها وجعلها تتحرك

    بداية وقبل بدأ الدرس أود أن أنبه أن كل الطرق التي سأذكرها تعتبر غيض من فيض
    فكل مبرمج وله أكثر من طريقة لكن سأحاول ذكر الطرق البسيطة سهل الفهم بما أن الدروس موجهة للمبتدئين في المقام الأول وأيضا سأحاول ذكر أكثر من طريقة إن إستطعت ذالك
    ملاحظة : أرجو قرائة الجزء الأول إن لم تكن تفهم شيئ أو مازلت مبتدإ جدا في البرمجة
    http://www.maxforums.net/showthread.php?t=217440
    لأنه يحتوي بين أسطره على ما سيفيدك في فهم هذا الدرس لأن هذا الدرس لن يكون بتوسع الدرس الدي قبله بإعتبار أنك قد فهمت التكنيك المتبع في الشرح لنبدأ بإسم الله
    في البداية دعنا نتذكر أكواد الدرس الماضي وعملها
    وسوف نبدأ بالشاشات النصية وثم ننتقل لمرحلة إضافة الصور أو ماشابه :-1- في البداية نبدأ بتذكر الكود الماضي الذي يساعدنا على إظهار نص في منتصف شاشة التحميل لمدة 12.0 ثانية وهو كالتالي :

    كود:
    [B]private var  loading_time = 12.0;[/B]
    [B]function Update () {[/B]
    [B]if (Time.time > loading_time) {[/B]
    [B]Application.Loadlevel (n);[/B]
    [B]}[/B]
    [B]}[/B]
    [B]Function OnGUI () {[/B]
    [B]GUI.Label(Rect(Screen.width/2-(n),Screen.height/2,100,40),"Loading…");[/B]
    [B]}[/B]
    طيب الآن أنت إذا أردت تحويل هذا الكود إلى كود متحرك برأيك ماذا ستفعل كيف تريد النص أن يظهر؟؟؟
    بالنسبة لي أريد النص أن يظهر مثل ما كنت أشاهد في بعض الألعاب القديمة
    Loading
    Loading.
    Loading..
    Loading…

    وهكذا تظهر الكلمة تم تضهر نقطة ثم نقطتان ثم ثلاث ثم تعود من دو نقاط وهكذا إلى ان تظهر اللعبة أوكي الآن بحسب ما فهمت بإعتقادك أولا وفي المقام الاول الأول مالذي ستفعله؟؟؟
    بالنسبة لي وأعتقد أنه ما تظن سنعدل على الكود طبعا لكن كيييييييف؟؟؟
    يأتي هنا التحدي وبداية يجب دراسة المعطيات التي ستزيد وهي بدل أن نضع نص واحد ستكون معنا 4 نصوص ويجب وضع عبارة شرطية للتحكم به كي يتم التبادل بسلاسة صح؟
    إذا لنبدأ بالتعديل عليه خطوة خطوة في البداية يجب علينا كتابة كل النصوص المطلوبة وهي هنا أربع كلمات
    إذا سنضيف أربعة أكود في دالةOnGUI وهي كالتالي :
    GUI.Label(Rect(Screen.width/2-(n),Screen.height/2,100,40),"Loading");
    كود:
    [B]GUI.Label(Rect(Screen.width/2-(n),Screen.height/2,100,40),"Loading.");[/B]
    [B]GUI.Label(Rect(Screen.width/2-(n),Screen.height/2,100,40),"Loading..");[/B]
    [B]GUI.Label(Rect(Screen.width/2-(n),Screen.height/2,100,40),"Loading…");[/B]
    قد تقولون هذا خطا بما أنه هكذا فستأتي الكلمات فوق بعضها لذالك هنا تكمن خدعة جديد وهي العبارات الشرطية ستفهمون قصدي الآن :
    الآن بعد كتابتنا للكلمات المطلوب ظهورها تباعا يجب ضبطها لتظهر كل في وقت معين بحيث لا تتداخل وتختفي عند إنتهاء وقتها المعين لها وسيكون ذالك بإضافة عبارات شرطية لأكواد الكلمات المطلوب ظهورها وأيضا بتعريف متغير يقوم بالزيادة دوريا مع مرور الوقت ويتوقف عند رقم معين ليعود للصفر ستفهم قصدي عند بداية شرح الكود تابع معي :
    إذا سيكون الكود هكذا قبل التغيير :
    كود:
    [LEFT] 
    [B]private var  loading_time = 12.0;[/B]
    [B]function Update () {[/B]
    [B]if (Time.time > loading_time) {[/B]
    [B]Application.Loadlevel (n);[/B]
    [B]}[/B]
    [B]}[/B]
    [B]Function OnGUI () {[/B]
    [B]GUI.Label(Rect(Screen.width/2-(n),Screen.height/2,100,40),"Loading");[/B]
    [B]GUI.Label(Rect(Screen.width/2-(n),Screen.height/2,100,40),"Loading.");[/B]
    [B]GUI.Label(Rect(Screen.width/2-(n),Screen.height/2,100,40),"Loading..");[/B]
    [B]GUI.Label(Rect(Screen.width/2-(n),Screen.height/2,100,40),"Loading…");[/B]
    [B]}[/B][/LEFT]
    وهذا هو بعد التعديل :
    كود:
    [LEFT] 
    [B]private var loading_time = 12.0[/B][B]; [/B]
    [B]private var animation_w : int[/B][B];[/B]
     
    [B]function Start[/B][B] () {[/B]
    [B]animation_w = 0[/B][B];[/B]
    [B]}[/B]
     
    [B]function Update[/B][B] () {[/B]
    [B]if (Time.time > loading_time[/B][B]) {[/B]
    [B]Application.LoadLevel(n[/B][B]);[/B]
    [B]}[/B]
    [B]animation_w += 1[/B][B];[/B]
    [B]if (animation_w > 84){animation_w = 0[/B][B];}[/B]
    [B]} [/B]
    [B]function OnGUI[/B][B] () {[/B]
    [B]if (animation_w >=0 && animation_w <25[/B][B]) {[/B]
    [B]GUI.Label(Rect(Screen.width/2-20,Screen.height/2,100,40), "Loading[/B][B]"); [/B]
    [B]}[/B]
    [B]if (animation_w >=25 && animation_w <45[/B][B]) {[/B]
    [B]GUI.Label(Rect(Screen.width/2-20,Screen.height/2,100,40), "Loading[/B][B].");[/B]
    [B]}[/B]
    [B]if (animation_w >=45 && animation_w <65[/B][B]) {[/B]
    [B]GUI.Label(Rect(Screen.width/2-20,Screen.height/2,100,40), "Loading[/B][B]..");[/B]
    [B]}[/B]
    [B]if (animation_w >=65 && animation_w <85[/B][B]) {[/B]
    [B]GUI.Label(Rect(Screen.width/2-20,Screen.height/2,100,40), "Loading[/B][B]...");[/B]
    [B]}[/B]
    [B]}[/B][/LEFT]
    طيب هذا هو الكود بعد التعديل أنت ممكن تقول( يا لطيف كل ده) أقولك لالالالالالا لييييييش كل الخوف ده كل الي قدامك تكرار وتعديلات بسيييييطة بس والله لو تعرفها بتقول أنه أسهل كود على الإطلاق طيب خلينا نبدأ التفصيل (مش تفصيل الثياب تفصيل بمعنى نجزء الكود ونشرحه )بسم الله :-
    أولا طبعا هنا لن نشرح الكود بالتفصيل الممل وإنما سوف أشرح التفاصيل الغير معروفة والتغييرات فقط بإعتبار أنك قد فهمت الأساس من الدرس الماضي (للإنتقال إليه إذهب للرابط أعلى الموضوع) طيب نكمل في البداية التغييرات في الكود كانت كالتالي وهي أولا عرفنا متغير يخزن في ذاكرة البرنامج تحت مسمى animation_w وهو من نوع عدد صحيح (int) ولن نحدد قيمته بل سنعرف نوعه فقط لأننا نريده أن يكون يبدأ تلقائيا وينتهي عندما نخبره ...
    نكمل الآن بعد أن قمنا بعمل المتغير الذي سيرتكز عليه تحرك النص قمنا بعمل إجراء جديد وهو تعريف دالة Start وهي الدالة المعنية بعمل الأكواد التي بداخلها عند بداية تشغيل المرحلة أو اللعبة وقمنا فيها بإرجاع قيمة المتغير animation_w إلى الـصفر وذالك إجراء إحتياطي لتأكيد قيمته عند بداية الشاشة ثم بعد ذالك قمنا بزيادة أمري في دالة Update وهما الأول :
    كود:
    [LEFT][B]animation_w += 1[/B][B];[/B][/LEFT]
    وهويقوم بزيادة قيمة المتغير animation_w عدد واحد في كل فريم يعني في الفريم الأول مثلا animation_w = 0 في لفريم الثاني يقوم الكود بعمله فيصبح animation_w = 0 +1 = 2 وهكذا في كل فريم يزيد قيمته واحد عن الفريم الذي قبله لكن هذا سيسبب زيادة المتغير إلى مالا نهاية حتى تتوقف المرحلة لذالك كتبنا كودنا الثاني :
    كود:
    [LEFT][B]if (animation_w > 84){animation_w = 0[/B][B];}[/B][/LEFT]
    وهو عبارة عن عبارة شرطية تقوم بالآتي ( إذا كانت قيمة المتغير animation_w >84 أكبر من 84 أربعه وثمانون يقوم الكود بإعادة المتغير animation_w إلى الصفر وعند إعادته إلى الصفر ترتفع قيمته من جديد مع كل فريم بسبب الكود animation_w +=1; حتى يصل إلى 84 فيعود للصفر من جديد وهكذا كلما زاد عن الـ 84 عاد إلى الصفر وكأنه يقوم بعمليةloop
    ستفهم مغزى كل هذا عند إكمال الشرح)
    طيب بعد ذالك نأتي للأهم الآن نحن لدينا أربعه أكود لأظهار أربعه نصوص على الشاشة لكن الأكود سوف تظهر في الشاشة في نفس الوقت وفوق بعضها وهذه مشكلة
    لالالا أبدا سوف نقوم بالتعديل عليها الآن لنضيف الكريما على الكعكة لنبدأ قلنا في البداية أن الكود قبل التعديل كان هكذا
    كود:
    [LEFT] 
    [B]private var  loading_time = 12.0;[/B]
    [B]function Update () {[/B]
    [B]if (Time.time > loading_time) {[/B]
    [B]Application.Loadlevel (n);[/B]
    [B]}[/B]
    [B]}[/B]
    [B]Function OnGUI () {[/B]
    [B]GUI.Label(Rect(Screen.width/2-(n),Screen.height/2,100,40),"Loading");[/B]
    [B]GUI.Label(Rect(Screen.width/2-(n),Screen.height/2,100,40),"Loading.");[/B]
    [B]GUI.Label(Rect(Screen.width/2-(n),Screen.height/2,100,40),"Loading..");[/B]
    [B]GUI.Label(Rect(Screen.width/2-(n),Screen.height/2,100,40),"Loading…");[/B]
    [B]}[/B][/LEFT]
    وهذا هو بعد التعديل :
    كود:
    [LEFT] 
    [B]private var loading_time = 12.0[/B][B]; [/B]
    [B]private var animation_w : int[/B][B];[/B]
     
    [B]function Start[/B][B] () {[/B]
    [B]animation_w = 0[/B][B];[/B]
    [B]}[/B]
     
    [B]function Update[/B][B] () {[/B]
    [B]if (Time.time > loading_time[/B][B]) {[/B]
    [B]Application.LoadLevel(n[/B][B]);[/B]
    [B]}[/B]
    [B]animation_w += 1[/B][B];[/B]
    [B]if (animation_w > 84){animation_w = 0[/B][B];}[/B]
    [B]} [/B]
    [B]function OnGUI[/B][B] () {[/B]
    [B]if (animation_w >=0 && animation_w <25[/B][B]) {[/B]
    [B]GUI.Label(Rect(Screen.width/2-20,Screen.height/2,100,40), "Loading[/B][B]"); [/B]
    [B]}[/B]
    [B]if (animation_w >=25 && animation_w <45[/B][B]) {[/B]
    [B]GUI.Label(Rect(Screen.width/2-20,Screen.height/2,100,40), "Loading[/B][B].");[/B]
    [B]}[/B]
    [B]if (animation_w >=45 && animation_w <65[/B][B]) {[/B]
    [B]GUI.Label(Rect(Screen.width/2-20,Screen.height/2,100,40), "Loading[/B][B]..");[/B]
    [B]}[/B]
    [B]if (animation_w >=65 && animation_w <85[/B][B]) {[/B]
    [B]GUI.Label(Rect(Screen.width/2-20,Screen.height/2,100,40), "Loading[/B][B]...");[/B]
    [B]}[/B]
    [B]}[/B][/LEFT]
    الآن أضفنا الكريما على الكعكة بقي تذوقها (نفصلها ونشرحها):-
    أولا هنا نحن قمنا بعمل التالي كانت أكواد إظهار النصوص تقوم بإظهار النص كما هو من دون أي شرط وإنما مادامت اللعبة أو المرحلة قد إشتغلت إذا تعمل الأكواد مباشرة وذالك سيشكل مشكلة لأن النصوص ستظهر في نفس الوقت وفوق بعضها لهذا نقوم بإضافة العبارات الشرطية لإضافة الحياة على تلك النصوص الميتة في أول كود لإظهار كلمة loading كان الكود هكذا :
    كود:
    [LEFT][B]GUI.Label(Rect(Screen.width/2-20,Screen.height/2,100,40), "Loading[/B][B]");[/B][/LEFT]
    وبعد إضافة الكريما صار هكذا :
    كود:
    [LEFT] 
    [B]if (animation_w >=0 && animation_w <25[/B][B]) {[/B]
    [B]GUI.Label(Rect(Screen.width/2-20,Screen.height/2,100,40), "Loading[/B][B]"); [/B]
    [B]}[/B][/LEFT]
    مالذي قمنا بفعله؟؟؟
    قمنا بالآتي :
    أولا بدأنا بإضافة أداة لشرط if ثم وضعنا الشرط وهو أهم تغيير وبهذا الشرط قمنا بربط المتغير animation_w بالنص ليظهر في وقت معين وفي قيمه معينه كالتالي إذا كان المتغير animation_w أكبر أو يساوي الصفر و إذا كان نفس المتغير أصغر من خمسة وعشرون ينفذ الكود الذي في منطقة جواب الشرط ووضعنا هناك كود إظهار النص بمعنى لن يظهر النص مالم يتحقق الشرط المكتوب والذي هو وجوب كون قيمة المتغير animation_w بين الصفر والخمسة العشرين وإن تعدا ال25 تختفي الكلمة لعدم تحقق الشرط .
    ملاحظة: && هنا تستعمل للإلحاق وللشرط المغلظ إن صح التعبير يعني إذا لم يتحقق الشرطان لن يعمل الكود إذاً && تستعمل للإشتراط بأكثر من شرط مع إشتراط تحقق كل الشروط أما إن أردت أن يكون التحقق إذا تحقق الشرط أو الشرط الآخر بمعنى إن تحقق أي الشرطين وليس ضروريا كل الشروط تكتب || .
    ثم نكتب بقية الشروط تباعا بالشكل التالي وهي أربع شروط في كل شرط إن تحقق تظهر كلمة من الكلمات الأربع وعندما تختفي تظهر في نفس اللحظة الكلمة التي تليها في عملية أشبه بالـ loop كالتالي:
    1- إذا كانت قيمة المتغير animation_w أكبر أو يساوي الصفر وأصغر من خمسة وعشرون تظهر كلمة loading
    2- إذا كانت قيمة المتغير animation_w قد تعدت الخمسة والعشرين بمعنى أنها أكبر أو يساوي الخمسة والعشرين (هنا قلنا أنه أيضا تساويه لأن الكلمة السابقة إن وصلت للرقم 25 تختفي فإن لم تكن هذه الكلمة تظهر في الرقم 25 فستلاحظ تقطع صغير سيشوه الشكل)وأصغر من45 تظهر كلمة loading.
    3- إذا كانت قيمة المتغير animation_w قد تعدت ال45 أو تساويه وأصغر من ال65 تظهر كلمة loading..
    4- إذا كانت قيمة المتغير animation_w قد تعدت ال65 أو تساويه وأصغر من 85 تظهر كلمة loading…
    ملاحظة :إن كنت تتذكر الكود الذي يرجع قيمة المتغير animation_w إلى الصفر عند بلوغه القيمة 84 لكن آخر كلمة تبقى تظهر إلى القيمة 85 هنا قمت بعمل ذالك حتى لايحدث تقطع أيضا في الحركة قم بتعديل الكود ولاحظ...
    وأيضا هنا قد تقول أنت أن الأرقام كبيرة وقد يسبب بطئ في ظهور النص بالشكل المطلوب؟
    لا أبد لأنه لو تتذكر أن المتغير يزيد بزيادة عدد الفريمات التي قد ظهرت وسرعة ظهور الفريمات كبيرة لكن من الممكن التعديل إن أردت تغيير طريقة إحتساب سرعة زيادة قيمة المتغير كما تشاء أنا هنا وضحت الفكرة الأساسية والبقية يجب أن تكون من إبداعاتك أنا مجرد مرشد لبداية الطريق وعليك الإكمال
    هذا كل شيئ بالنسبة للشاشات النصية المتحركة ....
    イブラヒムです
    Baaaaaaaaak


  • #2
    عذرا يبدو أني تأخرت


    الشاشات الصورية المتحركة :::-
    ننتقل الآن لآخر قسم من الأقسام لشاشات التحميل وهي الصورية المتحركة ولكن هنا سأضع الكود فقط وأبين موضع التغيير بينه وبين الشاشات النصية المتحركة لأنه لاداعي لتكرار الكلام مرة أخرى كودنا في آخر مرة كان هكذا :
    كود:
    [LEFT]private var loading_time = 12.0; 
    private var animation_w : int;
    
    function Start () {
    animation_w = 0;
    }
    
    function Update () {
    if (Time.time > loading_time) {
    Application.LoadLevel(n);
    }
    animation_w += 1;
    if (animation_w > 84){animation_w = 0;}
    } 
    function OnGUI () {
    if (animation_w >=0 && animation_w <25) {
    GUI.Label(Rect(Screen.width/2-20,Screen.height/2,100,40), "Loading"); 
    }
    if (animation_w >=25 && animation_w <45) {
    GUI.Label(Rect(Screen.width/2-20,Screen.height/2,100,40), "Loading.");
    }
    if (animation_w >=45 && animation_w <65) {
    GUI.Label(Rect(Screen.width/2-20,Screen.height/2,100,40), "Loading..");
    }
    if (animation_w >=65 && animation_w <85) {
    GUI.Label(Rect(Screen.width/2-20,Screen.height/2,100,40), "Loading...");
    }
    }[/LEFT]
    بعد التعديل يصبح :-

    كود:
    [LEFT]private var loading_time = 12.0; 
    private var animation_w : int;
    var loading_T1 : Texture;
    var loading_T2 : Texture;
    var loading_T3 : Texture;
    var loading_T4 : Texture;
    
    function Start () {
    animation_w = 0;
    }
    
    function Update () {
    if (Time.time > loading_time) {
    Application.LoadLevel(n);
    }
    animation_w += 1;
    if (animation_w > 84){animation_w = 0;}
    } 
    function OnGUI () {
    if (animation_w >=0 && animation_w <25) {
    GUI.Label(Rect(Screen.width/2-20,Screen.height/2,100,40), loading_T1); 
    }
    if (animation_w >=25 && animation_w <45) {
    GUI.Label(Rect(Screen.width/2-20,Screen.height/2,100,40), loading_T2);
    }
    if (animation_w >=45 && animation_w <65) {
    GUI.Label(Rect(Screen.width/2-20,Screen.height/2,100,40), loading_T3);
    }
    if (animation_w >=65 && animation_w <85) {
    GUI.Label(Rect(Screen.width/2-20,Screen.height/2,100,40), loading_T4);
    }
    }
    [/LEFT]
    التغيير الوحيد الذي قمنا به إن كنت تذكر الفصل الأول عندما قمنا بتعديل كود النص الغير متحرك إلى صورة غير متحركة قمنا بتغيير النص بمتغير وعرفناه بأنه تكتشر هنا قمنا بنفس العمل إن لاحظت قمت بتعريف أربعة متغيرات جديدة من نوع تكتشر
    كود:
    [LEFT]var loading_T1 : Texture;
    var loading_T2 : Texture;
    var loading_T3 : Texture;
    var loading_T4 : Texture;
    [/LEFT]
    ثم قمت بتعديل الكود بحيث بدل إظهار النص يقوم بإظهار المتغيرات بكتابة أسماء المتغيرا كل في مكانه من دون علامتي "" فقط بهذا قمنا بإنهاء الدرس كاملا راجيا من الله تعالى أن يفيدني وإياكم به
    التعديل الأخير تم بواسطة imb; 22 / 10 / 2012, 01:47 PM.
    イブラヒムです
    Baaaaaaaaak

    تعليق


    • #3
      هدية مني مجموعة من الأكواد المختلفة لشاشات التحميل كأمثلة للدرس

      الكود الأول :
      كود:
      var LoadingScreens : Texture[];
      private var Counter : int;
       var i : int;
      function Start()
      
      {
      
              Counter = 1;
      
          i = 0;
      
      }
      
      function OnGUI()
      
      {
      
      GUI.Label(Rect(0, 0, 480, 320), LoadingScreens[i]);
      
          Counter += 1;
      
          if(Counte%100 == 0)
      
              i+=1;
      
          
      
          if (i>3)
      
          {       Counter = 0;
      
              i=0;
      
          }
      
      }
      هذا الكود أحد الأكواد الجديدة وعمله ببساطه إظهار شاشة صورية متحركة ويمكن وضع عدد غير محدد من التكتشر له


      الثاني :
      كود:
      private var loading_time = 12.0; 
      private var animation_w : int;
      
      function Start () {
      animation_w = 0;
      }
      
      function Update () {
      if (Time.time > loading_time) {
      Application.LoadLevel(Application.loadedLevel);
      animation_w += 1;
      if (animation_w > 84){animation_w = 0;}
      }
      } 
      function OnGUI () {
      if (animation_w >=0 && animation_w <25) {
      GUI.Label(Rect(Screen.width/2-20,Screen.height/2,100,40), "Loading"); 
      }
      if (animation_w >=25 && animation_w <45) {
      GUI.Label(Rect(Screen.width/2-20,Screen.height/2,100,40), "Loading.");
      }
      if (animation_w >=45 && animation_w <65) {
      GUI.Label(Rect(Screen.width/2-20,Screen.height/2,100,40), "Loading..");
      }
      if (animation_w >=65 && animation_w <85) {
      GUI.Label(Rect(Screen.width/2-20,Screen.height/2,100,40), "Loading...");
      }
      
      }
      وهو ما قمنا بشرحه

      الثالث:
      كود:
      private var time_sec = 3.0;
      var loding : Texture;
      
      function Update () {
      if (Time.time > time_sec) {
      if (Input.anyKey) {
      Application.LoadLevel(n);
      }
      }
      }
      
      function OnGUI () {
      if (Time.time > time_sec) {
      GUI.Label(Rect(Screen.width/2-50,Screen.height/2+100,200,200),"prese any key to start");
      }
      GUI.DrawTexture(Rect(Screen.width/2,Screen.height/2,40,50),loding );
      }
      هذا الكود جديد في شيئ واحد وهو

      كود:
      if (Time.time > time_sec) {
      if (Input.anyKey) {
      Application.LoadLevel(n);
      }
      هنا بدلا من جعل الكود ينتقل تلقائيا في المرحلة عدلنا عليه بأنه إن أنتهى وقت التحميل تبقى الشاشة حتى يضغط اللاعب/ة أي زر ثم ينتقل للمرحلة الفلانية وهي إضافة جميلة في رأيي
      أيضا قمنا بإضافة نص يظهر عند إنتهاء الوقت ليخبر اللاعب أن يضغط أي زر للأنتقال

      كود:
      if (Time.time > time_sec) {
      GUI.Label(Rect(Screen.width/2-50,Screen.height/2+100,200,200),"prese any key to start");
      }
      هكذا أنتهى الدرس ولله الحمد ملاحطة كل الأكواد هنا من الممكن التعديل عليها لتتماشى مع رغباتك المهم خيالك وإلى ماذا تطمح أعطيتك البداية فاستمر إلى النهاية موفقين إن شاء الله

      هاذا مايسعني عمله أخوتي راجيا من الله أن ينفعكم به وأن أكون وفقت في الشرح وأي إستفسار أو تعليق مرحب به وقريبا سأضع كتاب إلكتروني لكل الدرس أفضل ما رأيكم ؟
      التعديل الأخير تم بواسطة imb; 22 / 10 / 2012, 01:59 PM.
      イブラヒムです
      Baaaaaaaaak

      تعليق


      • #4
        عمل رائع شكرا

        تعليق


        • #5
          شكرا لك يا حبيب على الشرح الرائع و أعذرني على التأخر في الرد بس ما إنتبهت ع الموضوع غير هلأ
          منتظر الباقي
          يلعن روحك يا حافظ
          مدونتي
          http://blackcatgamedev.3abber.com
          قناتي على YouTube
          http://www.youtube.com/user/vexedwolff
          مدونة ألعاب العرب ((نرجو الدعم))
          http://arabgame.3abber.com
          آخر تطورات لعبتي World Of Cube((أرجو النقد و التقيم))
          إضغط هنا



          تعليق


          • #6
            شكرآ لك مجهوود رآئع ..
            سبحان الله وبحمده سبحان الله العظيم

            هدية ثمينة :

            http://adf.ly/OM8Mt

            ....

            تعليق


            • #7
              تم إكمال الدرس كاملا والكمال لله أرجو طرح آرائكم وإستفساراتكم

              イブラヒムです
              Baaaaaaaaak

              تعليق


              • #8
                المشاركة الأصلية بواسطة imb مشاهدة المشاركة
                تم إكمال الدرس كاملا والكمال لله أرجو طرح آرائكم وإستفساراتكم

                يعطيك العافية و الله يجزيك الخير أنا إن شاء الله أطبق وأي إستفسار أسألك
                يلعن روحك يا حافظ
                مدونتي
                http://blackcatgamedev.3abber.com
                قناتي على YouTube
                http://www.youtube.com/user/vexedwolff
                مدونة ألعاب العرب ((نرجو الدعم))
                http://arabgame.3abber.com
                آخر تطورات لعبتي World Of Cube((أرجو النقد و التقيم))
                إضغط هنا



                تعليق


                • #9
                  المشاركة الأصلية بواسطة blackcat مشاهدة المشاركة
                  يعطيك العافية و الله يجزيك الخير أنا إن شاء الله أطبق وأي إستفسار أسألك
                  إن شاء الله أخي أرجو أن تستفيد منه
                  وأيضا قد يكون مفيدا لهذه اللحظة لمن أراد إستعمال الأكواد في مسابقة العيد من تاكو
                  イブラヒムです
                  Baaaaaaaaak

                  تعليق

                  يعمل...
                  X