مساحة اعلانية

آخر المواضيع

بناء لعبة كاسحة الألغام متعددة اللاعبين : الإعدادات في جانب الخادم



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

علم كاسحة الألغام

لعبة علم كاسحة ألغام هي لعبة متعددة اللاعبين والتي يتم لعبها بين اثنين من المعارضين. عادة، يتم تعيين إم اللون الأزرق أو الأحمر لكل لاعب. ويتكون المجلس من 256 مربعات متساوية، وتم وضع 256 لغماً وتوزيعها على المربعات بشكل عشوائي.
 الهدف من اللعبة هو الكشف عن كل المربعات من أجل العثور على 26 لغما. اللمس على لوحة اللعبة سوف يكشف ما هو مخفي تحت المربع المختار: قنبلة أو عدد. في كل مرة يلمس اللاعب المربع الذي يحتوي على لغم هو / هي سوف يمنح  حركة أخرى. وعلاوة على ذلك، إذا تم كشف النقاب عن رقم، فهذا الرقم يمثل  عدد الألغام المجاورة لساحة المربع المكشوف.

في بداية اللعبة يتم تعيين لون اللاعب تلقائيا ويتم تغطية لوحة تماما. اللاعب ذو اللون الأزرق يتحرك دائما أولاً.
معاينة المشروع:
نموذج النظام :
من أجل تبسيط اللعبة والمتطلبات البرمجية لها، يُعرض في الأسفل نموذجا مرسوماً لجميع المتطلبات. كما ترى تم تقسيم قاعدة البيانات، وخدمات الويب، وواجهات المستخدم في عدة طبقات متميزة من أجل تحقيق الاستقلال البرمجي.
المتطلبات:
من أجل إكمال التعليم، فإن القارئ يحتاج المتطلبات التالية:
·        قاعدة البيانات من نوع MySQL
·        برنامج ال netbeans مع حزم تطوير الويب
·        Xcode مع مجموعة تطوير دائرة الرقابة الداخلية.
·        Cocos2d لدائرة الرقابة الداخلية
طبقة الاتصال:
يمكن أن ينظر إلى عنصر قاعدة البينات باعتبارها جوهر التطبيق لأنه سوف تدعم بصورة مباشرة دوام اللعبة فإنه سيتم تخزين جميع البيانات الملازمة للعبة علم كاسحة الألغام ، مثل تحركات لاعب، موقع الألغام، والنتائج.
قاعدة بيانات كاسحة الألغام العلم مؤلفة لقرص واحد فقط يسمى مباريات. و الصورة التالية توضح قاعدة البيانات بطريقة رسومية.
قاعدة البيانات:
إن جدول  "ألعاب" هو الجدول الأساسي لأنه يحافظ على المهام الأساسية للعبة. فإنه يحتوي على اللعبة وتعريف اللاعب ، دور اللاعب ، مصفوفة اللعبة، والمصفوفة غير المغطاة. يحوي حقل المصفوفة موقع الألغام وجيرانهم، في حين أن مصفوفة المكشوفة تحتوي في البداية على 256 مربع أو مساحة تم ملئها مسبقاً بالقيمة 9. هذا الحقل مهم جدا، لأنه سيتم استخدامه باستمرار للتحقق مما إذا كان تم لمس مربع معين وقيمته . قيمة 9 يعني أن هذه الساحة أو المربع لم يتم لمسها ولم تطرق بعد في حين الإشارات "*" "و" # "  تعني أن اللاعب الأزرق أو الأحمر عثر على لغم، وهكذا.
يتم استخدام بيئة تطوير واجهة Netbeans لتوفير تطبيقات الويب وخدمات الويب المباشرة. ويستند هذا البرنامج التعليمي على نسخة 7.0.1 المثبتة على الخادم. 
الخطوة الأولى: بدء تطبيق ويب جافا.

اضغط File -> New Project
الخطوة الثانية: تكوين إعدادات المشروع
أعطِ اسم للمشروع وموقعه والمجلد الذي يحتويه.

الخطوة الثالثة: اختيار محرك خادم ويب

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

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


لتشغيل المشروع الرئيسي يمكنك النقر فوق في الخيار تشغيل المشروع الرئيسي(
Run Main Project )، التي تقع في القائمة theRun أو انقر في الرمز الأخضر في شريط الأدوات العلوي. إذا كان كل شيء الصحيح يجب أن تظهر صفحة ويب مع رسالة "أهلا بالعالم!".الآن حان الوقت لإضافة طبقة خدمات الإنترنت إلى خادم الويب.
 الخطوة السادسة: إضافة خدمة ويب مريحة جديدة

