Skip to content

osamahashed/ping-pong

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 

Repository files navigation

🏓 Ping Pong (LAN) — واجهة عربية بدون حزم إضافية

  • الخادم (P1): Tkinter — يشغّل الفيزياء ويرسل الحالة 30fps.
  • العميل (P2): Kivy — يرسم اللعبة ويحرّك مضربه ويرسل موقعه للخادم.
  • العربية: تم إصلاح العرض عربيًا داخل العميل بدون أي مكتبات خارجية (shaper + bidi بسيط + اختيار خط من النظام).

التشغيل

1) الخادم (اللاعب 1)

python server.py
  • سيظهر IP المحلي ومنفذ 50008.
  • تحريك مضرب P1: W/S أو ↑/↓.
  • زر لعبة جديدة يعيد الضبط.

2) العميل (اللاعب 2)

python client.py
  • أدخل IP الخادم واضغط اتصال.
  • حرّك المضرب بالسحب على النصف الأيمن من منطقة اللعب، أو استخدم أزرار فوق/تحت.
  • زر لعبة جديدة يطلب بدء جولة جديدة.

الشبكة

  • بروتوكول TCP محلي (LAN).
  • الخادم يُرسل الحالة 30fps، والعميل يرسل هدف موضع مضربه 30fps.

المتطلبات

  • Python 3.8+
  • Tkinter (مرفق غالبًا مع Python الرسمي).
  • Kivy مثبت على جهاز العميل (بدون حزم إضافية للعربية).

إن لم يظهر خط عربي جيد، غيّر مسار الخط داخل الدالة _find_font في client.py إلى خط موجود لديك (Tahoma/Arial/Geeza/DejaVu/NotoNaskh...).

الضوابط

  • النقاط حتى 10. تظهر رسالة الفائز عند انتهاء الجولة.
  • الدردشة متاحة من الجانبين.

بالتوفيق! 🎉

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages