From 1a9e6cba2f4b2a7bf43e0b1b03ea27af66a45b1f Mon Sep 17 00:00:00 2001
From: Aaron Franke <arnfranke@yahoo.com>
Date: Wed, 16 Jun 2021 23:23:52 -0400
Subject: Re-add extents property to box shapes for compatibility

---
 scene/resources/rectangle_shape_2d.cpp | 20 ++++++++++++++++++++
 1 file changed, 20 insertions(+)

(limited to 'scene/resources/rectangle_shape_2d.cpp')

diff --git a/scene/resources/rectangle_shape_2d.cpp b/scene/resources/rectangle_shape_2d.cpp
index dc4c6dc2d7..17ce0b34ac 100644
--- a/scene/resources/rectangle_shape_2d.cpp
+++ b/scene/resources/rectangle_shape_2d.cpp
@@ -37,6 +37,26 @@ void RectangleShape2D::_update_shape() {
 	emit_changed();
 }
 
+#ifndef DISABLE_DEPRECATED
+bool RectangleShape2D::_set(const StringName &p_name, const Variant &p_value) {
+	if (p_name == "extents") { // Compatibility with Godot 3.x.
+		// Convert to `size`, twice as big.
+		set_size((Vector2)p_value * 2);
+		return true;
+	}
+	return false;
+}
+
+bool RectangleShape2D::_get(const StringName &p_name, Variant &r_property) const {
+	if (p_name == "extents") { // Compatibility with Godot 3.x.
+		// Convert to `extents`, half as big.
+		r_property = size / 2;
+		return true;
+	}
+	return false;
+}
+#endif // DISABLE_DEPRECATED
+
 void RectangleShape2D::set_size(const Vector2 &p_size) {
 	size = p_size;
 	_update_shape();
-- 
cgit v1.2.3