تجوّل في الزنزانة
جزء من قسم المشاريع في رحلة Godot على Coddy. الدرس 26 من 33.
المشروع الأخير هو لعبة استكشاف الزنازين بمنظور علوي. يلتقط البطل مفتاحًا، ويفتح بابًا، ويتجاوز حارسًا، ويصل إلى الدرج.
السكربتات هي hero.gd وenemy.gd وmain.gd. الجدران عبارة عن StaticBody2D يُسمى Walls، وهو موجود بالفعل في المشهد.
يسير البطل في أربعة اتجاهات. تقرأ Input.get_vector المفاتيح الأربعة كلها وتعطي اتجاهًا بطول 1، لذا لا تكون الحركة القطرية أسرع. تحرك move_and_slide() الجسم بمقدار velocity وتجعله ينزلق بمحاذاة الجدران:
velocity = Input.get_vector("move_left", "move_right", "move_up", "move_down") * SPEED
move_and_slide()تستخدم move_and_slide قيمة delta بنفسها، لذا لا تضرب بها.
التحدي
سهلفي hero.gd، أضف const SPEED = 160. في كل إطار فيزيائي، عيّن velocity إلى ناتج Input.get_vector لأفعال الحركة الأربعة مضروبًا في SPEED. ثم استدعِ move_and_slide().
جرّب بنفسك
extends CharacterBody2D
func _physics_process(delta):
pass
يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.
جميع دروس المشاريع
1مشروع: Breakout
مضرب Breakoutإبقاء المضرب على الشاشة4مشروع: استكشاف الزنزانة
تجوّل في الزنزانةالتقط المفتاح2مشروع: مطلق النار على الكويكبات
أدر السفينةأشعل المحركتدرّب بنفسك: Playground لـ Godot