gdscript2.gd 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788
  1. extends Node
  2. class_name TestClass2
  3. @icon("res://path/to/icon.png")
  4. # ******************************************************************************
  5. @export var x : int
  6. @export var y : int
  7. @export var z : String
  8. @export_node_path(Resource) var resource_name
  9. var raw_string_a = r"test"
  10. var raw_string_b = r'test'
  11. var raw_string_c = r"""test"""
  12. var nodepath_a = &"test"
  13. var nodepath_b = &'test'
  14. var stringname_a = ^"test"
  15. var stringname_b = ^'test'
  16. var array_a: Array[int] = [1, 2, 3]
  17. var array_b: Array[String] = ['1', '2', '3']
  18. @rpc
  19. func remote_function_a():
  20. pass
  21. @rpc(any_peer, call_local, unreliable)
  22. func remote_function_b():
  23. pass
  24. signal sig_a
  25. signal sig_b()
  26. signal sig_c(param1, param2)
  27. signal sig_d(param1: int, param2: Dictionary)
  28. signal sig_e(
  29. param1: int, # first param
  30. param2: Dictionary,
  31. )
  32. # ------------------------------------------------------------------------------
  33. func f():
  34. await $Button.button_up
  35. super()
  36. super.some_function()
  37. match param3:
  38. 3:
  39. print("param3 is 3!")
  40. _:
  41. print("param3 is not 3!")
  42. for i in range(1): # `in` is a control keyword
  43. print(i in range(1)) # `in` is an operator keyword
  44. func lambda_test():
  45. var lambda_a = func(param1, param2, param3):
  46. pass
  47. var lambda_b = func(param1, param2=func_a(10, 1.0, 'test')):
  48. pass
  49. var lambda_c = func(param1 = false, param2: bool = false, param3 := false):
  50. pass
  51. lambda_a.call()
  52. lambda_b.call()
  53. lambda_c.call()
  54. # ------------------------------------------------------------------------------
  55. signal changed(new_value)
  56. var warns_when_changed = "some value":
  57. get:
  58. return warns_when_changed
  59. set(value):
  60. changed.emit(value)
  61. warns_when_changed = value
  62. var inline_setter_getter: String = "test" : get = getter, set = setter
  63. func getter():
  64. pass
  65. func setter(x):
  66. pass
  67. # ------------------------------------------------------------------------------