Ekran Sınırları İçinde Tut
Coddy'nin Godot Journey'sinin Girdi ve Hareket bölümünün bir parçası. Ders 21 / 28.
Sola doğru hareket et, kahraman ekrandan çıkar. clamp(value, low, high), bir sayıyı iki sınır arasında tutar. value altındaysa low, üstündeyse high, aksi hâlde value döndürür. clamp(700, 14, 626) sonucu 626'dır.
Hareket ettikten sonra konumu sınırlandır ve sonucu sakla:
move_and_slide()
position.x = clamp(position.x, 14, 626)position, kahramanın orta noktasıdır ve kahraman 28 piksel genişliğindedir. Böylece orta noktası, 640 piksellik ekranın her kenarından 14 piksel uzakta kalır ve kahramanın tamamı görünür durumda olur.
Görev
KolayKahramanın tamamını ekranda tut. move_and_slide() işleminden sonra position.x değerini 14 ile 626 arasında sınırla.
Kendin dene
extends CharacterBody2D
var speed = 220
var acceleration = 900
var friction = 2400
var gravity = 1000
var jump_velocity = -500
func _physics_process(delta):
velocity.y += gravity * delta
if Input.is_action_just_pressed("jump") and is_on_floor():
velocity.y = jump_velocity
var direction = Input.get_axis("move_left", "move_right")
if direction == 0:
velocity.x = move_toward(velocity.x, 0, friction * delta)
else:
velocity.x = move_toward(velocity.x, direction * speed, acceleration * delta)
if direction > 0:
$Look.scale.x = 1
if direction < 0:
$Look.scale.x = -1
move_and_slide()
Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.
Girdi ve Hareket bölümündeki tüm dersler
4Akıcı Hareket
Yavaş Yavaş HızlanSürtünmeHareket Yönüne DönEkran Sınırları İçinde TutHer İki Eksende Sınırla2CharacterBody2D
CharacterBody2DHız ile YürümeDuvarlar Seni DurdururHer Yöne YürümeDengeli Çapraz Hareket5Proje: Platform Oyunu Kahramanı
Kahraman: KoşKahraman: Zıpla3Yerçekimi ve Zıplama
Yerçekimiyle DüşYukarı ZıplaYalnızca YerdenKoş ve ZıplaDeğişken ZıplamaÇift ZıplamaKendi başına pratik yap: Godot playground