القراء مثلك يساعدون في دعم MUO. عند إجراء عملية شراء باستخدام الروابط الموجودة على موقعنا ، فقد نربح عمولة تابعة. اقرأ أكثر.

في هذا البرنامج التعليمي ، ستتعلم كيفية عرض وتحديث نتائج اللعبة في Pygame ، مكتبة Python الشهيرة لتطوير الألعاب. بحلول النهاية ، ستكون قادرًا على إنشاء لعبة قفزة بسيطة وعرض نتيجة اللاعب على الشاشة أثناء تقدمه. تتعقب اللعبة إدخال لوحة المفاتيح حتى تتمكن من تحريك اللاعب إلى اليسار واليمين باستخدام مفاتيح الأسهم.

إنشاء لعبة بسيطة

قبل أن تتمكن من عرض النتائج وتحديثها في Pygame ، ستحتاج أولاً إلى إنشاء لعبة للعمل بها. في هذا البرنامج التعليمي ، ستقوم بإنشاء لعبة بسيطة حيث يمكن للاعب أن يتحرك إلى اليسار أو اليمين. لكن قبل ذلك ، يجب أن يكون لديك نقطة مثبتة على جهازك. بعد تثبيت pip ، قم بتشغيل الأمر التالي لتثبيت وحدة pygame:

نقطة ثَبَّتَ القزم

للبدء ، قم باستيراد الوحدات الضرورية وقم بإعداد الهيكل الأساسي للعبة:

يستورد pygame ، sys
pygame.init ()

# قم بإعداد النافذة
الشاشة = pygame.display.set_mode ((750, 450))

# قم بإعداد ساعة اللعبة
الساعة = pygame.time. ساعة()

# قم بإعداد شخصية اللاعب
لاعب = pygame. مستطيل (100, 200, 50, 50)

instagram viewer

# قم بإعداد العقبة
عقبة = pygame. مستطيل (200, 200, 50, 50)

# قم بإعداد حلقة اللعبة
بينماحقيقي:
# التعامل مع الأحداث
ل حدث في pygame.event.get ():
لو event.type == pygame. يترك:
pygame.quit ()
sys.exit ()

لو event.type == pygame. زر أسفل:
لو event.key == pygame. K_LEFT:
player.x - = 10
أليف event.key == pygame. K_RIGHT:
player.x + = 10

# تحديث حالة اللعبة

# ارسم اللعبة
screen.fill ((0, 0, 0))
pygame.draw.rect (شاشة ، (255, 0, 0)، لاعب)
pygame.draw.rect (شاشة ، (0, 255, 0)، عقبة)

# تحديث العرض
pygame.display.flip ()

# الحد من معدل الإطارات
على مدار الساعة.60)

باستخدام هذا الرمز الهيكلي ، يمكن لعب لعبتك الأساسية. اضغط على اليسار أو اليمين لتحريك شخصية اللاعب ، ممثلة بالمربع الأحمر.

عرض وتحديث نقاط اللعبة

الآن بعد أن تم إعداد لعبة أساسية ، أضف نظام تسجيل واعرض النتيجة على الشاشة.

إعداد Pygame لعرض النص

لعرض النص في Pygame ، نحتاج أولاً إلى استيراد الوحدات النمطية اللازمة وتهيئة وحدة الخط. للقيام بذلك ، استخدم الكود التالي في الجزء العلوي من البرنامج النصي الخاص بك:

يستورد القزم
يستورد sys
يستورد نظام التشغيل

pygame.init ()
pygame.font.init ()

تتيح لك الوحدة النمطية pygame.font استخدام إمكانيات عرض النص في Pygame ، وتقوم الوظيفة () pygame.init بتهيئة وحدة الخط.

إنشاء نظام تسجيل أساسي

بعد ذلك ، قم بإنشاء نظام تسجيل أساسي للعبتك. للقيام بذلك ، قم بتعريف متغيرين وتهيئتهما: الدرجة والنقاط_زيادة. سوف يتتبع متغير النتيجة النتيجة الحالية للاعب ، وسيحدد متغير Score_increment المقدار الذي يجب أن تزيد النتيجة في كل مرة يلمس فيها اللاعب عقبة.

أضف الكود التالي إلى الجزء العلوي من البرنامج النصي ، أسفل عمليات الاستيراد:

النتيجة = 0
زيادة_النقاط = 10

بعد ذلك ، قم بتحديث النتيجة مع تقدم اللعبة. في حلقة اللعبة ، يمكنك التحقق مما إذا كانت شخصية اللاعب تصطدم بالعائق. إذا كانت كذلك ، قم بزيادة الدرجة بالمبلغ المحدد في متغير Score_increment.

قم بتحديث حلقة اللعبة لتتضمن الكود التالي:

# تحديث حالة اللعبة
لو player.colliderect (عقبة):
النتيجة + = Score_increment

يتحقق هذا الرمز مما إذا كانت شخصية اللاعب تصطدم بالعائق. إذا كانت كذلك ، فإنها تزيد النتيجة بالمبلغ المحدد.

عرض النتيجة على الشاشة مع وحدة الخط

الآن بعد أن أصبح لدينا نظام تسجيل أساسي مطبق ، دعنا نعرض النتيجة على الشاشة باستخدام وحدة الخط.

أولاً ، لنقم بإعداد كائن الخط عن طريق إضافة الكود التالي إلى الجزء العلوي من حلقة اللعبة:

