가변 점프
Coddy Godot 여정의 입력과 이동 섹션에 포함된 레슨. 28개 중 16번째.
대부분의 플랫폼 게임에서는 버튼을 짧게 누르면 살짝 뛰어오르고, 버튼을 누르고 있으면 높이 점프합니다.
이렇게 하려면 버튼을 놓을 때 점프를 끊으세요. Input.is_action_just_released("jump")는 키를 놓는 바로 그 프레임에 true가 됩니다. 그때 영웅이 아직 상승 중이라면 상승 속도를 절반으로 줄이세요:
if Input.is_action_just_released("jump") and velocity.y < 0:
velocity.y = velocity.y / 2velocity.y < 0은 영웅이 아직 상승 중이라는 뜻입니다. 이 조건이 없으면 내려오는 도중에 키를 놓았을 때 낙하 속도가 느려집니다.
점프의 정점에 도달할 때까지 키를 누르고 있으면 점프가 끊기지 않습니다.
챌린지
중급점프를 짧게 탭하면 작게 도약하도록 하세요.
- 점프의
if뒤에Input.is_action_just_released("jump")및velocity.y < 0을 위한if를 추가하세요. - 그 안에서
velocity.y를 절반으로 줄이세요.
‘플레이’를 누르세요. Space를 빠르게 탭하면 도약하고, 길게 누르면 높이 점프합니다. 그런 다음 ‘확인’을 누르세요.
직접 해보기
extends CharacterBody2D
var speed = 220
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
velocity.x = Input.get_axis("move_left", "move_right") * speed
move_and_slide()
입력과 이동의 모든 레슨
직접 연습해 보세요: Godot 플레이그라운드