مراجعة: القفزة المزدوجة
جزء من قسم بناء ألعاب حقيقية في رحلة Unity على Coddy. الدرس 42 من 56.
التحدي
متوسطاكتب حركة بطل لعبة المنصات في Hero.cs؛ لدى Hero مكوّن CharacterController. يضبط Inspector القيم speed (5) وgravity (-25) وjumpHeight (2) وairJumpHeight (1.28).
- تحرّك الأسهم (أو WASD)، عند قراءة محاورها الخام، البطلَ باستخدام
controller.Moveبسرعةspeedوحدة في الثانية على المحورين x وz. - طبّق الجاذبية يدويًا: سرعة رأسية تزداد بمقدار
gravityكل ثانية، وتُضبط على -2 عندما يكون البطل على الأرض ويهبط. - القفز بزر المسافة على الأرض يجعلك تقفز إلى ارتفاع
jumpHeightبالضبط. - القفز بزر المسافة في الهواء يتيح لك القفز مرة أخرى، والارتفاع بمقدار
airJumpHeightفوق النقطة التي ضغطت فيها الزر. قفزة هوائية واحدة في كل مرة تكون فيها في الهواء؛ ويعيد الهبوط إتاحتها.
اضغط تشغيل، ثم اقفز قفزتين للوصول إلى الحافة، وبعدها اضغط تحقّق.
جرّب بنفسك
using UnityEngine;
public class Hero : MonoBehaviour
{
public float speed = 5f;
public float gravity = -25f;
public float jumpHeight = 2f;
public float airJumpHeight = 1.28f;
CharacterController controller;
void Start()
{
controller = GetComponent<CharacterController>();
}
void Update()
{
}
}
جميع دروس بناء ألعاب حقيقية
4المشاهد والمستويات
تحميل مشهدإعادة تشغيل المستوىالمستوى التاليالاحتفاظ بالبيانات بين المشاهدمراجعة: اختيار المستوى10مشروع: لعبة منصات ثلاثية الأبعاد
المسارالمنصات المتحركة2الأزرار والشاشات
الأزرار وonClickالتعبيرات Lambdaالربط في Inspectorتشغيل اللوحات وإيقافهاأشرطة الصحةمراجعة: متجر الترقيات5الحفظ باستخدام PlayerPrefs
حفظ رقمالتحميل بقيمة افتراضيةأعلى نتيجةحفظ الإعداداتمراجعة: العملات في البنك8متحكّم الشخصية
CharacterController.Moveتطبيق الجاذبية يدويًاالقفزدفع الأشياءالتحرّك في اتجاه النظرمراجعة: القفزة المزدوجة6مشروع: عدّاء بلا نهاية
ثلاثة مساراتعوائق أمامك