Menu
CoddyTech

Batasi pada Layar

Termasuk bagian Input dan Pergerakan dalam perjalanan Godot di Coddy. Pelajaran 21 dari 28.

Bergerak ke kiri membuat hero keluar dari layar. clamp(value, low, high) menjaga angka tetap di antara dua batas. Fungsi ini mengembalikan low jika value berada di bawahnya, high jika value berada di atasnya, dan value jika tidak. clamp(700, 14, 626) menghasilkan 626.

Batasi posisi setelah bergerak, lalu simpan hasilnya:

move_and_slide()
position.x = clamp(position.x, 14, 626)

position adalah titik tengah hero, dan lebar hero adalah 28 piksel. Jadi titik tengahnya tetap berjarak 14 piksel dari setiap tepi layar selebar 640 piksel, dan seluruh hero tetap terlihat.

challenge icon

Tantangan

Mudah

Pastikan seluruh hero tetap terlihat di layar. Setelah move_and_slide(), batasi position.x antara 14 dan 626.

Coba sendiri

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 iconUji dirimu

Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.

Semua pelajaran di Input dan Pergerakan

Latihan sendiri: Playground Godot