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

برمجة الألعاب لالروبوت 10: كشف الإدخال

42 فيديوهات

238 دقيقة

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

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

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

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

أنت لمس الشاشة.' عند تشغيل هذا، إذا كنت على اتصال الشاشة في لحظة شغل في المحطة مع الرسائل التي تقول أنا لمس الشاشة. لماذا هذا العدد الكبير؟ لأنه كما قلت في بداية الوقت، وتجعل أشواط 60 مرة في الثانية الواحدة، لذلك فمن الطبيعي أن تكون مطبوعة عدة مرات كما يجعل التدقيق في الكثير من الأحيان. ولكن على سبيل المثال، بدلا من IsTouched () يمكننا أن نتساءل عما إذا كانت مجرد لمسها، مع justTouched ().

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

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

لدينا مفتاح وراء المحمول، أو مفتاح منزل أو مفاتيح مستوى الصوت ... بعض غريبة قليلا لمفاتيح الوسائط المتعددة أو L1 الرئيسيين، L2، R1، R2 ... أي دعم رسمي للبلاي ستيشن، لذلك أنا لا أعرف ما هي عليه ... ربما لوحدة التحكم التي لديها سوني، وشرطة الأمن العام مع الروبوت، أنا لا أتذكر الاسم. أتصور أنه موجود، ولكن الغريب في عام كمية من الأشياء التي يمكنك القيام به مع مفاتيح.

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

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

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

عن المؤلف

foto de jotajotavm
José Javier Villena

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