انقر بالزر الأيمن للماوس على اسم المشروع واختيار جديد -> اخر(New -> Other). من خيارات القائمة اليسرى اختيار خدمات ويب(Web Services ) ومن القائمة اليمنى نختار RESTful Web Service from Patterns..

الخطوة السابعة: اختيار نمط


اختار الخيار الأول "Simple Root Reference"
الخطوة الثامنة: تكوين خدمة الويب


اختر مجموعة من الموارد(Specify resource classes) وحدد مسار للحاوية أصل كل الخدمات. بالإضافة إلى ذلك، اختيار نوع MIME. في هذا البرنامج التعليمي، تم اختيار JSON كتقنية لتبادل وتمرير البيانات.
الخطوة التاسعة: تكوين موارد
REST


اختر الخيار الأخير "Create default Jersey REST servlet adaptor in web.xml"

الخطوة العاشرة: إضافة أساليب اتصال

بالإضافة إلى ذلك، تم إضافة اثنين من أكثر الأساليب من أجل فصل طبقة منطق البيانات مع طبقة قاعدة البيانات؛ CreateConnection () وEndConnection (). ينبغي إدراج الكود التالي في كلاس الجافا MinesweeperService
 أدرج الكود التالي في قسم ال import
import java.sql.*;import javax.jws.*;

عرف المتغيرات الآتية:

private Connection conn = null;
private Statement statement = null;
private ResultSet resultSet = null;
// The authors used the 8889 MySQL port at a localhost host.
// Change it accordingly.
private final String url = "jdbc:mysql://localhost:8889/";
private final String dbName = "minesweeper";
private final String driver = "com.mysql.jdbc.Driver";
private final String userName = "root";
private final String password = "root";
انسخ والصق ال web methods التالية:
private Boolean CreateConnection() {        try {            Class.forName(driver).newInstance();            conn = DriverManager.getConnection(url + dbName, userName, password);            return true;        } catch (Exception e) {            return false;        }    }     private Boolean EndConnection() {        try {            if (resultSet != null)                resultSet = null;            if (statement != null)                statement.close();            if (conn != null)                conn.close();        } catch (Exception e) {            return false;        }         return true;    }     @WebMethod(operationName = "authentication")    public String authentication(@WebParam(name = "email") String email, @WebParam(name = "password") String pw) {        CreateConnection();         String query = "SELECT * FROM players WHERE Email='" + email + "' and Pass='" + pw + "';";        try {            statement = (Statement) conn.createStatement();            resultSet = statement.executeQuery(query);             if (resultSet.next()) {                EndConnection();                return "1";            } else {                EndConnection();                return "0";            }        } catch (Exception ex) {            EndConnection();            return "0";        }    }}

الخطوة الحادية عشر: إضافة MY SQL JAR الخارجى.


 من الضروري إجراء اتصال إلى قاعدة بيانات MySQL،  ولذلك نستخدم مكتبة خارجية من أجل تحقيق ذلك. وتستطيع إضافته إلى المشروع بالنقر بالزر الأيمن للماوس اسم المشروع، والذهاب إلى خيارات خصائص (Properties ). ثم اختر المكتبات(Libraries ) وانقر على إضافة JAR / المجلد(Add JAR / folder.).
 الخطوة الثانية عشر: اختبار خدمة الويب

تحت إطار المشروع الرئيسي، انقر فوق في المجلد خدمات الويب وبالزر الثاني للماوس  انقر على كائن MinesweeperService واختيار الخيار Test RESTful Web Services.
الخطوة الثالثة عشر: تحديد ملف اختبار الهدف


اترك الخيار الأول محدد: "Locally Generated Test Client"
عند هذه النقطة، يجب أن يكون لديك تطبيق جانب الخادم الذي يدعم الاتصال مع قاعدة بيانات، التواصل مع خوادم الويب، والطرق على شبكة الإنترنت الكامنة لتفاعل اللعبة.
جميع العمليات المتعلقة باللعبة يمكن عملها باستخدام الخطوة 11، على الرغم من أنها ليست سهلة الاستعمال للمستخدم.

الكــاتــب

    • مشاركة

ليست هناك تعليقات:

جميع الحقوق محفوظة لــ الشبح للمعلوميات 2019 ©