diff options
Diffstat (limited to 'modules')
-rw-r--r-- | modules/bullet/shape_bullet.cpp | 2 | ||||
-rw-r--r-- | modules/gdnative/gdnative/plane.cpp | 12 | ||||
-rw-r--r-- | modules/gdnative/gdnative_api.json | 4 | ||||
-rw-r--r-- | modules/gdnative/include/gdnative/plane.h | 4 | ||||
-rw-r--r-- | modules/gdnavigation/nav_map.cpp | 2 | ||||
-rw-r--r-- | modules/gdscript/gdscript_parser.cpp | 50 | ||||
-rw-r--r-- | modules/gdscript/gdscript_parser.h | 3 | ||||
-rw-r--r-- | modules/gridmap/grid_map_editor_plugin.cpp | 4 | ||||
-rw-r--r-- | modules/mono/glue/GodotSharp/GodotSharp/Core/Plane.cs | 46 | ||||
-rw-r--r-- | modules/mono/mono_gd/gd_mono_marshal.h | 8 |
10 files changed, 73 insertions, 62 deletions
diff --git a/modules/bullet/shape_bullet.cpp b/modules/bullet/shape_bullet.cpp index 8ac26a0fdb..e28683ba78 100644 --- a/modules/bullet/shape_bullet.cpp +++ b/modules/bullet/shape_bullet.cpp @@ -188,7 +188,7 @@ void PlaneShapeBullet::setup(const Plane &p_plane) { btCollisionShape *PlaneShapeBullet::create_bt_shape(const btVector3 &p_implicit_scale, real_t p_extra_edge) { btVector3 btPlaneNormal; G_TO_B(plane.normal, btPlaneNormal); - return prepare(PlaneShapeBullet::create_shape_plane(btPlaneNormal, plane.d)); + return prepare(PlaneShapeBullet::create_shape_plane(btPlaneNormal, plane.distance)); } /* Sphere */ diff --git a/modules/gdnative/gdnative/plane.cpp b/modules/gdnative/gdnative/plane.cpp index 17221fe081..054673d9cc 100644 --- a/modules/gdnative/gdnative/plane.cpp +++ b/modules/gdnative/gdnative/plane.cpp @@ -37,10 +37,10 @@ extern "C" { #endif -void GDAPI godot_plane_new_with_reals(godot_plane *r_dest, const godot_real p_a, const godot_real p_b, const godot_real p_c, const godot_real p_d) { +void GDAPI godot_plane_new_with_reals(godot_plane *r_dest, const godot_real p_a, const godot_real p_b, const godot_real p_c, const godot_real p_distance) { Plane *dest = (Plane *)r_dest; - *dest = Plane(p_a, p_b, p_c, p_d); + *dest = Plane(p_a, p_b, p_c, p_distance); } void GDAPI godot_plane_new_with_vectors(godot_plane *r_dest, const godot_vector3 *p_v1, const godot_vector3 *p_v2, const godot_vector3 *p_v3) { @@ -162,14 +162,14 @@ godot_vector3 GDAPI godot_plane_get_normal(const godot_plane *p_self) { return *v3; } -godot_real GDAPI godot_plane_get_d(const godot_plane *p_self) { +godot_real GDAPI godot_plane_get_distance(const godot_plane *p_self) { const Plane *self = (const Plane *)p_self; - return self->d; + return self->distance; } -void GDAPI godot_plane_set_d(godot_plane *p_self, const godot_real p_d) { +void GDAPI godot_plane_set_distance(godot_plane *p_self, const godot_real p_distance) { Plane *self = (Plane *)p_self; - self->d = p_d; + self->distance = p_distance; } #ifdef __cplusplus diff --git a/modules/gdnative/gdnative_api.json b/modules/gdnative/gdnative_api.json index d5ab62dc61..c4b8098fc6 100644 --- a/modules/gdnative/gdnative_api.json +++ b/modules/gdnative/gdnative_api.json @@ -3120,14 +3120,14 @@ ] }, { - "name": "godot_plane_get_d", + "name": "godot_plane_get_distance", "return_type": "godot_real", "arguments": [ ["const godot_plane *", "p_self"] ] }, { - "name": "godot_plane_set_d", + "name": "godot_plane_set_distance", "return_type": "void", "arguments": [ ["godot_plane *", "p_self"], diff --git a/modules/gdnative/include/gdnative/plane.h b/modules/gdnative/include/gdnative/plane.h index b759a8cc1a..6bd28d7363 100644 --- a/modules/gdnative/include/gdnative/plane.h +++ b/modules/gdnative/include/gdnative/plane.h @@ -92,9 +92,9 @@ void GDAPI godot_plane_set_normal(godot_plane *p_self, const godot_vector3 *p_no godot_vector3 GDAPI godot_plane_get_normal(const godot_plane *p_self); -godot_real GDAPI godot_plane_get_d(const godot_plane *p_self); +godot_real GDAPI godot_plane_get_distance(const godot_plane *p_self); -void GDAPI godot_plane_set_d(godot_plane *p_self, const godot_real p_d); +void GDAPI godot_plane_set_distance(godot_plane *p_self, const godot_real p_distance); #ifdef __cplusplus } diff --git a/modules/gdnavigation/nav_map.cpp b/modules/gdnavigation/nav_map.cpp index 7e6a3f7a26..9652938251 100644 --- a/modules/gdnavigation/nav_map.cpp +++ b/modules/gdnavigation/nav_map.cpp @@ -783,7 +783,7 @@ void NavMap::clip_path(const std::vector<gd::NavigationPoly> &p_navigation_polys if (cut_plane.normal == Vector3()) return; cut_plane.normal.normalize(); - cut_plane.d = cut_plane.normal.dot(from); + cut_plane.distance = cut_plane.normal.dot(from); while (from_poly != p_to_poly) { diff --git a/modules/gdscript/gdscript_parser.cpp b/modules/gdscript/gdscript_parser.cpp index c875846fcc..3280b1f8e3 100644 --- a/modules/gdscript/gdscript_parser.cpp +++ b/modules/gdscript/gdscript_parser.cpp @@ -72,6 +72,16 @@ bool GDScriptParser::_end_statement() { return false; } +void GDScriptParser::_set_end_statement_error(String p_name) { + String error_msg; + if (tokenizer->get_token() == GDScriptTokenizer::TK_IDENTIFIER) { + error_msg = vformat("Expected end of statement (\"%s\"), got %s (\"%s\") instead.", p_name, tokenizer->get_token_name(tokenizer->get_token()), tokenizer->get_token_identifier()); + } else { + error_msg = vformat("Expected end of statement (\"%s\"), got %s instead.", p_name, tokenizer->get_token_name(tokenizer->get_token())); + } + _set_error(error_msg); +} + bool GDScriptParser::_enter_indent_block(BlockNode *p_block) { if (tokenizer->get_token() != GDScriptTokenizer::TK_COLON) { @@ -2938,7 +2948,7 @@ void GDScriptParser::_parse_block(BlockNode *p_block, bool p_static) { lv->assign = assigned; if (!_end_statement()) { - _set_error("Expected end of statement (\"var\")."); + _set_end_statement_error("var"); return; } @@ -3172,9 +3182,9 @@ void GDScriptParser::_parse_block(BlockNode *p_block, bool p_static) { ConstantNode *cn = alloc_node<ConstantNode>(); switch (args.size()) { - case 1: cn->value = (int)constants[0]; break; - case 2: cn->value = Vector2(constants[0], constants[1]); break; - case 3: cn->value = Vector3(constants[0], constants[1], constants[2]); break; + case 1: cn->value = (int64_t)constants[0]; break; + case 2: cn->value = Vector2i(constants[0], constants[1]); break; + case 3: cn->value = Vector3i(constants[0], constants[1], constants[2]); break; } cn->datatype = _type_from_variant(cn->value); container = cn; @@ -3187,8 +3197,8 @@ void GDScriptParser::_parse_block(BlockNode *p_block, bool p_static) { switch (args.size()) { case 1: tn->vtype = Variant::INT; break; - case 2: tn->vtype = Variant::VECTOR2; break; - case 3: tn->vtype = Variant::VECTOR3; break; + case 2: tn->vtype = Variant::VECTOR2I; break; + case 3: tn->vtype = Variant::VECTOR3I; break; } for (int i = 0; i < args.size(); i++) { @@ -3249,7 +3259,7 @@ void GDScriptParser::_parse_block(BlockNode *p_block, bool p_static) { cf_continue->cf_type = ControlFlowNode::CF_CONTINUE; p_block->statements.push_back(cf_continue); if (!_end_statement()) { - _set_error("Expected end of statement (\"continue\")."); + _set_end_statement_error("continue"); return; } } break; @@ -3261,7 +3271,7 @@ void GDScriptParser::_parse_block(BlockNode *p_block, bool p_static) { cf_break->cf_type = ControlFlowNode::CF_BREAK; p_block->statements.push_back(cf_break); if (!_end_statement()) { - _set_error("Expected end of statement (\"break\")."); + _set_end_statement_error("break"); return; } } break; @@ -3290,7 +3300,7 @@ void GDScriptParser::_parse_block(BlockNode *p_block, bool p_static) { cf_return->arguments.push_back(retexpr); p_block->statements.push_back(cf_return); if (!_end_statement()) { - _set_error("Expected end of statement after return expression."); + _set_end_statement_error("return"); return; } } @@ -3379,7 +3389,7 @@ void GDScriptParser::_parse_block(BlockNode *p_block, bool p_static) { p_block->statements.push_back(an); if (!_end_statement()) { - _set_error("Expected end of statement after \"assert\".", assert_line); + _set_end_statement_error("assert"); return; } } break; @@ -3390,7 +3400,7 @@ void GDScriptParser::_parse_block(BlockNode *p_block, bool p_static) { p_block->statements.push_back(bn); if (!_end_statement()) { - _set_error("Expected end of statement after \"breakpoint\"."); + _set_end_statement_error("breakpoint"); return; } } break; @@ -3409,7 +3419,7 @@ void GDScriptParser::_parse_block(BlockNode *p_block, bool p_static) { if (tokenizer->get_token() == GDScriptTokenizer::TK_COLON && tokenizer->get_token(1) == GDScriptTokenizer::TK_OP_ASSIGN) { _set_error("Unexpected ':=', use '=' instead. Expected end of statement after expression."); } else { - _set_error(String() + "Expected end of statement after expression, got " + tokenizer->get_token_name(tokenizer->get_token()) + " instead"); + _set_error(vformat("Expected end of statement after expression, got %s instead.", tokenizer->get_token_name(tokenizer->get_token()))); } return; } @@ -3599,7 +3609,7 @@ void GDScriptParser::_parse_class(ClassNode *p_class) { if (error_set) return; if (!_end_statement()) { - _set_error("Expected end of statement after \"extends\"."); + _set_end_statement_error("extends"); return; } @@ -4104,7 +4114,7 @@ void GDScriptParser::_parse_class(ClassNode *p_class) { p_class->_signals.push_back(sig); if (!_end_statement()) { - _set_error("Expected end of statement (\"signal\")."); + _set_end_statement_error("signal"); return; } } break; @@ -5047,7 +5057,7 @@ void GDScriptParser::_parse_class(ClassNode *p_class) { p_class->variables.push_back(member); if (!_end_statement()) { - _set_error("Expected end of statement (\"continue\")."); + _set_end_statement_error("var"); return; } } break; @@ -5127,7 +5137,7 @@ void GDScriptParser::_parse_class(ClassNode *p_class) { p_class->constant_expressions.insert(const_id, constant); if (!_end_statement()) { - _set_error("Expected end of statement (constant).", line); + _set_end_statement_error("const"); return; } @@ -5281,7 +5291,7 @@ void GDScriptParser::_parse_class(ClassNode *p_class) { } if (!_end_statement()) { - _set_error("Expected end of statement (\"enum\")."); + _set_end_statement_error("enum"); return; } @@ -7810,7 +7820,7 @@ void GDScriptParser::_check_class_level_types(ClassNode *p_class) { ConstantNode *tgt_type = alloc_node<ConstantNode>(); tgt_type->line = v.line; - tgt_type->value = (int)v.data_type.builtin_type; + tgt_type->value = (int64_t)v.data_type.builtin_type; OperatorNode *convert_call = alloc_node<OperatorNode>(); convert_call->line = v.line; @@ -8187,7 +8197,7 @@ void GDScriptParser::_check_block_types(BlockNode *p_block) { ConstantNode *tgt_type = alloc_node<ConstantNode>(); tgt_type->line = lv->line; - tgt_type->value = (int)lv->datatype.builtin_type; + tgt_type->value = (int64_t)lv->datatype.builtin_type; tgt_type->datatype = _type_from_variant(tgt_type->value); OperatorNode *convert_call = alloc_node<OperatorNode>(); @@ -8792,7 +8802,7 @@ int GDScriptParser::get_completion_argument_index() { return completion_argument; } -int GDScriptParser::get_completion_identifier_is_function() { +bool GDScriptParser::get_completion_identifier_is_function() { return completion_ident_is_call; } diff --git a/modules/gdscript/gdscript_parser.h b/modules/gdscript/gdscript_parser.h index f254352423..b345a88744 100644 --- a/modules/gdscript/gdscript_parser.h +++ b/modules/gdscript/gdscript_parser.h @@ -624,6 +624,7 @@ private: void _parse_extends(ClassNode *p_class); void _parse_class(ClassNode *p_class); bool _end_statement(); + void _set_end_statement_error(String p_name); void _determine_inheritance(ClassNode *p_class, bool p_recursive = true); bool _parse_type(DataType &r_type, bool p_can_be_void = false); @@ -683,7 +684,7 @@ public: BlockNode *get_completion_block(); FunctionNode *get_completion_function(); int get_completion_argument_index(); - int get_completion_identifier_is_function(); + bool get_completion_identifier_is_function(); const List<String> &get_dependencies() const { return dependencies; } diff --git a/modules/gridmap/grid_map_editor_plugin.cpp b/modules/gridmap/grid_map_editor_plugin.cpp index 9abbac6a0b..b0c2c75c19 100644 --- a/modules/gridmap/grid_map_editor_plugin.cpp +++ b/modules/gridmap/grid_map_editor_plugin.cpp @@ -385,7 +385,7 @@ bool GridMapEditor::do_input_action(Camera3D *p_camera, const Point2 &p_point, b Plane p; p.normal[edit_axis] = 1.0; - p.d = edit_floor[edit_axis] * node->get_cell_size()[edit_axis]; + p.distance = edit_floor[edit_axis] * node->get_cell_size()[edit_axis]; Vector3 inters; if (!p.intersects_segment(from, from + normal * settings_pick_distance->get_value(), &inters)) @@ -1137,7 +1137,7 @@ void GridMapEditor::_notification(int p_what) { Plane p; p.normal[edit_axis] = 1.0; - p.d = edit_floor[edit_axis] * node->get_cell_size()[edit_axis]; + p.distance = edit_floor[edit_axis] * node->get_cell_size()[edit_axis]; p = node->get_transform().xform(p); // plane to snap Node3DEditorPlugin *sep = Object::cast_to<Node3DEditorPlugin>(editor->get_editor_plugin_screen()); diff --git a/modules/mono/glue/GodotSharp/GodotSharp/Core/Plane.cs b/modules/mono/glue/GodotSharp/GodotSharp/Core/Plane.cs index 885845e3a4..55a83642fd 100644 --- a/modules/mono/glue/GodotSharp/GodotSharp/Core/Plane.cs +++ b/modules/mono/glue/GodotSharp/GodotSharp/Core/Plane.cs @@ -56,29 +56,29 @@ namespace Godot } } - public real_t D { get; set; } + public real_t Distance { get; set; } public Vector3 Center { get { - return _normal * D; + return _normal * Distance; } } public real_t DistanceTo(Vector3 point) { - return _normal.Dot(point) - D; + return _normal.Dot(point) - Distance; } public Vector3 GetAnyPoint() { - return _normal * D; + return _normal * Distance; } public bool HasPoint(Vector3 point, real_t epsilon = Mathf.Epsilon) { - real_t dist = _normal.Dot(point) - D; + real_t dist = _normal.Dot(point) - Distance; return Mathf.Abs(dist) <= epsilon; } @@ -89,9 +89,9 @@ namespace Godot if (Mathf.IsZeroApprox(denom)) return null; - Vector3 result = b._normal.Cross(c._normal) * D + - c._normal.Cross(_normal) * b.D + - _normal.Cross(b._normal) * c.D; + Vector3 result = b._normal.Cross(c._normal) * Distance + + c._normal.Cross(_normal) * b.Distance + + _normal.Cross(b._normal) * c.Distance; return result / denom; } @@ -103,7 +103,7 @@ namespace Godot if (Mathf.IsZeroApprox(den)) return null; - real_t dist = (_normal.Dot(from) - D) / den; + real_t dist = (_normal.Dot(from) - Distance) / den; // This is a ray, before the emitting pos (from) does not exist if (dist > Mathf.Epsilon) @@ -120,7 +120,7 @@ namespace Godot if (Mathf.IsZeroApprox(den)) return null; - real_t dist = (_normal.Dot(begin) - D) / den; + real_t dist = (_normal.Dot(begin) - Distance) / den; // Only allow dist to be in the range of 0 to 1, with tolerance. if (dist < -Mathf.Epsilon || dist > 1.0f + Mathf.Epsilon) @@ -131,7 +131,7 @@ namespace Godot public bool IsPointOver(Vector3 point) { - return _normal.Dot(point) > D; + return _normal.Dot(point) > Distance; } public Plane Normalized() @@ -141,7 +141,7 @@ namespace Godot if (len == 0) return new Plane(0, 0, 0, 0); - return new Plane(_normal / len, D / len); + return new Plane(_normal / len, Distance / len); } public Vector3 Project(Vector3 point) @@ -159,27 +159,27 @@ namespace Godot public static Plane PlaneXY { get { return _planeXY; } } // Constructors - public Plane(real_t a, real_t b, real_t c, real_t d) + public Plane(real_t a, real_t b, real_t c, real_t distance) { _normal = new Vector3(a, b, c); - this.D = d; + this.Distance = distance; } - public Plane(Vector3 normal, real_t d) + public Plane(Vector3 normal, real_t distance) { this._normal = normal; - this.D = d; + this.Distance = distance; } public Plane(Vector3 v1, Vector3 v2, Vector3 v3) { _normal = (v1 - v3).Cross(v1 - v2); _normal.Normalize(); - D = _normal.Dot(v1); + Distance = _normal.Dot(v1); } public static Plane operator -(Plane plane) { - return new Plane(-plane._normal, -plane.D); + return new Plane(-plane._normal, -plane.Distance); } public static bool operator ==(Plane left, Plane right) @@ -204,17 +204,17 @@ namespace Godot public bool Equals(Plane other) { - return _normal == other._normal && D == other.D; + return _normal == other._normal && Distance == other.Distance; } public bool IsEqualApprox(Plane other) { - return _normal.IsEqualApprox(other._normal) && Mathf.IsEqualApprox(D, other.D); + return _normal.IsEqualApprox(other._normal) && Mathf.IsEqualApprox(Distance, other.Distance); } public override int GetHashCode() { - return _normal.GetHashCode() ^ D.GetHashCode(); + return _normal.GetHashCode() ^ Distance.GetHashCode(); } public override string ToString() @@ -222,7 +222,7 @@ namespace Godot return String.Format("({0}, {1})", new object[] { _normal.ToString(), - D.ToString() + Distance.ToString() }); } @@ -231,7 +231,7 @@ namespace Godot return String.Format("({0}, {1})", new object[] { _normal.ToString(format), - D.ToString(format) + Distance.ToString(format) }); } } diff --git a/modules/mono/mono_gd/gd_mono_marshal.h b/modules/mono/mono_gd/gd_mono_marshal.h index f2d887e6d6..fd645f1608 100644 --- a/modules/mono/mono_gd/gd_mono_marshal.h +++ b/modules/mono/mono_gd/gd_mono_marshal.h @@ -274,7 +274,7 @@ enum { MATCHES_Plane = (MATCHES_Vector3 && MATCHES_real_t && (sizeof(Plane) == (sizeof(Vector3) + sizeof(real_t))) && offsetof(Plane, normal) == 0 && - offsetof(Plane, d) == sizeof(Vector3)) + offsetof(Plane, distance) == sizeof(Vector3)) }; // In the future we may force this if we want to ref return these structs @@ -466,14 +466,14 @@ struct M_Color { struct M_Plane { M_Vector3 normal; - real_t d; + real_t distance; static _FORCE_INLINE_ Plane convert_to(const M_Plane &p_from) { - return Plane(M_Vector3::convert_to(p_from.normal), p_from.d); + return Plane(M_Vector3::convert_to(p_from.normal), p_from.distance); } static _FORCE_INLINE_ M_Plane convert_from(const Plane &p_from) { - M_Plane ret = { M_Vector3::convert_from(p_from.normal), p_from.d }; + M_Plane ret = { M_Vector3::convert_from(p_from.normal), p_from.distance }; return ret; } }; |