diff options
author | George Marques <george@gmarqu.es> | 2024-07-09 12:45:07 -0300 |
---|---|---|
committer | George Marques <george@gmarqu.es> | 2024-07-09 13:01:59 -0300 |
commit | 87c90a573c26ddcbe1b5d9f523b57a89d76dc6df (patch) | |
tree | 083ec843980f4ae85343ad488c33207bebfc83fe /modules/gdscript/tests/scripts/runtime | |
parent | 82cedc83c9069125207c128f9a07ce3d82c317cc (diff) | |
download | redot-engine-87c90a573c26ddcbe1b5d9f523b57a89d76dc6df.tar.gz |
GDScript: Call setter on simple setter chain without getter
Fixes a bug where a member variable was being set directly before
calling the setter.
Diffstat (limited to 'modules/gdscript/tests/scripts/runtime')
-rw-r--r-- | modules/gdscript/tests/scripts/runtime/features/simple_setter_chain_call_setter.gd | 13 | ||||
-rw-r--r-- | modules/gdscript/tests/scripts/runtime/features/simple_setter_chain_call_setter.out | 4 |
2 files changed, 17 insertions, 0 deletions
diff --git a/modules/gdscript/tests/scripts/runtime/features/simple_setter_chain_call_setter.gd b/modules/gdscript/tests/scripts/runtime/features/simple_setter_chain_call_setter.gd new file mode 100644 index 0000000000..9e27a500bf --- /dev/null +++ b/modules/gdscript/tests/scripts/runtime/features/simple_setter_chain_call_setter.gd @@ -0,0 +1,13 @@ +# https://github.com/godotengine/godot/issues/85952 + +var vec: Vector2 = Vector2.ZERO: + set(new_vec): + prints("setting vec from", vec, "to", new_vec) + if new_vec == Vector2(1, 1): + vec = new_vec + +func test(): + vec.x = 2 + vec.y = 2 + + prints("vec is", vec) diff --git a/modules/gdscript/tests/scripts/runtime/features/simple_setter_chain_call_setter.out b/modules/gdscript/tests/scripts/runtime/features/simple_setter_chain_call_setter.out new file mode 100644 index 0000000000..31b3b3a3a8 --- /dev/null +++ b/modules/gdscript/tests/scripts/runtime/features/simple_setter_chain_call_setter.out @@ -0,0 +1,4 @@ +GDTEST_OK +setting vec from (0, 0) to (2, 0) +setting vec from (0, 0) to (0, 2) +vec is (0, 0) |