Menu
CoddyTech

브레이크아웃 점수

Coddy Godot 여정의 프로젝트 섹션에 포함된 레슨. 33개 중 7번째.

각 벽돌의 점수는 10점입니다. 공은 벽돌을 부수면 이를 알고, main.gd가 점수를 관리합니다. 신호로 두 요소를 연결합니다. 공은 벽돌을 부술 때마다 신호를 내보내고, 메인 스크립트는 이를 듣습니다.

ball.gd에서 신호를 맨 위에 선언하고 smash() 옆에서 신호를 내보내세요.

signal brick_broken

# _on_body_entered에서 body.smash() 다음에:
brick_broken.emit()

main.gd에서 _ready에 신호를 연결하고, 신호가 호출하는 함수에서 점수를 추가하세요.

func _on_brick_broken():
	score += 10
	$HUD/Score.text = "Score: %d" % score

라벨은 HUD라는 CanvasLayer 안에 있습니다. _ready에서 라벨을 Score: 0으로 설정하세요. 그러지 않으면 첫 번째 벽돌을 부술 때까지 비어 있습니다.

challenge icon

챌린지

중급
  1. ball.gd에서 signal brick_broken을 추가하고 벽돌이 깨질 때 신호를 발생시키세요.
  2. main.gd에서 var score = 0을 추가하고, 10을 더한 뒤 $HUD/Score에 Score: 10, Score: 20, ...을 표시하는 함수에 $Ball.brick_broken을 연결하세요.
  3. 게임이 시작될 때 Score: 0을 표시하세요.

직접 해보기

extends Node2D

const BRICK = preload("res://brick.tscn")
const COLORS = [Color(1, 0.42, 0.42), Color(1, 0.78, 0.34), Color(0.49, 0.95, 0.75), Color(0.369, 0.635, 1), Color(0.75, 0.82, 0.95)]

func _ready():
	for row in 5:
		for column in 8:
			var brick = BRICK.instantiate()
			brick.position = Vector2(68 + column * 72, 60 + row * 26)
			brick.color = COLORS[row]
			add_child(brick)
quiz icon실력 점검

이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.

프로젝트의 모든 레슨

직접 연습해 보세요: Godot 플레이그라운드