diff options
| author | Juan Linietsky | 2016-08-02 19:11:47 -0300 |
|---|---|---|
| committer | Juan Linietsky | 2016-08-02 19:11:47 -0300 |
| commit | 3d1d190dcd2993f87d5804de8a60e8bf5fc2cf49 (patch) | |
| tree | aa2c814b744ab970ae79931b419908ff7ebc850e /core/variant.cpp | |
| parent | ad313097ebcb2a0c02c956fdf74a6610c3f7c9a8 (diff) | |
| parent | cea949180688add09eb9e69f5e405f361dc96d40 (diff) | |
| download | godot-3d1d190dcd2993f87d5804de8a60e8bf5fc2cf49.tar.gz godot-3d1d190dcd2993f87d5804de8a60e8bf5fc2cf49.tar.zst godot-3d1d190dcd2993f87d5804de8a60e8bf5fc2cf49.zip | |
Merge branch 'master' of https://github.com/godotengine/godot
Diffstat (limited to '')
| -rw-r--r-- | core/variant.cpp | 40 |
1 files changed, 34 insertions, 6 deletions
diff --git a/core/variant.cpp b/core/variant.cpp index 31321dc0f..a78c07d81 100644 --- a/core/variant.cpp +++ b/core/variant.cpp @@ -1515,15 +1515,43 @@ Variant::operator String() const { case INT: return String::num(_data._int); case REAL: return String::num(_data._real); case STRING: return *reinterpret_cast<const String*>(_data._mem); - case VECTOR2: return operator Vector2(); - case RECT2: return operator Rect2(); - case MATRIX32: return operator Matrix32(); - case VECTOR3: return operator Vector3(); + case VECTOR2: return "("+operator Vector2()+")"; + case RECT2: return "("+operator Rect2()+")"; + case MATRIX32: { + + Matrix32 mat32 = operator Matrix32(); + return "("+Variant(mat32.elements[0]).operator String()+", "+Variant(mat32.elements[1]).operator String()+", "+Variant(mat32.elements[2]).operator String()+")"; + } break; + case VECTOR3: return "("+operator Vector3()+")"; case PLANE: return operator Plane(); //case QUAT: case _AABB: return operator AABB(); - case QUAT: return operator Quat(); - case MATRIX3: return operator Matrix3(); + case QUAT: return "("+operator Quat()+")"; + case MATRIX3: { + + Matrix3 mat3 = operator Matrix3(); + + String mtx("("); + for (int i=0;i<3;i++) { + + if (i!=0) + mtx+=", "; + + mtx+="("; + + for (int j=0;j<3;j++) { + + if (j!=0) + mtx+=", "; + + mtx+=Variant( mat3.elements[i][j] ).operator String(); + } + + mtx+=")"; + } + + return mtx+")"; + } break; case TRANSFORM: return operator Transform(); case NODE_PATH: return operator NodePath(); case INPUT_EVENT: return operator InputEvent(); |
