Unconfigured Ad Widget

تقليص

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

تقليص

رثاء

‏خالص العزاء والمواساه في وفاة العضو القدير الأخ ياسر ياسين رحمه الله

https://www.maxforums.net/node/3676654
شاهد أكثر
شاهد أقل

شرح اكواد مهمة في اليونيتي

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

  • شرح اكواد مهمة في اليونيتي

    السلام عليكم و رحمة الله و بركاته..
    ساقوم بهذ الموضوع بوضع سكربتات سي شارب مهمة باليونيتي و شرحها
    لن يكون هناك اوقات منظمة لوضع السكربتات انما في كل وقت يسنح لي اضع سكربت و اشرحه
    سيكون الشرح بسكربتات اي لن اشرح دالة او متغير انما ساضع سكربت له وظيفة و اشرحه شرح مفصل
    سنبدا بكود الدم (الحياة) :
    كود PHP:
    using UnityEngine;
    using System.Collections;

    public class 
    PlayerHealth MonoBehaviour {
    public 
    int maxHealth 100;
    public 
    int curHealth 100;

    void Start(){

    }
    void Update(){

    }

    void OnGUI(){

    GUI.Box(new Rect(10,10,Screen.width/2/(maxHealth/curHealth),20),curHealth "/" maxHealth);
    }

    جرب وضع هذا الكود في سكربت سي شارب و ضعه في الكميرا و شغل اللعبة ستلاحظ فوق على اليسار وجود مستطيل فيه 100/100
    وهو معدل الحياة
    الان جرب ان تغير curHealth من خارج السكربت الى مثلا 30 و شغل اللعبة
    ستلاحظ تغير في طول المستطيل
    كيف حدث هذا ؟؟
    سنبدأ الشرح:
    اولا عرّفنا متغيرين اولهما maxHealth الذي يعبّر عن الدم الاصلي (الكامل) و استخدما int اي ان العدد من نوع الاعداد الصحيحة اي لا يجوز تضع الرقم هكذا 10.16 مثلا سيحدث خطأ
    المتغير الثاني هو curHealth الذي يعبر عن الدم الذي لديك اي يمكن ان يتناقص و استخدمنا نوعه int مثل السابق
    ثانيا عرفنا فنكشن اسمه OnGUI يستخدم لوضع Gui في الللعبة تكون ثابتة على الشاشة اي موجود فقط بالنسبة لك وليس في بيئة اللعبة و هي تو دي
    وضعنا بداخلها الامر GUI.Box الذي يقوم بانشاء Gui على شكل بوكس اي مربع او مستطيل و فتحنا قوس لوضع المقاسات و المحتوى
    كتبنا بداخل القوس new Rect ثم فتحنا قوس اخر لوضع احداثيات و حجم البوكس و وضعنا اولا احداثيات البوكس التي تبدا من فوق و من اليسار و هي 10 من اليسار و 10 من فوق
    و من ثم وضعنا طول و عرض البوكس فكان طوله هذه المعادلة Screen.width/2/(maxHealth/cur health) التي تعني :
    screen.width تعني عرض الشاشة
    فتكون المعادلة بمجموعها تعني نصف الشاشة تقسيم (الدم الكامل على الدم المستخدم) حتى يكون الطول متناسب مع الدم المستخدم
    ثم وضعنا العرض 20
    وبعدها اغلقنا القوس
    ووضعنا فاصلة لوضع محتويات البوكس
    التي هي maxHealth و / و curHealth
    و من ثم اغلقنا الدالة و بعدها اغلقنا الكلاس
    انتهى الشرح


    ارجو ان يكون الشرح مفهوم
    اي استفسار انا جاهز
    التعديل الأخير تم بواسطة matrixinc; 25 / 01 / 2013, 09:30 PM.
    FaceBook
    Here

    Ask Me
    Here
    My Channel In Youtube
    Here

    ____________________________________________

    لكي تعيش عليك ان تتقن فن التجاهل باحتراف

  • #2
    كويس بس الكود كدا رسومي بس "خاص بالرسم يعني" ناقص لسه ازاي ممكن curHealth يقل لما يتضرب أو يقع مثلا مش مجرد تغييره يدويا
    ..
    Insanity: doing the same thing over and over again and expecting different results
    Albert Einstein -


    تعليق


    • #3
      أنا أفضل إستخدام الـGuiTextures بدل وضع هذا السكربت على الكاميرا

      تعليق


      • #4
        المشاركة الأصلية بواسطة Unity3D مشاهدة المشاركة
        كويس بس الكود كدا رسومي بس "خاص بالرسم يعني" ناقص لسه ازاي ممكن curHealth يقل لما يتضرب أو يقع مثلا مش مجرد تغييره يدويا
        ..
        اها اعرف بس هو يبقى بسكربت ثاني للاعداء بشرحه بالمرة الجاي ان شاء الله

        المشاركة الأصلية بواسطة oussama23 مشاهدة المشاركة
        أنا أفضل إستخدام الـGuiTextures بدل وضع هذا السكربت على الكاميرا
        اها هو طبعا لو حتبقى تصمم لعبة لازم تستخدم GUI Texture بس انا اعطيك فكرة عن البرمجة بشكل عام و ان شاء الله بالاسكربتات القادمة بحاول اشرحها
        FaceBook
        Here

        Ask Me
        Here
        My Channel In Youtube
        Here

        ____________________________________________

        لكي تعيش عليك ان تتقن فن التجاهل باحتراف

        تعليق


        • #5
          أوكي على العموم جزاك الله خيرا يا عامل الخير

          تعليق


          • #6
            المشاركة الأصلية بواسطة oussama23 مشاهدة المشاركة
            أوكي على العموم جزاك الله خيرا يا عامل الخير
            العفو بس بدي اسالك هل الشرح مفهوم ام اتّبع طريقة ثانية؟
            FaceBook
            Here

            Ask Me
            Here
            My Channel In Youtube
            Here

            ____________________________________________

            لكي تعيش عليك ان تتقن فن التجاهل باحتراف

            تعليق


            • #7
              هي مفهومة لي بس للمبتدئين ما أعتقد

              الأفضل أنك تحط الصورة و تحط عليها أرقام مشار لها بالأسهم ثم تشرح في الموضوع كل رقم ماذا يعني

              تعليق


              • #8
                المشاركة الأصلية بواسطة oussama23 مشاهدة المشاركة
                هي مفهومة لي بس للمبتدئين ما أعتقد

                الأفضل أنك تحط الصورة و تحط عليها أرقام مشار لها بالأسهم ثم تشرح في الموضوع كل رقم ماذا يعني
                مممممممم بحاول بس ما اظن حتختلف عن الكتابة كثير
                FaceBook
                Here

                Ask Me
                Here
                My Channel In Youtube
                Here

                ____________________________________________

                لكي تعيش عليك ان تتقن فن التجاهل باحتراف

                تعليق


                • #9
                  اغلاط املائية
                  غيرو using system.Collections; ب using System.Collections;
                  تم MonoBehoviour ب MonoBehaviour
                  بتوفيق للجميع وشكرا على درس استمر
                  الثورة الاسلامية الكبرى لاعادة الخلافة الراشدة
                  بسم الله الرحمان الرحيم... انما النصر صبر ساعة فلا هوان ولا ستكان حت يعود الضلم تحت الاقدام ويعاقب الخونة وانجاس وترفع الرايات سود و لترتاع يهود لقرب الوعود فالتكن هته الثورة يا اهل مصر و سورية ويا اخواني في العالم اجمع ثورة غضب ثورة غضب خالصة لوجه الله فالتكن بداية النهاية ليعلم اليهود ان الامة اصبحت على فجر النصر وليكن اول بشارات النصر الانتقام من الخونة هم من بني جلدتنا وما هم منا...
                  امة واحدة راية واحد حرب واحدة

                  تعليق


                  • #10
                    المشاركة الأصلية بواسطة naoufal مشاهدة المشاركة
                    اغلاط املائية
                    غيرو using system.Collections; ب using System.Collections;
                    تم MonoBehoviour ب MonoBehaviour
                    بتوفيق للجميع وشكرا على درس استمر
                    اها شكرا سيتم التعديل
                    بس عايز رايك بطريقة الشرح؟
                    FaceBook
                    Here

                    Ask Me
                    Here
                    My Channel In Youtube
                    Here

                    ____________________________________________

                    لكي تعيش عليك ان تتقن فن التجاهل باحتراف

                    تعليق


                    • #11
                      الشرح جميل وواضح اخي استمر فقط في انك بتزيد بعض جمل الي مفيش غاية منها مثلا
                      و استخدما int اي ان العدد من نوع الاعداد الصحيحة اي لا يجوز تضع الرقم هكذا 10.16 مثلا سيحدث خطأ
                      و من ثم اغلقنا الدالة و بعدها اغلقنا الكلاس
                      يعني من مفروض انك تشرح فقط GUI.Box(new Rect(10,10,Screen.width/2/(maxHealth/curHealth),20),curHealth + "/" + maxHealth);
                      لان هو الي طالع عليه سكريبت كامل
                      الثورة الاسلامية الكبرى لاعادة الخلافة الراشدة
                      بسم الله الرحمان الرحيم... انما النصر صبر ساعة فلا هوان ولا ستكان حت يعود الضلم تحت الاقدام ويعاقب الخونة وانجاس وترفع الرايات سود و لترتاع يهود لقرب الوعود فالتكن هته الثورة يا اهل مصر و سورية ويا اخواني في العالم اجمع ثورة غضب ثورة غضب خالصة لوجه الله فالتكن بداية النهاية ليعلم اليهود ان الامة اصبحت على فجر النصر وليكن اول بشارات النصر الانتقام من الخونة هم من بني جلدتنا وما هم منا...
                      امة واحدة راية واحد حرب واحدة

                      تعليق


                      • #12
                        جميل شكرا على الدرس وطريقة الشرح اعتقد مثلما قال لك الاخ من قبل ستكون الصور افضل للمبتدئين
                        -:| My Games |:-
                        AfterEarth Online SOON

                        -:| Contact Us |:-
                        Facebook Page :- NTStudio

                        تعليق

                        يعمل...
                        X