-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathplugin.gd
More file actions
36 lines (29 loc) · 1.15 KB
/
plugin.gd
File metadata and controls
36 lines (29 loc) · 1.15 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
@tool
extends EditorPlugin
const OrbitalManager = preload("res://addons/orbital_tools/orbital_manager.gd")
const PQWGizmoPlugin = preload("res://addons/orbital_tools/gizmos/pqw_gizmo_plugin.gd")
var gizmo_plugin = PQWGizmoPlugin.new()
func _enter_tree():
# Registrar el script como tipo personalizado con su icono
add_custom_type(
"OrbitalObject3D",
"Node3D",
preload("res://addons/orbital_tools/orbital_object_3d.gd"),
preload("res://addons/orbital_tools/icons/orbital2.svg")
)
add_custom_type(
"OrbitRender3D",
"MeshInstance3D",
preload("res://addons/orbital_tools/orbit_render_3d.gd"),
preload("res://addons/orbital_tools/icons/orbit_render_3d.svg")
)
# Añadir el gizmo para los ejes PQW
add_node_3d_gizmo_plugin(gizmo_plugin)
# Autoload del manager (nombre que aparecerá en Project → Project Settings → Autoload)
add_autoload_singleton("OrbitalManager", "res://addons/orbital_tools/orbital_manager.gd")
func _exit_tree():
# Limpiar todo al desactivar el addon
remove_custom_type("OrbitalObject3D")
remove_custom_type("OrbitRender3D")
remove_node_3d_gizmo_plugin(gizmo_plugin)
remove_autoload_singleton("OrbitalManager")