Description
Tested versions
- Reproducible in: v4.5.beta1.official [46c495c]
System information
Godot v4.5.beta1 - Windows 11 (build 26100) - Multi-window, 1 monitor - Vulkan (Forward+) - dedicated AMD Radeon RX 580 2048SP (Advanced Micro Devices, Inc.; 31.0.21923.1000) - Genuine Intel(R) CPU 0000 @ 2.60GHz (16 threads) - 15.84 GiB memory
Issue description
When using @export_custom
with PROPERTY_HINT_GROUP_ENABLE
for a toggleable group, the associated checkbox in the Inspector does not update visually when its value is changed externally via a @tool
script.
Here is a video of the issue:
unknown_2025.06.21-19.49_3.mp4
Steps to reproduce
-
Create a new Node in a scene (e.g., a
Node2D
). -
Attach a new script to this node.
-
Inside the script, define two
@export_group
. -
For each group, add an
@export_custom
variable usingPROPERTY_HINT_GROUP_ENABLE
. -
Implement a setter on one of these variables. In the setter, set its own value and also set the other group's variable to the inverse of the current value.
Here's an example script:
@tool
extends Node
@export_group("Test A")
@export_custom(PROPERTY_HINT_GROUP_ENABLE, "") var enable_a: bool = false
@export_group("Test B")
@export_custom(PROPERTY_HINT_GROUP_ENABLE, "") var enable_b: bool = false:
set(value):
enable_b = value
enable_a = !value
print("Actual Test A status: %s" % !value)
-
Save your scene.
-
Reload the scene.
-
With the node selected in the Scene tree, toggle the Test B checkbox (the one with the setter) multiple times, the Test A will not update unless you deselect the node and select again.
Minimal reproduction project (MRP)
Metadata
Metadata
Assignees
Type
Projects
Status