Menu
CoddyTech

Harici Dosyalar

Coddy'nin GDScript Journey'sinin Nesne Yönelimli Programlama bölümünün bir parçası. Ders 1 / 65.

Gerçek programlar birkaç dosyaya bölünür. Her .gd dosyası bir betiktir ve bir betik başka bir betiği kullanabilir.

Bir betiğe genel bir ad vermek için en üstüne class_name yazın. Projedeki diğer tüm betikler bu adı doğrudan, herhangi bir içe aktarma satırı olmadan kullanabilir:

# greeter.gd
class_name Greeter
extends RefCounted

static func greet(player_name: String) -> String:
	return "Hello, " + player_name + "!"

static func, bir işlevi betik adını kullanarak çağırmanızı sağlar: Greeter.greet("Ada"). extends RefCounted, düğüm olmayan betikler için temel sınıftır; sonraki derslerde bu konu açıklanır.

# main.gd
extends Node

func _ready():
	print(Greeter.greet("Ada")) # Hello, Ada!

Program hâlâ main.gd dosyasındaki _ready() içinde başlar. Diğer dosyalar yalnızca main.gd dosyasının kullandığı şeyleri tanımlar.

Godot dosyaları snake_case biçiminde, class_name değerini ise PascalCase biçiminde adlandırır: class_name Greeter, greeter.gd dosyasında bulunur. Her dosyada bir sınıf bulundur.

class_name içermeyen bir betik, yolu kullanılarak preload() ile yüklenebilir:

const Helpers = preload("res://helpers.gd")

func _ready():
	print(Helpers.shout("hi")) # HI!
challenge icon

Görev

Kolay

greeter.gd dosyasında greet statik fonksiyonunu yaz. Bu fonksiyon bir oyuncu adı alır ve Hello, NAME! döndürür. Ad boş olduğunda Hello, friend! döndürür.

Sağlanan kod, ardından kaç ad geldiğini okur ve her biri için Greeter.greet() çıktısını yazdırır. Ada ve boş bir satır için şunu yazdırır:

Hello, Ada!
Hello, friend!

Kodunu greeter.gd dosyasına yaz. main.gd, sağlanan girdi/çıktı kodunu içerir ve düzenlenemez.

Kendin dene

extends Node

func _ready():
	# Sağlanan giriş/çıkış kodu: olduğu gibi bırakın
	var count := int(OS.read_string_from_stdin())
	for i in count:
		print(Greeter.greet(OS.read_string_from_stdin()))
quiz iconKendini test et

Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.

Nesne Yönelimli Programlama bölümündeki tüm dersler

Kendi başına pratik yap: Online GDScript derleyicisi