.. Generated automatically by doc/tools/makerst.py in Godot's source tree.
.. DO NOT EDIT THIS FILE, but the EditorScript.xml source instead.
.. The source is found in doc/classes or modules/<name>/doc_classes.

.. _class_EditorScript:

EditorScript
============

**Inherits:** :ref:`Reference<class_reference>` **<** :ref:`Object<class_object>`

**Category:** Core

Brief Description
-----------------

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

Member Functions
----------------

+------------------------------------------------+-------------------------------------------------------------------------------------------------+
| void                                           | :ref:`_run<class_EditorScript__run>` **(** **)** virtual                                        |
+------------------------------------------------+-------------------------------------------------------------------------------------------------+
| void                                           | :ref:`add_root_node<class_EditorScript_add_root_node>` **(** :ref:`Node<class_node>` node **)** |
+------------------------------------------------+-------------------------------------------------------------------------------------------------+
| :ref:`EditorInterface<class_editorinterface>`  | :ref:`get_editor_interface<class_EditorScript_get_editor_interface>` **(** **)**                |
+------------------------------------------------+-------------------------------------------------------------------------------------------------+
| :ref:`Node<class_node>`                        | :ref:`get_scene<class_EditorScript_get_scene>` **(** **)**                                      |
+------------------------------------------------+-------------------------------------------------------------------------------------------------+

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 :ref:`EditorPlugin<class_editorplugin>`\ s instead. Note that extending scripts need to have ``tool mode`` enabled.

Example script:

::

    tool
    extends EditorScript
    
    func _run():
        print("Hello from the Godot Editor!")

Note that 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.

Member Function Description
---------------------------

.. _class_EditorScript__run:

- void **_run** **(** **)** virtual

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

.. _class_EditorScript_add_root_node:

- void **add_root_node** **(** :ref:`Node<class_node>` node **)**

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

WARNING: The implementation of this method is currently disabled.

.. _class_EditorScript_get_editor_interface:

- :ref:`EditorInterface<class_editorinterface>` **get_editor_interface** **(** **)**

Returns the :ref:`EditorInterface<class_editorinterface>` singleton instance.

.. _class_EditorScript_get_scene:

- :ref:`Node<class_node>` **get_scene** **(** **)**

Returns the Editor's currently active scene.


