الأهداف المتحركة
جزء من قسم الفيزياء وأسلوب اللعب في رحلة Unity على Coddy. الدرس 67 من 71.
التحدي
صعباكتب الشيفرة الخاصة بالأهداف: فهي تتحرك عبر النطاق، وتصطدم بها الكرة فتُخرجها من اللعبة.
- في
Start()، احتفظ بـstartX = rb.position.x. فيFixedUpdate()، حرّكها باستخدامrb.MovePositionعلى محور x بسرعةspeed، مع عكسdirection، التي تكون 1 أو -1، عندما تبلغ المسافة منstartXمقدارrange. - في
OnCollisionEnter، عندما يتحققcollision.gameObject.CompareTag("Ball")، سجّلname + " hit!"واحذف الكرة والهدف.
اضغط على «العب» وأخرج الأهداف الثلاثة من اللعبة. ثم اضغط على «تحقق».
جرّب بنفسك
using UnityEngine;
public class Target : MonoBehaviour
{
[SerializeField] private float speed = 2f;
[SerializeField] private float range = 3f;
private Rigidbody rb;
void Start()
{
rb = GetComponent<Rigidbody>();
}
// تحرّك انزلاقيًا من جانب إلى آخر؛ الكرة التي تصيب الهدف تُسقطه
}
جميع دروس الفيزياء وأسلوب اللعب
1الجسم الصلب (Rigidbody)
الجاذبية والكتلةالدفع باستخدام AddForceالقفز باستخدام دفعةFixedUpdate للفيزياءالسرعة المتجهةالأجسام الحركيةمراجعة: منصة الإطلاق4الكوروتينات
InvokeInvokeRepeating, CancelInvokeأول Coroutine لكالحلقات داخل الكوروتيناتإيقاف الكوروتيناتمراجعة: العد التنازلي10المشروع: الهروب من الحلبة
الحلبةالصيادونتدرّب بنفسك: Playground لـ Unity