Menu
CoddyTech

프로세스 모드

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를 사용해 게임 오버 메시지를 깜박입니다. 일시 중지하면 타이머도 멈추므로 메시지가 깜박이지 않습니다.

challenge icon

챌린지

쉬움

게임이 일시 정지된 동안에도 게임 오버가 깜박이도록 하세요.

  1. _ready()에서 Blink 타이머를 가져오세요.
  2. 타이머의 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 플레이그라운드