Skip to content

Commit dd61f2b

Browse files
committed
fixup! Add viewport value blocks
1 parent 439f9da commit dd61f2b

File tree

1 file changed

+7
-10
lines changed

1 file changed

+7
-10
lines changed

addons/block_code/ui/picker/categories/category_factory.gd

Lines changed: 7 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -470,27 +470,24 @@ static func get_general_blocks() -> Array[Block]:
470470
#endregion
471471
#region Graphics
472472

473-
var viewport_width = ProjectSettings.get_setting("display/window/size/viewport_width")
474-
var viewport_height = ProjectSettings.get_setting("display/window/size/viewport_height")
475-
476473
b = BLOCKS["parameter_block"].instantiate()
477-
b.variant_type = TYPE_INT
474+
b.variant_type = TYPE_FLOAT
478475
b.block_format = "Viewport Width"
479-
b.statement = "%s" % viewport_width
476+
b.statement = "(func (): var transform: Transform2D = get_viewport_transform(); var scale: Vector2 = transform.get_scale(); return -transform.origin.x / scale.x + get_viewport_rect().size.x / scale.x).call()"
480477
b.category = "Graphics | Viewport"
481478
block_list.append(b)
482479

483480
b = BLOCKS["parameter_block"].instantiate()
484-
b.variant_type = TYPE_INT
485-
b.block_format = "viewport height"
486-
b.statement = "get_viewport().get_visible_rect().size.y"
481+
b.variant_type = TYPE_FLOAT
482+
b.block_format = "Viewport Height"
483+
b.statement = "(func (): var transform: Transform2D = get_viewport_transform(); var scale: Vector2 = transform.get_scale(); return -transform.origin.y / scale.y + get_viewport_rect().size.y / scale.y).call()"
487484
b.category = "Graphics | Viewport"
488485
block_list.append(b)
489486

490487
b = BLOCKS["parameter_block"].instantiate()
491488
b.variant_type = TYPE_VECTOR2
492-
b.block_format = "viewport center"
493-
b.statement = "get_viewport().get_visible_rect().get_center()"
489+
b.block_format = "Viewport Center"
490+
b.statement = "(func (): var transform: Transform2D = get_viewport_transform(); var scale: Vector2 = transform.get_scale(); return -transform.origin / scale + get_viewport_rect().size / scale / 2).call()"
494491
b.category = "Graphics | Viewport"
495492
block_list.append(b)
496493

0 commit comments

Comments
 (0)