Skip to content

Commit 450bf1e

Browse files
committedApr 28, 2025
Allow @export_range to support numeric types
1 parent 67c96c8 commit 450bf1e

File tree

1 file changed

+35
-2
lines changed

1 file changed

+35
-2
lines changed
 

‎modules/gdscript/gdscript_parser.cpp

Lines changed: 35 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4545,8 +4545,41 @@ bool GDScriptParser::export_annotations(AnnotationNode *p_annotation, Node *p_ta
45454545
bool use_default_variable_type_check = true;
45464546

45474547
if (p_annotation->name == SNAME("@export_range")) {
4548-
if (export_type.builtin_type == Variant::INT) {
4549-
variable->export_info.type = Variant::INT;
4548+
use_default_variable_type_check = false;
4549+
4550+
switch (export_type.builtin_type) {
4551+
case Variant::INT:
4552+
case Variant::FLOAT:
4553+
case Variant::VECTOR2:
4554+
case Variant::VECTOR2I:
4555+
case Variant::RECT2:
4556+
case Variant::RECT2I:
4557+
case Variant::VECTOR3:
4558+
case Variant::VECTOR3I:
4559+
case Variant::VECTOR4:
4560+
case Variant::VECTOR4I:
4561+
case Variant::TRANSFORM2D:
4562+
case Variant::PLANE:
4563+
case Variant::QUATERNION:
4564+
case Variant::AABB:
4565+
case Variant::BASIS:
4566+
case Variant::TRANSFORM3D:
4567+
case Variant::PROJECTION:
4568+
case Variant::PACKED_BYTE_ARRAY:
4569+
case Variant::PACKED_INT32_ARRAY:
4570+
case Variant::PACKED_INT64_ARRAY:
4571+
case Variant::PACKED_FLOAT32_ARRAY:
4572+
case Variant::PACKED_FLOAT64_ARRAY:
4573+
case Variant::PACKED_VECTOR2_ARRAY:
4574+
case Variant::PACKED_VECTOR3_ARRAY:
4575+
case Variant::PACKED_VECTOR4_ARRAY: {
4576+
variable->export_info.type = export_type.builtin_type;
4577+
break;
4578+
}
4579+
default: {
4580+
push_error(vformat(R"("@export_range" annotation requires a numeric variable or array, but %s was given instead.)", variable->get_datatype().to_string()));
4581+
return false;
4582+
}
45504583
}
45514584
} else if (p_annotation->name == SNAME("@export_multiline")) {
45524585
use_default_variable_type_check = false;

0 commit comments

Comments
 (0)