Erstellen von Skript-Vorlagen

Godot bietet eine Möglichkeit Skriptvorlagen zu verwenden, wie im Skript erstellen Dialog beim Erstellen eines neuen Skripts dargestellt:

../../_images/script_create_dialog_templates.png

Standardmäßig wird eine Reihe von Standard-Skriptvorlagen bereitgestellt. Es ist jedoch auch möglich vorhandene zu ändern und neue zu erstellen, sowohl pro Projekt als auch im Editor.

Die Vorlagen finden

Es gibt zwei Stellen, an denen Vorlagen verwaltet werden können.

Editor-Vorlagen

Diese sind weltweit in jedem Projekt verfügbar. Der Speicherort dieser Vorlagen wird für jedes Betriebssystem festgelegt:

  • Windows: %APPDATA%\Godot\script_templates\

  • Linux: $HOME/.local/share/godot/script_templates/

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

Wenn keine script_templates erkannt werden, erstellt Godot automatisch einen Standardsatz integrierter Vorlagen, sodass diese Logik verwendet werden kann um die Standardvorlagen zurückzusetzen, falls Sie sie versehentlich überschrieben haben.

Projekt-Vorlagen

Der Standardpfad für die Suche nach Vorlagen ist das Verzeichnis res://script_templates/. Der Pfad kann geändert werden, indem die Einstellung editor/script_templates_search_path in den Projekteinstellungen sowohl über Code als auch über den Editor konfiguriert wird.

Wenn in einem Projekt kein script_templates-Verzeichnis gefunden wird, wird es einfach ignoriert.

Sprachunterstützung und überschreiben von Verhalten

Abhängig davon ob eine bestimmte Sprache eine Möglichkeit zum Generieren von Skripten aus Vorlagen implementiert, ist es möglich eine Vorlage zu erstellen, die von dieser Sprache anhand der Dateierweiterung der Vorlage erkannt werden kann. Für GDScript und C# müssen die Erweiterungen gd bzw. cs sein.

Bemerkung

Die Skriptvorlagen haben dieselbe Erweiterung wie die regulären Skriptdateien. Dies kann dazu führen, dass ein Skriptparser diese Vorlagen als tatsächliche Skripte innerhalb eines Projekts behandelt. Um dies zu vermeiden ignorieren Sie das Verzeichnis in dem sie enthalten sind, indem Sie eine .gdignore-Datei erstellen. Das Verzeichnis ist nicht mehr im gesamten Dateisystem des Projekts sichtbar, die Vorlagen können jedoch jederzeit von einem externen Texteditor geändert werden.

Die projektspezifischen Vorlagen werden automatisch vor den integrierten Editorvorlagen bevorzugt, da beide Skripte denselben Dateinamen haben.

Standard-Vorlagen

Die Standard Vorlage wird immer dynamisch pro Sprache generiert und kann weder konfiguriert noch überschrieben werden. Sie können diese jedoch als Basis für die Erstellung anderer Vorlagen verwenden.

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
using Godot;
using System;

public class %CLASS% : %BASE%
{
    // Declare member variables here. Examples:
    // private int a = 2;
    // private string b = "text";

    // Called when the node enters the scene tree for the first time.
    public override void _Ready()
    {

    }

//  // Called every frame. 'delta' is the elapsed time since the previous frame.
//  public override void _Process(float delta)
//  {
//
//  }
}

Liste von Vorlagen-Platzhaltern

Im Folgenden wird die vollständige Liste der derzeit implementierten Platzhalter für Vorlagen beschrieben.

Basis-Platzhalter

Platzhalter

Beschreibung

%CLASS%

Der Name der neuen Klasse (wird nur in C# verwendet).

%BASE%

Der Basistyp, von dem ein neues Skript erbt.

%TS%

Einrückungsplatzhalter. Der genaue Typ und die Anzahl der zum Einrücken verwendeten Leerzeichen werden durch die Einstellungen text_editor/indent/type und text_editor/indent/size in den Editoreinstellungen bestimmt.

Typ-Platzhalter

Diese sind nur für GDScript mit statischer Typisierung relevant. Ob diese Platzhalter tatsächlich ersetzt werden, wird durch die Einstellung text_editor/completion/add_type_hints in den Editoreinstellungen bestimmt.

Platzhalter

Wert

%INT_TYPE%

: int

%STRING_TYPE%

: String

%FLOAT_TYPE%

: float

%VOID_RETURN%

-> void