برمجة الألعاب لالروبوت

برمجة الألعاب لالروبوت 14: مضاعفات شاشات

42 فيديوهات

238 دقيقة

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

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

لا داعي للذعر عند فتح اللعبة سنفعل شيئا من هذا القبيل، وأنه يدمج libgdx على ApplicationAdapter الدرجة مماثلة لأنه بعد كل يمتد لكننا سوف تساعد على جعل الألعاب شاشات متعددة، ولعبة. لحسن الحظ لعبة هي الطبقة التي تمتد ما أقول من ApplicationAdapter، لذلك ليس لدي أي تغيير، على الرغم من أن لعبة يقدم طريقة مثيرة للاهتمام ودعا setScreen. مع هذا الأسلوب يمكن أن نستخلصها

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

نحن فقط نقول له لوضع شاشة أو لآخر. دعونا نرى كيفية إنشاء الشاشة لدينا، وسوف إنشاء شاشة يسمى MyScreen (شاشتي)، التي كنت بصدد نشر على الشاشة. وفي الوقت أن أفعل ذلك الأدوات شاشة سيجبر لي أن أكتب سلسلة من الأساليب التي لا تحتاج ليعلمك كثيرا لأنهم رأوا أنه عندما تحدثت عن ApplicationAdapter: تغيير الحجم، تقديم، السيرة الذاتية، وإخفاء، والتخلص ... كل ما يفعله هو ... لعبة

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

أو تحريك الأمور، وأحيانا تحتاج إلى معرفة كم من الوقت مر منذ آخر مرة تم استدعاؤه لتقديم. على سبيل المثال، فقد قضى 25 ميلي ثانية منذ آخر مرة على الشاشة هو إعادة رسم. لجعل هذه الخطوة الحرف في سرعة ثابتة لا بد لي من القيام بعملية حسابية لدفع 20 الى 30 بكسل ويبدو أن تتحرك بشكل جيد. Normlamente استخدام هذا لجعل فترات زمنية، ونرى أن المسامير عندما نقدم سيعتمد

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

ولكن كما ترى، لا توجد صلة بين الشاشة واللعبة. والنمط الذي يتم عادة عندما نلعب، على الأقل في libgdx، وربط بطريقة أو بأخرى كل من الشاشات مع اللعبة الرئيسية، لأن في بعض الأحيان لدينا الموارد المشتركة التي تحتاج إلى أن تكون تحت السيطرة في جميع الأوقات، لأن أي نظام صوتي أو نظام الإعلان إذا أردنا أن عرض الإعلانات على لعبتنا. كما تبدو الأمور معقدة إلى مثيل

لأنها تستهلك موارد، وعادة ما مثيل مرة واحدة فقط في اللعبة الرئيسية، لأن ذلك هو اللعبة الرئيسية والطبقة الرئيسية. لكننا بحاجة الى بعض شكل من شاشات علم بهذه المجالات، وبالتالي فإن نمط الأكثر شيوعا التي غالبا ما تستخدم عندما كنا متعددة الشاشات الألعاب الطبقة الرئيسية هي ربط مع شاشة قاعدة، على سبيل المثال باستخدام منشئ يقبل MainGame كمعلمة ويتم حفظ كحقل

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

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

العثور على دورات جديدة، والاشتراك. لن يكون هناك غير المرغوبة، وعدت :)

عن المؤلف

foto de jotajotavm
José Javier Villena

السيرة الذاتية: محلل مبرمج في لغات مختلفة. منصات المعلم PREMIUM المعترف به عالميا باعتباره CodigoFacilito. مقالات رئيس التحرير Cristalab. ويرعى بلدي قناة يوتيوب من قبل الناشر ANAYA وLaTostadora. أود أن أشرح بالتفصيل وإعطاء أمثلة عديدة لتجنب الشك.