cirnogodot/addons/bullet_script_graph_editor/plugin.gd
2026-03-01 23:14:33 +01:00

32 lines
1,013 B
GDScript

@tool
extends EditorPlugin
const GraphEditorDockScene := preload("res://addons/bullet_script_graph_editor/ui/graph_editor_dock.tscn")
const InspectorPluginScript := preload("res://addons/bullet_script_graph_editor/inspector_plugin.gd")
var _dock_instance: PanelContainer
var _inspector_plugin: EditorInspectorPlugin
func _enter_tree() -> void:
_dock_instance = GraphEditorDockScene.instantiate()
_dock_instance.setup(get_editor_interface())
add_control_to_bottom_panel(_dock_instance, "Bullet Graph")
_inspector_plugin = InspectorPluginScript.new()
_inspector_plugin.setup(self)
add_inspector_plugin(_inspector_plugin)
func _exit_tree() -> void:
if _inspector_plugin:
remove_inspector_plugin(_inspector_plugin)
_inspector_plugin = null
if _dock_instance:
remove_control_from_bottom_panel(_dock_instance)
_dock_instance.queue_free()
_dock_instance = null
func open_resource_in_graph(resource: Resource) -> void:
if _dock_instance == null:
return
_dock_instance.open_resource(resource)