Menu
CoddyTech

Kaçış: Oyun Bitti

Coddy'nin Godot Journey'sinin Oyun Kuralları bölümünün bir parçası. Ders 28 / 29.

Can sayısı sıfıra indiğinde oyun devam eder. Puan saymaya devam eder ve can sayısı sıfırın altına düşer.

Oyunu, dikenli odada yaptığın gibi bitir. Gizli GameOver etiketini göster ve oyunu duraklat. Duraklatma her iki zamanlayıcıyı da durdurur, böylece puan, hayatta kaldığın saniye sayısında kalır. Bloklar oldukları yerde durur.

if lives == 0:
	$HUD/GameOver.visible = true
	get_tree().paused = true
challenge icon

Görev

Orta

Canlar tükendiğinde oyunu bitir.

  1. _on_player_hurt() içinde, etiket satırından sonra lives değerinin 0 olup olmadığını kontrol et.
  2. Öyleyse $HUD/GameOver öğesini göster ve oyunu duraklat.

“Oyna” düğmesine bas ve üç darbe al: Game Over görünür ve bloklar durur. Ardından “Kontrol et” düğmesine bas.

Kendin dene

extends Node2D

var block_scene = preload("res://block.tscn")
var score = 0
var lives = 3

func _ready():
	$HUD/Score.text = "Score: %d" % score
	$HUD/Lives.text = "Lives: %d" % lives
	$SpawnTimer.timeout.connect(_on_spawn_timer_timeout)
	$ScoreTimer.timeout.connect(_on_score_timer_timeout)
	$Player.hurt.connect(_on_player_hurt)

func _on_spawn_timer_timeout():
	var block = block_scene.instantiate()
	block.position = Vector2(randf_range(40, 600), -30)
	add_child(block)

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

func _on_player_hurt():
	lives -= 1
	$HUD/Lives.text = "Lives: %d" % lives

Oyun Kuralları bölümündeki tüm dersler

Kendi başına pratik yap: Godot playground