Menu
CoddyTech

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.

challenge icon

Görev

Kolay

Kahramanı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()
quiz iconKendini test et

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

Kendi başına pratik yap: Godot playground