Menu
CoddyTech

Pliki zewnętrzne

Część sekcji Programowanie obiektowe ścieżki GDScript w Coddy. Lekcja 1 z 65.

Prawdziwe programy są podzielone na kilka plików. Każdy plik .gd jest skryptem, a jeden skrypt może korzystać z innego.

Wpisz class_name na górze skryptu, aby nadać mu nazwę globalną. Każdy inny skrypt w projekcie może wtedy używać tej nazwy bezpośrednio, bez instrukcji importu:

# greeter.gd
class_name Greeter
extends RefCounted

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

static func tworzy funkcję, którą wywołujesz za pomocą nazwy skryptu, Greeter.greet("Ada"). extends RefCounted to podstawowa klasa bazowa dla skryptów, które nie są węzłami; wyjaśnią to kolejne lekcje.

# main.gd
extends Node

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

Program nadal uruchamia się w _ready() z pliku main.gd. Pozostałe pliki tylko definiują elementy używane przez main.gd.

Godot nazywa pliki w formacie snake_case, a class_name w formacie PascalCase: class_name Greeter znajduje się w pliku greeter.gd. Umieszczaj jedną klasę w każdym pliku.

Skrypt bez class_name można wczytać, podając jego ścieżkę w preload():

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

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

Wyzwanie

Łatwy

Napisz funkcję statyczną greet w pliku greeter.gd. Przyjmuje ona imię gracza i zwraca Hello, NAME!. Gdy imię jest puste, zwraca Hello, friend!.

Dostarczony kod odczytuje, ile imion podano, a następnie wypisuje Greeter.greet() dla każdego z nich. Dla imion Ada i pustej linii wypisuje:

Hello, Ada!
Hello, friend!

Twój kod umieść w pliku greeter.gd. Plik main.gd zawiera dostarczony kod wejścia/wyjścia i nie można go edytować.

Spróbuj swoich sił

extends Node

func _ready():
	# Dostarczony kod wejścia/wyjścia: pozostaw go bez zmian
	var count := int(OS.read_string_from_stdin())
	for i in count:
		print(Greeter.greet(OS.read_string_from_stdin()))
quiz iconSprawdź się

Ta lekcja zawiera krótki quiz. Zacznij lekcję, żeby na niego odpowiedzieć i śledzić swoje postępy.

Wszystkie lekcje w sekcji Programowanie obiektowe

Poćwicz samodzielnie: Kompilator GDScript online