Up to date

This page is up to date for Godot 4.1. If you still find outdated information, please open an issue.

EditorScript

Inherits: RefCounted < Object

Base script that can be used to add extension functions to the editor.

Description

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.

Note: Extending scripts need to have tool mode enabled.

Example script:

GDScriptC#

  1. @tool
  2. extends EditorScript
  3. func _run():
  4. print("Hello from the Godot Editor!")
  1. using Godot;
  2. [Tool]
  3. public partial class HelloEditor : EditorScript
  4. {
  5. public override void _Run()
  6. {
  7. GD.Print("Hello from the Godot Editor!");
  8. }
  9. }

Note: The script is run in the Editor context, which means the output is visible in the console window started with the Editor (stdout) instead of the usual Godot Output dock.

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.

Methods

void

_run ( ) virtual

void

add_root_node ( Node node )

EditorInterface

get_editor_interface ( ) const

Node

get_scene ( ) const


Method Descriptions

void _run ( ) virtual

This method is executed by the Editor when File > Run is used.


void add_root_node ( Node node )

Adds node as a child of the root node in the editor context.

Warning: The implementation of this method is currently disabled.


EditorInterface get_editor_interface ( ) const

Returns the EditorInterface singleton instance.


Node get_scene ( ) const

Returns the Editor’s currently active scene.