summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/core/Array.cpp6
-rw-r--r--src/core/Basis.cpp5
-rw-r--r--src/core/Quat.cpp2
-rw-r--r--src/core/String.cpp9
-rw-r--r--src/core/Transform.cpp5
-rw-r--r--src/core/Transform2D.cpp4
-rw-r--r--src/core/Vector2.cpp9
-rw-r--r--src/core/Vector3.cpp11
8 files changed, 45 insertions, 6 deletions
diff --git a/src/core/Array.cpp b/src/core/Array.cpp
index 04b4a3d..dee4a5f 100644
--- a/src/core/Array.cpp
+++ b/src/core/Array.cpp
@@ -94,11 +94,11 @@ Variant Array::back() const {
return Variant(v);
}
-int Array::find(const Variant &what, const int from) {
+int Array::find(const Variant &what, const int from) const {
return godot::api->godot_array_find(&_godot_array, (godot_variant *)&what, from);
}
-int Array::find_last(const Variant &what) {
+int Array::find_last(const Variant &what) const {
return godot::api->godot_array_find_last(&_godot_array, (godot_variant *)&what);
}
@@ -148,7 +148,7 @@ void Array::resize(const int size) {
godot::api->godot_array_resize(&_godot_array, size);
}
-int Array::rfind(const Variant &what, const int from) {
+int Array::rfind(const Variant &what, const int from) const {
return godot::api->godot_array_rfind(&_godot_array, (godot_variant *)&what, from);
}
diff --git a/src/core/Basis.cpp b/src/core/Basis.cpp
index 368afa1..903566c 100644
--- a/src/core/Basis.cpp
+++ b/src/core/Basis.cpp
@@ -7,6 +7,11 @@
namespace godot {
+const Basis Basis::IDENTITY = Basis();
+const Basis Basis::FLIP_X = Basis(-1, 0, 0, 0, 1, 0, 0, 0, 1);
+const Basis Basis::FLIP_Y = Basis(1, 0, 0, 0, -1, 0, 0, 0, 1);
+const Basis Basis::FLIP_Z = Basis(1, 0, 0, 0, 1, 0, 0, 0, -1);
+
Basis::Basis(const Vector3 &row0, const Vector3 &row1, const Vector3 &row2) {
elements[0] = row0;
elements[1] = row1;
diff --git a/src/core/Quat.cpp b/src/core/Quat.cpp
index 00fa43d..dc179e2 100644
--- a/src/core/Quat.cpp
+++ b/src/core/Quat.cpp
@@ -7,6 +7,8 @@
namespace godot {
+const Quat Quat::IDENTITY = Quat();
+
// set_euler_xyz expects a vector containing the Euler angles in the format
// (ax,ay,az), where ax is the angle of rotation around x axis,
// and similar for other axes.
diff --git a/src/core/String.cpp b/src/core/String.cpp
index 552ebfe..9db8462 100644
--- a/src/core/String.cpp
+++ b/src/core/String.cpp
@@ -392,17 +392,20 @@ float String::similarity(String text) const {
return godot::api->godot_string_similarity(&_godot_string, &text._godot_string);
}
-PoolStringArray String::split(String divisor, bool allow_empty) const {
+// TODO Suport allow_empty
+PoolStringArray String::split(String divisor, bool /*allow_empty*/) const {
godot_array arr = godot::api->godot_string_split(&_godot_string, &divisor._godot_string);
return Array(arr);
}
-PoolIntArray String::split_ints(String divisor, bool allow_empty) const {
+// TODO Suport allow_empty
+PoolIntArray String::split_ints(String divisor, bool /*allow_empty*/) const {
godot_array arr = godot::api->godot_string_split_floats(&_godot_string, &divisor._godot_string);
return Array(arr);
}
-PoolRealArray String::split_floats(String divisor, bool allow_empty) const {
+// TODO Suport allow_empty
+PoolRealArray String::split_floats(String divisor, bool /*allow_empty*/) const {
// TODO The GDNative API returns godot_array, when according to the doc, it should have been godot_pool_real_array
godot_array arr = godot::api->godot_string_split_floats(&_godot_string, &divisor._godot_string);
Array wrapped_array(arr);
diff --git a/src/core/Transform.cpp b/src/core/Transform.cpp
index d32de8d..1eca983 100644
--- a/src/core/Transform.cpp
+++ b/src/core/Transform.cpp
@@ -9,6 +9,11 @@
namespace godot {
+const Transform Transform::IDENTITY = Transform();
+const Transform Transform::FLIP_X = Transform(-1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0);
+const Transform Transform::FLIP_Y = Transform(1, 0, 0, 0, -1, 0, 0, 0, 1, 0, 0, 0);
+const Transform Transform::FLIP_Z = Transform(1, 0, 0, 0, 1, 0, 0, 0, -1, 0, 0, 0);
+
Transform Transform::inverse_xform(const Transform &t) const {
Vector3 v = t.origin - origin;
diff --git a/src/core/Transform2D.cpp b/src/core/Transform2D.cpp
index acd6af1..6395c3d 100644
--- a/src/core/Transform2D.cpp
+++ b/src/core/Transform2D.cpp
@@ -7,6 +7,10 @@
namespace godot {
+const Transform2D Transform2D::IDENTITY;
+const Transform2D Transform2D::FLIP_X = Transform2D(-1, 0, 0, 1, 0, 0);
+const Transform2D Transform2D::FLIP_Y = Transform2D(1, 0, 0, -1, 0, 0);
+
Transform2D::Transform2D(real_t xx, real_t xy, real_t yx, real_t yy, real_t ox, real_t oy) {
elements[0][0] = xx;
diff --git a/src/core/Vector2.cpp b/src/core/Vector2.cpp
index 44dc001..eeeeb85 100644
--- a/src/core/Vector2.cpp
+++ b/src/core/Vector2.cpp
@@ -6,6 +6,15 @@
namespace godot {
+const Vector2 Vector2::ZERO;
+const Vector2 Vector2::ONE;
+const Vector2 Vector2::INF;
+
+const Vector2 Vector2::LEFT = Vector2(-1, 0);
+const Vector2 Vector2::RIGHT = Vector2(1, 0);
+const Vector2 Vector2::UP = Vector2(0, -1);
+const Vector2 Vector2::DOWN = Vector2(0, 1);
+
bool Vector2::operator==(const Vector2 &p_vec2) const {
return x == p_vec2.x && y == p_vec2.y;
}
diff --git a/src/core/Vector3.cpp b/src/core/Vector3.cpp
index 879de0b..f4db462 100644
--- a/src/core/Vector3.cpp
+++ b/src/core/Vector3.cpp
@@ -8,6 +8,17 @@
namespace godot {
+const Vector3 Vector3::ZERO = Vector3();
+const Vector3 Vector3::ONE = Vector3();
+const Vector3 Vector3::INF = Vector3(INFINITY, INFINITY, INFINITY);
+
+const Vector3 Vector3::LEFT = Vector3(-1, 0, 0);
+const Vector3 Vector3::RIGHT = Vector3(1, 0, 0);
+const Vector3 Vector3::UP = Vector3(0, 1, 0);
+const Vector3 Vector3::DOWN = Vector3(0, -1, 0);
+const Vector3 Vector3::FORWARD = Vector3(0, 0, -1);
+const Vector3 Vector3::BACK = Vector3(0, 0, 1);
+
bool Vector3::operator<(const Vector3 &p_v) const {
if (x == p_v.x) {
if (y == p_v.y)