프로세스 모드
Coddy Godot 여정의 게임 규칙 섹션에 포함된 레슨. 29개 중 14번째.
게임이 일시 중지되면 모든 노드가 멈춥니다. 깜박이는 게임 오버 메시지나 일시 중지 메뉴처럼 계속 실행되어야 하는 노드도 있습니다.
노드의 process_mode는 다음을 결정합니다.
Node.PROCESS_MODE_INHERIT: 부모 노드의 설정을 따릅니다. 이것이 기본값입니다.Node.PROCESS_MODE_PAUSABLE: 게임이 일시 중지되면 멈춥니다.Node.PROCESS_MODE_ALWAYS: 게임이 일시 중지되었는지와 상관없이 계속 실행됩니다.
$Music.process_mode = Node.PROCESS_MODE_ALWAYS이제 스크립트는 Blink라는 Timer를 사용해 게임 오버 메시지를 깜박입니다. 일시 중지하면 타이머도 멈추므로 메시지가 깜박이지 않습니다.
챌린지
쉬움게임이 일시 정지된 동안에도 게임 오버가 깜박이도록 하세요.
_ready()에서Blink타이머를 가져오세요.- 타이머의
process_mode를Node.PROCESS_MODE_ALWAYS로 설정하세요.
‘플레이’를 누르고 생명을 세 번 잃으세요. 정지된 게임 화면 위에서 게임 오버가 깜박입니다. 그런 다음 ‘확인’을 누르세요.
직접 해보기
extends Node2D
var lives = 3
func _ready():
$HUD/Lives.text = "Lives: %d" % lives
$Player.hurt.connect(_on_player_hurt)
$Blink.timeout.connect(_on_blink_timeout)
func _on_player_hurt():
lives -= 1
$HUD/Lives.text = "Lives: %d" % lives
if lives == 0:
$HUD/GameOver.visible = true
get_tree().paused = true
func _on_blink_timeout():
if lives == 0:
$HUD/GameOver.visible = not $HUD/GameOver.visible
게임 규칙의 모든 레슨
직접 연습해 보세요: Godot 플레이그라운드