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

برمجة الألعاب لالروبوت 27: Saltos

42 فيديوهات

238 دقيقة

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

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

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

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

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

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

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

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

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

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

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

عن المؤلف

foto de jotajotavm
José Javier Villena

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