Створення скриптових шаблонів

Godot надає спосіб використання скриптових шаблонів, як це видно в Script Create Dialog під час створення нового скрипта:

../../_images/script_create_dialog_templates.png

Набір шаблонів скриптів надається за замовчуванням, але також можна змінювати існуючі та створювати нові, як для проєкту, так і для редактора.

Розташування шаблонів

Є два місця, де можна керувати шаблонами.

Шаблони, визначені редактором

Вони доступні глобально в рамках будь-якого проєкту. Розташування цих шаблонів визначається для кожної ОС:

  • Windows: %APPDATA%\Godot\script_templates\

  • Linux: $HOME/.config/godot/script_templates/

  • macOS: $HOME/Library/Application Support/Godot/script_templates/

Якщо script_templates не виявлено, то Godot автоматично створить набір вбудованих шаблонів за замовчуванням, тому ця логіка може бути використана для скидання шаблонів за замовчуванням у випадку, якщо ви їх випадково перезаписали.

Шаблони, визначені проєктом

За замовчуванням шаблони знаходяться в каталозі res://script_templates/. Шлях можна змінити, налаштувавши параметр editor/script_templates_search_path в ProjectSettings, як з допомогою кода, так і редактора.

Якщо в проєкті не знайдено каталог script_templates, то він просто ігнорується.

Підтримка мов та визначаюча поведінка

Залежно від того, чи реалізує певна мова спосіб генерації скриптів із шаблонів, можна створити шаблон, який може розпізнаватися цією мовою відповідно до розширення файлу шаблону. Для GDScript та C# розширення повинні бути gd і cs відповідно.

Примітка

The script templates have the same extension as the regular script files. This may lead to an issue of a script parser treating those templates as actual scripts within a project. To avoid this, make sure to ignore the directory containing them by creating an empty .gdignore file. The directory won't be visible throughout the project's filesystem anymore, yet the templates can be modified by an external text editor anytime.

Вбудовані шаблони редактора автоматично перекриваються шаблонами для конкретного проєкта, оскільки обидва скрипти мають однакову назву файлу.

Шаблон Default (за замовчуванням)

Шаблон Default завжди генерується динамічно для кожної мови і не може бути налаштований і перевизначений, але ви можете використовувати його в якості основи для створення інших шаблонів.

extends %BASE%


# Declare member variables here. Examples:
# var a%INT_TYPE% = 2
# var b%STRING_TYPE% = "text"


# Called when the node enters the scene tree for the first time.
func _ready()%VOID_RETURN%:
    pass # Replace with function body.


# Called every frame. 'delta' is the elapsed time since the previous frame.
#func _process(delta%FLOAT_TYPE%)%VOID_RETURN%:
#   pass

Список заповнювачів шаблону

Далі описується повний перелік вбудованих заповнювачів шаблонів, які реалізовані на даний момент.

Основні заповнювачі

Проміжний

Опис

%CLASS%

Назва нового класу (використовується лише в C#).

%BASE%

Базовий тип, який успадковує новий скрипт.

%TS%

Заповнення відступу. Точний тип та кількість пробілів, що використовуються для відступу, визначається відповідно параметрами text_editor/indent/type і text_editor/indent/size в EditorSettings.

Типи заповнювачів

Вони стосуються лише GDScript із статичною типізацією. Чи будуть ці заповнювачі фактично замінені, визначається параметром text_editor/completion/add_type_hints в EditorSettings.

Проміжний

Значення

%INT_TYPE%

: int

%STRING_TYPE%

: String

%FLOAT_TYPE%

: float

%VOID_RETURN%

-> void