export_variable.gd 883 B

12345678910111213141516171819202122
  1. extends Node
  2. const Utils = preload("../../utils.notest.gd")
  3. @export var test_weak_int = 1
  4. @export var test_hard_int: int = 2
  5. @export_storage var test_storage_untyped
  6. @export_storage var test_storage_weak_int = 3 # Property info still `Variant`, unlike `@export`.
  7. @export_storage var test_storage_hard_int: int = 4
  8. @export_range(0, 100) var test_range = 100
  9. @export_range(0, 100, 1) var test_range_step = 101
  10. @export_range(0, 100, 1, "or_greater") var test_range_step_or_greater = 102
  11. @export var test_color: Color
  12. @export_color_no_alpha var test_color_no_alpha: Color
  13. @export_node_path("Sprite2D", "Sprite3D", "Control", "Node") var test_node_path := ^"hello"
  14. @export var test_node: Node
  15. @export var test_node_array: Array[Node]
  16. func test():
  17. for property in get_property_list():
  18. if str(property.name).begins_with("test_"):
  19. Utils.print_property_extended_info(property, self)