EditorScript

package
v0.0.0-...-fa94a0d Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 18, 2025 License: MIT Imports: 25 Imported by: 0

Documentation

Overview

Scripts extending this class and implementing its Run method can be executed from the Script Editor's File > Run menu option (or by pressing Ctrl + Shift + X) while the editor is running. This is useful for adding custom in-editor functionality to Godot. For more complex additions, consider using EditorPlugins instead.

If a script extending this class also has a global class name, it will be included in the editor's command palette.

Note: Extending scripts need to have tool mode enabled.

Example: Running the following script prints "Hello from the Godot Editor!":

package main

import (
	"fmt"

	"graphics.gd/classdb/EditorScript"
)

type HelloEditor struct {
	EditorScript.Extension[HelloEditor]
}

func (h *HelloEditor) Run() {
	fmt.Println("Hello from the Godot Editor!")
}

Note: EditorScript is RefCounted, meaning it is destroyed when nothing references it. This can cause errors during asynchronous operations if there are no references to the script.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Advanced

type Advanced = class

Advanced exposes a 1:1 low-level instance of the class, undocumented, for those who know what they are doing.

type Any

type Any interface {
	gd.IsClass
	AsEditorScript() Instance
}

type Extension

type Extension[T gdclass.Interface] struct{ gdclass.Extension[T, Instance] }

Extension can be embedded in a new struct to create an extension of this class. T should be the type that is embedding this [Extension]See Interface for methods that can be overridden by T.

func (*Extension[T]) AsEditorScript

func (self *Extension[T]) AsEditorScript() Instance

func (*Extension[T]) AsObject

func (self *Extension[T]) AsObject() [1]gd.Object

func (*Extension[T]) AsRefCounted

func (self *Extension[T]) AsRefCounted() [1]gd.RefCounted

type ID

type ID Object.ID

ID is a typed object ID (reference) to an instance of this class, use it to store references to objects with unknown lifetimes, as an ID will not panic on use if the underlying object has been destroyed.

func (ID) Instance

func (id ID) Instance() (Instance, bool)

type Implementation

type Implementation = implementation

Implementation implements Interface with empty methods.

type Instance

type Instance [1]gdclass.EditorScript

Instance of the class with convieniently typed arguments and results.

var Nil Instance

Nil is a nil/null instance of the class. Equivalent to the zero value.

func New

func New() Instance

func (Instance) AddRootNode

func (self Instance) AddRootNode(node Node.Instance)

Makes 'node' root of the currently opened scene. Only works if the scene is empty. If the 'node' is a scene instance, an inheriting scene will be created.

func (Instance) AsEditorScript

func (self Instance) AsEditorScript() Instance

func (Instance) AsObject

func (self Instance) AsObject() [1]gd.Object

func (Instance) AsRefCounted

func (self Instance) AsRefCounted() [1]gd.RefCounted

func (Instance) GetEditorInterface

func (self Instance) GetEditorInterface() EditorInterface.Instance

Returns the EditorInterface singleton instance.

func (Instance) GetScene

func (self Instance) GetScene() Node.Instance

Returns the edited (current) scene's root Node. Equivalent of EditorInterface.GetEditedSceneRoot.

func (Instance) ID

func (self Instance) ID() ID

func (*Instance) SetObject

func (self *Instance) SetObject(obj [1]gd.Object) bool

func (Instance) Virtual

func (self Instance) Virtual(name string) reflect.Value

type Interface

type Interface interface {
	// This method is executed by the Editor when File > Run is used.
	Run()
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL