1
1
Fork
You've already forked godot-tree-menu
0
Tree menu addon for godot.
  • GDScript 95.4%
  • GAP 4.6%
2025年09月24日 10:41:40 +09:30
images Moved to godot 4. Added support for custom translation keys 2024年01月12日 12:23:59 +10:30
value_editors Fix signal connection in example scene, and moved submenubutton 2025年09月24日 10:41:40 +09:30
actionButton.tscn Moved to godot 4. Added support for custom translation keys 2024年01月12日 12:23:59 +10:30
example.gd Fix signal connection in example scene, and moved submenubutton 2025年09月24日 10:41:40 +09:30
example.tscn Added folder and file pickers for absolute paths. Added experimental relative paths. 2024年12月07日 12:59:31 +10:30
LICENSE.md Initial commit 2023年10月09日 22:16:21 +10:30
Menu.gd Change min/max to min_value and max_value for slider options. 2024年12月07日 16:09:44 +10:30
README.md Change min/max to min_value and max_value for slider options. 2024年12月07日 16:09:44 +10:30
transparentStylebox.tres Moved to godot 4. Added support for custom translation keys 2024年01月12日 12:23:59 +10:30
TreeMenu.gd Moved all value editors to the value_editors folder. 2025年01月26日 14:08:27 +10:30
TreeMenu.tscn Added folder and file pickers for absolute paths. Added experimental relative paths. 2024年12月07日 12:59:31 +10:30

Godot menu addon

An addon that provides a configurable gui popup menu, with nested menus, and an easily serializable path-like data format:

{
	"video/fullscreen": false,
	"debug/debug_on_start": true
}

Screenshot of example usage in a game

The data of the menu has the following format:

	"": {
		"buttons": ["button"],
		"submenus": ["submenu1", "submenu2"],
		"options": {
			"slider": {
				"type": "slider",
				"value": 0,
				"min_value": 0,
				"max_value": 100,
				"step": 1
			},
			"checkbutton": {
				"type": "checkbutt",
				"value": false
			}
		},
		"hidden": [],
	},
	"submenu1": {
		"buttons": ["some_button"],
		"submenus": [],
		"options": {},
		"hidden": [],
	}
}

The top-most key in the dictionary determines the path of the menu. Under each menu, there are the following required keys:

  • buttons: a list of button names
  • submenus: a list of submenu names that are accessible from this menu
  • options: a dictionary of options that can be changed
  • hidden: a list of item names that will be hidden in the menu

The translation key for each item is its string identifier in uppercase prefixed by "MENU_". So for translating the button "some_button" under "submenu1", you use the key MENU_SOME_BUTTON.