mirror of
https://github.com/Relintai/broken_seals.git
synced 2024-12-21 13:16:49 +01:00
33 lines
678 B
GDScript3
33 lines
678 B
GDScript3
|
tool
|
||
|
extends MenuButton
|
||
|
|
||
|
var skeleton : Skeleton = null
|
||
|
|
||
|
func edit(new_skeleton : Skeleton):
|
||
|
skeleton = new_skeleton
|
||
|
|
||
|
# update our menu
|
||
|
var popup = get_popup()
|
||
|
if popup:
|
||
|
popup.clear()
|
||
|
|
||
|
if skeleton:
|
||
|
for idx in range(0, skeleton.get_bone_count()):
|
||
|
var parent = skeleton.get_bone_parent(idx)
|
||
|
if parent != -1:
|
||
|
var name = skeleton.get_bone_name(idx)
|
||
|
popup.add_item(name, idx)
|
||
|
|
||
|
func select_bone(id):
|
||
|
print("select bone " + str(id))
|
||
|
|
||
|
var gizmo : BoneSpatialGizmo = skeleton.gizmo
|
||
|
if gizmo:
|
||
|
gizmo.set_selected_bone(id)
|
||
|
skeleton.update_gizmo()
|
||
|
|
||
|
func _ready():
|
||
|
var popup = get_popup()
|
||
|
if popup:
|
||
|
popup.connect("id_pressed", self, "select_bone")
|