[GDScript] 캐릭터 이동 구현

PersesTitan·2023년 4월 22일
0

GDScript

목록 보기
2/2

첫 프로젝트 생성

Area2D 추가 -> Area2D 이름 변경(Player) -> AnimatedSprite, CollisionShape2D를 추가

Script

Player -> 인스팩터 -> Script -> 새 스크립트

extends Area2D

export var speed: int
var screensize

func _ready():
	screensize = get_viewport_rect().size
	pass
	
func _process(delta):
	var p = Vector2()
	if Input.is_action_pressed("ui_right"):
		p.x += 1
	if Input.is_action_pressed("ui_left"):
		p.x -= 1
	if Input.is_action_pressed("ui_down"):
		p.y += 1
	if Input.is_action_pressed("ui_up"):
		p.y -= 1
	if p.length() > 0:
		p = p.normalized() * speed
		$AnimatedSprite.play()
	else:
		$AnimatedSprite.stop()
	position += p * delta
	position.x = clamp(position.x, 0, screensize.x)
	position.y = clamp(position.y, 0, screensize.y)

동작

profile
안녕하세요 페르세스 티탄입니다! 부족한 부분이 많이 있겠지만 잘부탁드립니다.

0개의 댓글