70 lines
1.4 KiB
GDScript
70 lines
1.4 KiB
GDScript
extends SceneTree
|
|
|
|
class NewAccessors:
|
|
var foo = 1 :
|
|
get:
|
|
print('get foo')
|
|
return foo
|
|
set(val):
|
|
print('set foo ', foo, ' -> ', val)
|
|
foo = val
|
|
|
|
var _bar = 'a'
|
|
var bar = _bar :
|
|
get:
|
|
print('get bar')
|
|
return _bar
|
|
set(val):
|
|
print('set bar ', bar, ' -> ', val)
|
|
_bar = val
|
|
|
|
var one_line = 'cool' :
|
|
get: return one_line
|
|
set(val): one_line = val
|
|
|
|
var _other_methods = 'hello'
|
|
var other_methods = _other_methods :
|
|
get: return _get_other_methods()
|
|
set(val): _set_other_methods(val)
|
|
|
|
var read_only = 'read me' :
|
|
get: return read_only
|
|
set(val): print('READ ONLY, CANNOOT SET')
|
|
|
|
|
|
|
|
func _get_other_methods():
|
|
print('get_other_methods')
|
|
return _other_methods
|
|
|
|
func _set_other_methods(val):
|
|
print('set_other_methods ', _other_methods, ' -> ', val)
|
|
_other_methods = val
|
|
|
|
|
|
func set_foo_internally(val):
|
|
foo = val
|
|
|
|
func set_bar_internally(val):
|
|
_bar = val
|
|
|
|
|
|
func _init():
|
|
var na = NewAccessors.new()
|
|
na.foo = 10
|
|
na.set_foo_internally(20)
|
|
|
|
na.bar = 'b'
|
|
na.set_bar_internally('c')
|
|
|
|
na.one_line = 'man'
|
|
print(na.one_line)
|
|
|
|
na.other_methods = 'world'
|
|
print(na.other_methods)
|
|
|
|
na.read_only = 'wroten'
|
|
print(na.read_only)
|
|
quit()
|
|
|