Anh hùng: quay mặt theo hướng di chuyển
Thuộc phần Đầu vào và di chuyển trong hành trình Godot của Coddy. Bài học 26 trên 28.
Nhân vật chính vẫn quay mặt sang phải khi chạy sang trái. Lật nút Look theo hướng của các phím:
if direction > 0:
$Look.scale.x = 1
if direction < 0:
$Look.scale.x = -1Đặt các dòng này sau khi đặt direction. Khi không nhấn phím nào, cả hai câu lệnh if đều không chạy, vì vậy nhân vật chính vẫn giữ hướng quay mặt lần cuối.
Thử thách
DễHãy để nhân vật quay mặt theo hướng chạy.
- Trước
move_and_slide(), đặt$Look.scale.xthành1khidirection > 0. - Đặt thành
-1khidirection < 0.
Nhấn Chơi rồi chạy sang trái: nhân vật quay sang trái và vẫn quay mặt sang trái khi bạn dừng lại. Sau đó nhấn Kiểm tra.
Tự làm thử
extends CharacterBody2D
var speed = 220
var acceleration = 1200
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)
move_and_slide()
Tất cả bài học trong Đầu vào và di chuyển
5Dự án: nhân vật anh hùng trong game đi cảnh
Anh hùng: chạyAnh hùng: nhảyTự luyện tập: Playground Godot