# قم بإعداد كائن الخط
الخط = pygame.font. الخط (لا أحد, 36)

يقوم هذا الرمز بإنشاء كائن خط بحجم 36 بكسل وبدون عائلة خطوط محددة. يمكنك تخصيص الخط وحجم الخط من خلال تحديد ملف وحجم خط مختلفين في وظيفة الخط ().

بعد ذلك ، دعنا نرسم النتيجة على الشاشة. أضف الكود التالي إلى حلقة اللعبة ، بعد تحديث حالة اللعبة وملء الشاشة:

# ارسم النتيجة على الشاشة
Score_text = font.render (نقطة f: {نتيجة}', حقيقي, (255, 255, 255))
screen.blit (Score_text، (10, 10))

يستخدم هذا الرمز طريقة العرض () لكائن الخط لإنشاء سطح نص يحتوي على النتيجة ، ثم يمسح (يرسم) سطح النص على الشاشة في الموضع (10 ، 10).

تخصيص مظهر نص النتيجة

أخيرًا ، قم بتخصيص مظهر نص النتيجة عن طريق اختيار الخط وحجم الخط وتغيير لون النص.

لاختيار خط وحجم خط معينين ، مرر ملف الخط وحجمه كوسائط إلى وظيفة الخط ():

الخط = pygame.font. الخط ("arial.ttf", 48)

يمكنك ذلك بسهولة تنزيل ملفات خطوط مختلفة من الإنترنت. بعد التنزيل ، ضع ملف الخط في جذر دليل العمل الخاص بك.

لتغيير لون النص ، قم بتمرير tuple اللون كمعامل ثالث إلى طريقة العرض ():

Score_text = font.render (نقطة f: {نتيجة}', حقيقي, (0, 255, 0))

وهذا كل شيء! مع هذه التغييرات ، يجب أن يكون لديك الآن نظام نقاط لعبة يعمل بكامل طاقته ويعرض النتيجة على الشاشة ويقوم بتحديثها مع تقدم اللاعب خلال اللعبة. يمكنك تخصيص مظهر نص النتيجة بشكل أكبر عن طريق تجربة مجموعات خطوط وأحجام وألوان مختلفة.

تتبع النقاط في اللعبة

يوجد أدناه رمز العمل الكامل ، يمكنك أيضًا العثور على الكود الموجود عليه جيثب الريبو.

يستورد القزم
يستورد نظام التشغيل

pygame.init ()
pygame.font.init ()

النتيجة = 0
زيادة_النقاط = 10

# قم بإعداد النافذة
الشاشة = pygame.display.set_mode ((750, 450))

# قم بإعداد ساعة اللعبة
الساعة = pygame.time. ساعة()

# قم بإعداد شخصية اللاعب
لاعب = pygame. مستطيل (100, 200, 50, 50)

# قم بإعداد العقبة
عقبة = pygame. مستطيل (200, 200, 50, 50)

# قم بإعداد حلقة اللعبة
بينماحقيقي:
الخط = pygame.font. الخط (لا أحد, 36)
# التعامل مع الأحداث
ل حدث في pygame.event.get ():
لو event.type == pygame. يترك:
pygame.quit ()
sys.exit ()
لو event.type == pygame. زر أسفل:
لو event.key == pygame. K_LEFT:
player.x - = 10
أليف event.key == pygame. K_RIGHT:
player.x + = 10

# تحديث حالة اللعبة
لو player.colliderect (عقبة):
النتيجة + = Score_increment


# ارسم اللعبة
screen.fill ((0, 0, 0))
pygame.draw.rect (شاشة ، (255, 0, 0)، لاعب)
pygame.draw.rect (شاشة ، (0, 255, 0)، عقبة)

# ارسم النتيجة على الشاشة
Score_text = font.render (نقطة f: {نتيجة}', حقيقي, (255, 255, 255))
screen.blit (Score_text، (10, 10))

# تحديث العرض
pygame.display.flip ()

# الحد من معدل الإطارات
على مدار الساعة.60)

ينشئ هذا الرمز نافذة بحجم 750 × 450 بكسل ، وشخصية لاعب ، وعائق. يستخدم حلقة اللعبة للتعامل مع الأحداث وتحديث الحالة ورسم اللعبة على الشاشة. يتضمن أيضًا نظام تسجيل يزيد النتيجة بعشر نقاط في كل مرة يتقمص فيها شخصية اللاعب يصطدم بالعائق ، وكائن الخط وكود عرض النص لعرض النتيجة على الشاشة.

في قسم التعامل مع الحدث ، يتضمن الرمز أيضًا وظيفة لتحريك شخصية اللاعب إلى اليسار واليمين باستخدام مفاتيح الأسهم.

تتضمن حلقة اللعبة رمزًا لتحديث العرض والحد من معدل الإطارات إلى 60 إطارًا في الثانية ، مما يضمن تشغيل اللعبة بسلاسة.

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

إنشاء ألعاب مختلفة باستخدام Pygame

Pygame هي مكتبة قوية وسهلة الاستخدام لإنشاء ألعاب بلغة Python. بفضل مجموعة الميزات والإمكانيات الغنية ، يمكنك إنشاء مجموعة واسعة من الألعاب ، بدءًا من ألعاب القفز ومنصات اللعب البسيطة وحتى الألعاب الأكثر تعقيدًا وغامرة.

سواء كنت مبتدئًا أو مطور ألعاب متمرسًا ، فإن Pygame خيار ممتاز لإنشاء ألعاب جذابة وممتعة.