mirror of
https://github.com/Relintai/material-maker.git
synced 2024-11-13 06:27:18 +01:00
40 lines
1.1 KiB
GDScript3
40 lines
1.1 KiB
GDScript3
|
tool
|
||
|
extends EditorPlugin
|
||
|
|
||
|
var mm_button = null
|
||
|
var material_maker = null
|
||
|
|
||
|
func _enter_tree():
|
||
|
#material_maker = preload("res://addons/material_maker/pm_material_maker.tscn").instance()
|
||
|
#add_control_to_bottom_panel(material_maker, "ProceduralMaterial")
|
||
|
print("Adding menu item")
|
||
|
mm_button = Button.new()
|
||
|
mm_button.connect("pressed", self, "open_material_maker")
|
||
|
mm_button.text = "Material Maker"
|
||
|
add_control_to_container(CONTAINER_TOOLBAR, mm_button)
|
||
|
print("done")
|
||
|
|
||
|
func _exit_tree():
|
||
|
#remove_control_from_bottom_panel(material_maker)
|
||
|
if mm_button != null:
|
||
|
remove_control_from_container(CONTAINER_TOOLBAR, mm_button)
|
||
|
mm_button.queue_free()
|
||
|
if material_maker != null:
|
||
|
material_maker.hide()
|
||
|
material_maker.queue_free()
|
||
|
material_maker = null
|
||
|
|
||
|
func _get_state():
|
||
|
var s = { mm_button=mm_button, material_maker=material_maker }
|
||
|
return s
|
||
|
|
||
|
func _set_state(s):
|
||
|
mm_button = s.mm_button
|
||
|
material_maker = s.material_maker
|
||
|
|
||
|
func open_material_maker():
|
||
|
if material_maker == null:
|
||
|
material_maker = load("res://addons/material_maker/window_dialog.tscn").instance()
|
||
|
add_child(material_maker)
|
||
|
material_maker.popup_centered()
|