Fix various typos

Found via ` codespell -q 3 -S ./thirdparty,*.po,./DONORS.md -L ackward,ang,ans,ba,beng,cas,childs,childrens,dof,doubleclick,expct,fave,findn,gird,hist,inout,leapyear,lod,nd,numer,ois,ony,paket,seeked,sinc,switchs,te,uint,varn`
Update editor/import/resource_importer_layered_texture.cpp

Co-authored-by: Raul Santos <raulsntos@gmail.com>
Update doc/classes/TileSetScenesCollectionSource.xml

Co-authored-by: Raul Santos <raulsntos@gmail.com>
Update scene/gui/graph_edit.cpp

Co-authored-by: Raul Santos <raulsntos@gmail.com>
Update scene/resources/animation.cpp

Co-authored-by: Raul Santos <raulsntos@gmail.com>
Update scene/resources/animation.cpp

Co-authored-by: Raul Santos <raulsntos@gmail.com>
Update scene/resources/animation.cpp

Co-authored-by: Raul Santos <raulsntos@gmail.com>
Update scene/gui/rich_text_label.cpp

Co-authored-by: Raul Santos <raulsntos@gmail.com>
Revert previously committed change
This commit is contained in:
luz paz 2022-01-02 01:03:58 -05:00
parent 9f058674ac
commit a124f1effe
53 changed files with 113 additions and 113 deletions

View File

@ -338,7 +338,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).
#### Rendering #### Rendering
- Some Environment settings such as depth of field have been moved to a CameraEffects resource which is assigned to individual Camera nodes. - Some Environment settings such as depth of field have been moved to a CameraEffects resource which is assigned to individual Camera nodes.
- [The ACES Fitted tonemapping algoirthm is now used in place of the old ACES algorithm.](https://github.com/godotengine/godot/pull/52476) - [The ACES Fitted tonemapping algorithm is now used in place of the old ACES algorithm.](https://github.com/godotengine/godot/pull/52476)
- The old non-fitted ACES tonemapping algorithm was removed. - The old non-fitted ACES tonemapping algorithm was removed.
- Quality settings have been moved from individual nodes and resources to the Project Settings for better centralization. - Quality settings have been moved from individual nodes and resources to the Project Settings for better centralization.
- Quality settings now have performance hints in their values' names, such as "Fast" or "Slow". - Quality settings now have performance hints in their values' names, such as "Fast" or "Slow".

View File

@ -2297,7 +2297,7 @@ void Engine::register_singleton(const StringName &p_name, Object *p_object) {
; ;
} }
void Engine::unregister_singleton(const StringName &p_name) { void Engine::unregister_singleton(const StringName &p_name) {
ERR_FAIL_COND_MSG(!has_singleton(p_name), "Attempt to remove unregisteres singleton: " + String(p_name)); ERR_FAIL_COND_MSG(!has_singleton(p_name), "Attempt to remove unregistered singleton: " + String(p_name));
ERR_FAIL_COND_MSG(!::Engine::get_singleton()->is_singleton_user_created(p_name), "Attempt to remove non-user created singleton: " + String(p_name)); ERR_FAIL_COND_MSG(!::Engine::get_singleton()->is_singleton_user_created(p_name), "Attempt to remove non-user created singleton: " + String(p_name));
::Engine::get_singleton()->remove_singleton(p_name); ::Engine::get_singleton()->remove_singleton(p_name);
} }

View File

@ -124,7 +124,7 @@ void MultiplayerReplicator::_process_default_sync(const ResourceUID::ID &p_id, c
ERR_FAIL_COND_MSG(p_packet_len < SYNC_CMD_OFFSET + 5, "Invalid spawn packet received"); ERR_FAIL_COND_MSG(p_packet_len < SYNC_CMD_OFFSET + 5, "Invalid spawn packet received");
ERR_FAIL_COND_MSG(!replications.has(p_id), "Invalid spawn ID received " + itos(p_id)); ERR_FAIL_COND_MSG(!replications.has(p_id), "Invalid spawn ID received " + itos(p_id));
SceneConfig &cfg = replications[p_id]; SceneConfig &cfg = replications[p_id];
ERR_FAIL_COND_MSG(cfg.mode != REPLICATION_MODE_SERVER || multiplayer->is_server(), "The defualt implementation only allows sync packets from the server"); ERR_FAIL_COND_MSG(cfg.mode != REPLICATION_MODE_SERVER || multiplayer->is_server(), "The default implementation only allows sync packets from the server");
const bool same_size = p_packet[0] & BYTE_OR_ZERO_FLAG; const bool same_size = p_packet[0] & BYTE_OR_ZERO_FLAG;
int ofs = SYNC_CMD_OFFSET; int ofs = SYNC_CMD_OFFSET;
int time = p_packet[ofs]; int time = p_packet[ofs];

View File

@ -38,7 +38,7 @@ class OptimizedTranslation : public Translation {
//this translation uses a sort of modified perfect hash algorithm //this translation uses a sort of modified perfect hash algorithm
//it requires hashing strings twice and then does a binary search, //it requires hashing strings twice and then does a binary search,
//so it's slower, but at the same time it has an extreemly high chance //so it's slower, but at the same time it has an extremely high chance
//of catching untranslated strings //of catching untranslated strings
//load/store friendly types //load/store friendly types

View File

@ -1256,13 +1256,13 @@
Aligns inline object (e.g. image, table) to the bottom of the text. Aligns inline object (e.g. image, table) to the bottom of the text.
</constant> </constant>
<constant name="INLINE_ALIGNMENT_TOP" value="0" enum="InlineAlignment"> <constant name="INLINE_ALIGNMENT_TOP" value="0" enum="InlineAlignment">
Aligns top of the inline object (e.g. image, table) to the top of the text. Equvalent to [code]INLINE_ALIGNMENT_TOP_TO | INLINE_ALIGNMENT_TO_TOP[/code]. Aligns top of the inline object (e.g. image, table) to the top of the text. Equivalent to [code]INLINE_ALIGNMENT_TOP_TO | INLINE_ALIGNMENT_TO_TOP[/code].
</constant> </constant>
<constant name="INLINE_ALIGNMENT_CENTER" value="5" enum="InlineAlignment"> <constant name="INLINE_ALIGNMENT_CENTER" value="5" enum="InlineAlignment">
Aligns center of the inline object (e.g. image, table) to the center of the text. Equvalent to [code]INLINE_ALIGNMENT_CENTER_TO | INLINE_ALIGNMENT_TO_CENTER[/code]. Aligns center of the inline object (e.g. image, table) to the center of the text. Equivalent to [code]INLINE_ALIGNMENT_CENTER_TO | INLINE_ALIGNMENT_TO_CENTER[/code].
</constant> </constant>
<constant name="INLINE_ALIGNMENT_BOTTOM" value="14" enum="InlineAlignment"> <constant name="INLINE_ALIGNMENT_BOTTOM" value="14" enum="InlineAlignment">
Aligns bottom of the inline object (e.g. image, table) to the bottom of the text. Equvalent to [code]INLINE_ALIGNMENT_BOTTOM_TO | INLINE_ALIGNMENT_TO_BOTTOM[/code]. Aligns bottom of the inline object (e.g. image, table) to the bottom of the text. Equivalent to [code]INLINE_ALIGNMENT_BOTTOM_TO | INLINE_ALIGNMENT_TO_BOTTOM[/code].
</constant> </constant>
<constant name="KEY_SPECIAL" value="16777216" enum="Key"> <constant name="KEY_SPECIAL" value="16777216" enum="Key">
Keycodes with this bit applied are non-printable. Keycodes with this bit applied are non-printable.

View File

@ -142,7 +142,7 @@
Top scroll limit in pixels. The camera stops moving when reaching this value, but [member offset] can push the view past the limit. Top scroll limit in pixels. The camera stops moving when reaching this value, but [member offset] can push the view past the limit.
</member> </member>
<member name="offset" type="Vector2" setter="set_offset" getter="get_offset" default="Vector2(0, 0)"> <member name="offset" type="Vector2" setter="set_offset" getter="get_offset" default="Vector2(0, 0)">
The camera's relative offset. Useful for looking around or camera shake animations. The offseted camera can go past the limits defined in [member limit_top], [member limit_bottom], [member limit_left] and [member limit_right]. The camera's relative offset. Useful for looking around or camera shake animations. The offsetted camera can go past the limits defined in [member limit_top], [member limit_bottom], [member limit_left] and [member limit_right].
</member> </member>
<member name="process_callback" type="int" setter="set_process_callback" getter="get_process_callback" enum="Camera2D.Camera2DProcessCallback" default="1"> <member name="process_callback" type="int" setter="set_process_callback" getter="get_process_callback" enum="Camera2D.Camera2DProcessCallback" default="1">
The camera's process callback. See [enum Camera2DProcessCallback]. The camera's process callback. See [enum Camera2DProcessCallback].

View File

@ -355,7 +355,7 @@
<method name="is_force_autohinter" qualifiers="const"> <method name="is_force_autohinter" qualifiers="const">
<return type="bool" /> <return type="bool" />
<description> <description>
Returns [code]true[/code] if auto-hinting is supported and preffered over font built-in hinting. Used by dynamic fonts only. Returns [code]true[/code] if auto-hinting is supported and preferred over font built-in hinting. Used by dynamic fonts only.
</description> </description>
</method> </method>
<method name="is_language_supported" qualifiers="const"> <method name="is_language_supported" qualifiers="const">
@ -519,7 +519,7 @@
<return type="void" /> <return type="void" />
<argument index="0" name="force_autohinter" type="bool" /> <argument index="0" name="force_autohinter" type="bool" />
<description> <description>
If set to [code]true[/code] auto-hinting is preffered over font built-in hinting. If set to [code]true[/code] auto-hinting is preferred over font built-in hinting.
</description> </description>
</method> </method>
<method name="set_glyph_advance"> <method name="set_glyph_advance">

View File

@ -106,8 +106,8 @@
<argument index="3" name="custom_send" type="Callable" /> <argument index="3" name="custom_send" type="Callable" />
<argument index="4" name="custom_receive" type="Callable" /> <argument index="4" name="custom_receive" type="Callable" />
<description> <description>
Configures the MultiplayerReplicator to sync instances of the [PackedScene] identified by [code]scene_id[/code] (see [method ResourceLoader.get_resource_uid]) for the purpose of network replication at the desired [code]interval[/code] (in milliseconds). The specified [code]properties[/code] will be part of the state sync. You can optionally specify a [code]custom_send[/code] and a [code]custom_receive[/code] to override the default behaviour and customize the syncronization proecess. Configures the MultiplayerReplicator to sync instances of the [PackedScene] identified by [code]scene_id[/code] (see [method ResourceLoader.get_resource_uid]) for the purpose of network replication at the desired [code]interval[/code] (in milliseconds). The specified [code]properties[/code] will be part of the state sync. You can optionally specify a [code]custom_send[/code] and a [code]custom_receive[/code] to override the default behaviour and customize the synchronization proecess.
Tip: You can use a custom property in the scene main script to return a customly optimized state representation (having a single property that returns a PackedByteArray is higly recommended when dealing with many instances). Tip: You can use a custom property in the scene main script to return a customly optimized state representation (having a single property that returns a PackedByteArray is highly recommended when dealing with many instances).
</description> </description>
</method> </method>
<method name="track"> <method name="track">

View File

@ -15,7 +15,7 @@
<return type="float" /> <return type="float" />
<argument index="0" name="param" type="int" enum="ParticlesMaterial.Parameter" /> <argument index="0" name="param" type="int" enum="ParticlesMaterial.Parameter" />
<description> <description>
Return the maximum value range for the given prameter. Return the maximum value range for the given parameter.
</description> </description>
</method> </method>
<method name="get_param_min" qualifiers="const"> <method name="get_param_min" qualifiers="const">
@ -199,7 +199,7 @@
Minimum initial velocity. Minimum initial velocity.
</member> </member>
<member name="lifetime_randomness" type="float" setter="set_lifetime_randomness" getter="get_lifetime_randomness" default="0.0"> <member name="lifetime_randomness" type="float" setter="set_lifetime_randomness" getter="get_lifetime_randomness" default="0.0">
Particle lifetime randomness ratio. The lifetime will be multipled by a value interpolated between [code]1.0[/code] and a random number less than one. For example a random ratio of [code]0.4[/code] would scale the original lifetime between [code]0.4-1.0[/code] of its original value. Particle lifetime randomness ratio. The lifetime will be multiplied by a value interpolated between [code]1.0[/code] and a random number less than one. For example a random ratio of [code]0.4[/code] would scale the original lifetime between [code]0.4-1.0[/code] of its original value.
</member> </member>
<member name="linear_accel_curve" type="Texture2D" setter="set_param_texture" getter="get_param_texture"> <member name="linear_accel_curve" type="Texture2D" setter="set_param_texture" getter="get_param_texture">
Each particle's linear acceleration will vary along this [CurveTexture]. Each particle's linear acceleration will vary along this [CurveTexture].

View File

@ -12,55 +12,55 @@
<method name="get_collider" qualifiers="const"> <method name="get_collider" qualifiers="const">
<return type="Object" /> <return type="Object" />
<description> <description>
Returns the colliding body's attached [Object], if a collision occured. Returns the colliding body's attached [Object], if a collision occurred.
</description> </description>
</method> </method>
<method name="get_collider_id" qualifiers="const"> <method name="get_collider_id" qualifiers="const">
<return type="int" /> <return type="int" />
<description> <description>
Returns the unique instance ID of the colliding body's attached [Object], if a collision occured. See [method Object.get_instance_id]. Returns the unique instance ID of the colliding body's attached [Object], if a collision occurred. See [method Object.get_instance_id].
</description> </description>
</method> </method>
<method name="get_collider_rid" qualifiers="const"> <method name="get_collider_rid" qualifiers="const">
<return type="RID" /> <return type="RID" />
<description> <description>
Returns the colliding body's [RID] used by the [PhysicsServer2D], if a collision occured. Returns the colliding body's [RID] used by the [PhysicsServer2D], if a collision occurred.
</description> </description>
</method> </method>
<method name="get_collider_shape" qualifiers="const"> <method name="get_collider_shape" qualifiers="const">
<return type="int" /> <return type="int" />
<description> <description>
Returns the colliding body's shape index, if a collision occured. See [CollisionObject2D]. Returns the colliding body's shape index, if a collision occurred. See [CollisionObject2D].
</description> </description>
</method> </method>
<method name="get_collider_velocity" qualifiers="const"> <method name="get_collider_velocity" qualifiers="const">
<return type="Vector2" /> <return type="Vector2" />
<description> <description>
Returns the colliding body's velocity, if a collision occured. Returns the colliding body's velocity, if a collision occurred.
</description> </description>
</method> </method>
<method name="get_collision_depth" qualifiers="const"> <method name="get_collision_depth" qualifiers="const">
<return type="float" /> <return type="float" />
<description> <description>
Returns the length of overlap along the collision normal, if a collision occured. Returns the length of overlap along the collision normal, if a collision occurred.
</description> </description>
</method> </method>
<method name="get_collision_local_shape" qualifiers="const"> <method name="get_collision_local_shape" qualifiers="const">
<return type="int" /> <return type="int" />
<description> <description>
Returns the moving object's colliding shape, if a collision occured. Returns the moving object's colliding shape, if a collision occurred.
</description> </description>
</method> </method>
<method name="get_collision_normal" qualifiers="const"> <method name="get_collision_normal" qualifiers="const">
<return type="Vector2" /> <return type="Vector2" />
<description> <description>
Returns the colliding body's shape's normal at the point of collision, if a collision occured. Returns the colliding body's shape's normal at the point of collision, if a collision occurred.
</description> </description>
</method> </method>
<method name="get_collision_point" qualifiers="const"> <method name="get_collision_point" qualifiers="const">
<return type="Vector2" /> <return type="Vector2" />
<description> <description>
Returns the point of collision in global coordinates, if a collision occured. Returns the point of collision in global coordinates, if a collision occurred.
</description> </description>
</method> </method>
<method name="get_collision_safe_fraction" qualifiers="const"> <method name="get_collision_safe_fraction" qualifiers="const">
@ -72,7 +72,7 @@
<method name="get_collision_unsafe_fraction" qualifiers="const"> <method name="get_collision_unsafe_fraction" qualifiers="const">
<return type="float" /> <return type="float" />
<description> <description>
Returns the minimum fraction of the motion needed to collide, if a collision occured, between [code]0[/code] and [code]1[/code]. Returns the minimum fraction of the motion needed to collide, if a collision occurred, between [code]0[/code] and [code]1[/code].
</description> </description>
</method> </method>
<method name="get_remainder" qualifiers="const"> <method name="get_remainder" qualifiers="const">

View File

@ -13,35 +13,35 @@
<return type="Object" /> <return type="Object" />
<argument index="0" name="collision_index" type="int" default="0" /> <argument index="0" name="collision_index" type="int" default="0" />
<description> <description>
Returns the colliding body's attached [Object] given a collision index (the deepest collision by default), if a collision occured. Returns the colliding body's attached [Object] given a collision index (the deepest collision by default), if a collision occurred.
</description> </description>
</method> </method>
<method name="get_collider_id" qualifiers="const"> <method name="get_collider_id" qualifiers="const">
<return type="int" /> <return type="int" />
<argument index="0" name="collision_index" type="int" default="0" /> <argument index="0" name="collision_index" type="int" default="0" />
<description> <description>
Returns the unique instance ID of the colliding body's attached [Object] given a collision index (the deepest collision by default), if a collision occured. See [method Object.get_instance_id]. Returns the unique instance ID of the colliding body's attached [Object] given a collision index (the deepest collision by default), if a collision occurred. See [method Object.get_instance_id].
</description> </description>
</method> </method>
<method name="get_collider_rid" qualifiers="const"> <method name="get_collider_rid" qualifiers="const">
<return type="RID" /> <return type="RID" />
<argument index="0" name="collision_index" type="int" default="0" /> <argument index="0" name="collision_index" type="int" default="0" />
<description> <description>
Returns the colliding body's [RID] used by the [PhysicsServer3D] given a collision index (the deepest collision by default), if a collision occured. Returns the colliding body's [RID] used by the [PhysicsServer3D] given a collision index (the deepest collision by default), if a collision occurred.
</description> </description>
</method> </method>
<method name="get_collider_shape" qualifiers="const"> <method name="get_collider_shape" qualifiers="const">
<return type="int" /> <return type="int" />
<argument index="0" name="collision_index" type="int" default="0" /> <argument index="0" name="collision_index" type="int" default="0" />
<description> <description>
Returns the colliding body's shape index given a collision index (the deepest collision by default), if a collision occured. See [CollisionObject3D]. Returns the colliding body's shape index given a collision index (the deepest collision by default), if a collision occurred. See [CollisionObject3D].
</description> </description>
</method> </method>
<method name="get_collider_velocity" qualifiers="const"> <method name="get_collider_velocity" qualifiers="const">
<return type="Vector3" /> <return type="Vector3" />
<argument index="0" name="collision_index" type="int" default="0" /> <argument index="0" name="collision_index" type="int" default="0" />
<description> <description>
Returns the colliding body's velocity given a collision index (the deepest collision by default), if a collision occured. Returns the colliding body's velocity given a collision index (the deepest collision by default), if a collision occurred.
</description> </description>
</method> </method>
<method name="get_collision_count" qualifiers="const"> <method name="get_collision_count" qualifiers="const">
@ -54,28 +54,28 @@
<return type="float" /> <return type="float" />
<argument index="0" name="collision_index" type="int" default="0" /> <argument index="0" name="collision_index" type="int" default="0" />
<description> <description>
Returns the length of overlap along the collision normal given a collision index (the deepest collision by default), if a collision occured. Returns the length of overlap along the collision normal given a collision index (the deepest collision by default), if a collision occurred.
</description> </description>
</method> </method>
<method name="get_collision_local_shape" qualifiers="const"> <method name="get_collision_local_shape" qualifiers="const">
<return type="int" /> <return type="int" />
<argument index="0" name="collision_index" type="int" default="0" /> <argument index="0" name="collision_index" type="int" default="0" />
<description> <description>
Returns the moving object's colliding shape given a collision index (the deepest collision by default), if a collision occured. Returns the moving object's colliding shape given a collision index (the deepest collision by default), if a collision occurred.
</description> </description>
</method> </method>
<method name="get_collision_normal" qualifiers="const"> <method name="get_collision_normal" qualifiers="const">
<return type="Vector3" /> <return type="Vector3" />
<argument index="0" name="collision_index" type="int" default="0" /> <argument index="0" name="collision_index" type="int" default="0" />
<description> <description>
Returns the colliding body's shape's normal at the point of collision given a collision index (the deepest collision by default), if a collision occured. Returns the colliding body's shape's normal at the point of collision given a collision index (the deepest collision by default), if a collision occurred.
</description> </description>
</method> </method>
<method name="get_collision_point" qualifiers="const"> <method name="get_collision_point" qualifiers="const">
<return type="Vector3" /> <return type="Vector3" />
<argument index="0" name="collision_index" type="int" default="0" /> <argument index="0" name="collision_index" type="int" default="0" />
<description> <description>
Returns the point of collision in global coordinates given a collision index (the deepest collision by default), if a collision occured. Returns the point of collision in global coordinates given a collision index (the deepest collision by default), if a collision occurred.
</description> </description>
</method> </method>
<method name="get_collision_safe_fraction" qualifiers="const"> <method name="get_collision_safe_fraction" qualifiers="const">
@ -87,7 +87,7 @@
<method name="get_collision_unsafe_fraction" qualifiers="const"> <method name="get_collision_unsafe_fraction" qualifiers="const">
<return type="float" /> <return type="float" />
<description> <description>
Returns the minimum fraction of the motion needed to collide, if a collision occured, between [code]0[/code] and [code]1[/code]. Returns the minimum fraction of the motion needed to collide, if a collision occurred, between [code]0[/code] and [code]1[/code].
</description> </description>
</method> </method>
<method name="get_remainder" qualifiers="const"> <method name="get_remainder" qualifiers="const">

View File

@ -297,7 +297,7 @@
<argument index="3" name="persistent" type="bool" default="false" /> <argument index="3" name="persistent" type="bool" default="false" />
<description> <description>
Sets the global pose transform, [code]pose[/code], for the bone at [code]bone_idx[/code]. Sets the global pose transform, [code]pose[/code], for the bone at [code]bone_idx[/code].
[code]amount[/code] is the interpolation strengh that will be used when applying the pose, and [code]persistent[/code] determines if the applied pose will remain. [code]amount[/code] is the interpolation strength that will be used when applying the pose, and [code]persistent[/code] determines if the applied pose will remain.
[b]Note:[/b] The pose transform needs to be a global pose! Use [method world_transform_to_global_pose] to convert a world transform, like one you can get from a [Node3D], to a global pose. [b]Note:[/b] The pose transform needs to be a global pose! Use [method world_transform_to_global_pose] to convert a world transform, like one you can get from a [Node3D], to a global pose.
</description> </description>
</method> </method>
@ -309,7 +309,7 @@
<argument index="3" name="persistent" type="bool" default="false" /> <argument index="3" name="persistent" type="bool" default="false" />
<description> <description>
Sets the local pose transform, [code]pose[/code], for the bone at [code]bone_idx[/code]. Sets the local pose transform, [code]pose[/code], for the bone at [code]bone_idx[/code].
[code]amount[/code] is the interpolation strengh that will be used when applying the pose, and [code]persistent[/code] determines if the applied pose will remain. [code]amount[/code] is the interpolation strength that will be used when applying the pose, and [code]persistent[/code] determines if the applied pose will remain.
[b]Note:[/b] The pose transform needs to be a local pose! Use [method global_pose_to_local_pose] to convert a global pose to a local pose. [b]Note:[/b] The pose transform needs to be a local pose! Use [method global_pose_to_local_pose] to convert a global pose to a local pose.
</description> </description>
</method> </method>

View File

@ -60,7 +60,7 @@
When true, the modification's [method _execute] function will be called by the [SkeletonModificationStack3D]. When true, the modification's [method _execute] function will be called by the [SkeletonModificationStack3D].
</member> </member>
<member name="execution_mode" type="int" setter="set_execution_mode" getter="get_execution_mode" default="0"> <member name="execution_mode" type="int" setter="set_execution_mode" getter="get_execution_mode" default="0">
The execution mode for the modification. This tells the modification stack when to execute the modification. Some modifications have settings that are only availible in certain execution modes. The execution mode for the modification. This tells the modification stack when to execute the modification. Some modifications have settings that are only available in certain execution modes.
</member> </member>
</members> </members>
</class> </class>

View File

@ -4,7 +4,7 @@
A modification that uses CCDIK to manipulate a series of bones to reach a target. A modification that uses CCDIK to manipulate a series of bones to reach a target.
</brief_description> </brief_description>
<description> <description>
This [SkeletonModification3D] uses an algorithm called Cyclic Coordinate Descent Inverse Kinematics, or CCDIK, to maniuplate a chain of bones in a Skeleton so it reaches a defined target. This [SkeletonModification3D] uses an algorithm called Cyclic Coordinate Descent Inverse Kinematics, or CCDIK, to manipulate a chain of bones in a Skeleton so it reaches a defined target.
CCDIK works by rotating a set of bones, typically called a "bone chain", on a single axis. Each bone is rotated to face the target from the tip (by default), which over a chain of bones allow it to rotate properly to reach the target. Because the bones only rotate on a single axis, CCDIK [i]can[/i] look more robotic than other IK solvers. CCDIK works by rotating a set of bones, typically called a "bone chain", on a single axis. Each bone is rotated to face the target from the tip (by default), which over a chain of bones allow it to rotate properly to reach the target. Because the bones only rotate on a single axis, CCDIK [i]can[/i] look more robotic than other IK solvers.
[b]Note:[/b] The CCDIK modifier has [code]ccdik_joints[/code], which are the data objects that hold the data for each joint in the CCDIK chain. This is different from a bone! CCDIK joints hold the data needed for each bone in the bone chain used by CCDIK. [b]Note:[/b] The CCDIK modifier has [code]ccdik_joints[/code], which are the data objects that hold the data for each joint in the CCDIK chain. This is different from a bone! CCDIK joints hold the data needed for each bone in the bone chain used by CCDIK.
CCDIK also fully supports angle constraints, allowing for more control over how a solution is met. CCDIK also fully supports angle constraints, allowing for more control over how a solution is met.

View File

@ -24,7 +24,7 @@
<return type="bool" /> <return type="bool" />
<argument index="0" name="joint_idx" type="int" /> <argument index="0" name="joint_idx" type="int" />
<description> <description>
Returns a boolean that indiciates whether this modification will attempt to autocalculate the length of the bone assigned to the FABRIK joint at [code]joint_idx[/code]. Returns a boolean that indicates whether this modification will attempt to autocalculate the length of the bone assigned to the FABRIK joint at [code]joint_idx[/code].
</description> </description>
</method> </method>
<method name="get_fabrik_joint_bone_index" qualifiers="const"> <method name="get_fabrik_joint_bone_index" qualifiers="const">
@ -66,7 +66,7 @@
<return type="bool" /> <return type="bool" />
<argument index="0" name="joint_idx" type="int" /> <argument index="0" name="joint_idx" type="int" />
<description> <description>
Returns a boolean indiciating whether the FABRIK joint uses the target's [Basis] for its rotation. Returns a boolean indicating whether the FABRIK joint uses the target's [Basis] for its rotation.
[b]Note:[/b] This option is only available for the final bone in the FABRIK chain, with this setting being ignored for all other bones. [b]Note:[/b] This option is only available for the final bone in the FABRIK chain, with this setting being ignored for all other bones.
</description> </description>
</method> </method>

View File

@ -56,7 +56,7 @@
<return type="bool" /> <return type="bool" />
<argument index="0" name="joint_idx" type="int" /> <argument index="0" name="joint_idx" type="int" />
<description> <description>
Returns a boolean that indiciates whether the joint at [code]joint_idx[/code] is overriding the default jiggle joint data defined in the modification. Returns a boolean that indicates whether the joint at [code]joint_idx[/code] is overriding the default jiggle joint data defined in the modification.
</description> </description>
</method> </method>
<method name="get_jiggle_joint_roll" qualifiers="const"> <method name="get_jiggle_joint_roll" qualifiers="const">
@ -77,7 +77,7 @@
<return type="bool" /> <return type="bool" />
<argument index="0" name="joint_idx" type="int" /> <argument index="0" name="joint_idx" type="int" />
<description> <description>
Returns a boolean that indiciates whether the joint at [code]joint_idx[/code] is using gravity or not. Returns a boolean that indicates whether the joint at [code]joint_idx[/code] is using gravity or not.
</description> </description>
</method> </method>
<method name="get_use_colliders" qualifiers="const"> <method name="get_use_colliders" qualifiers="const">

View File

@ -4,7 +4,7 @@
A modification that moves two bones to reach the target. A modification that moves two bones to reach the target.
</brief_description> </brief_description>
<description> <description>
This [SkeletonModification3D] uses an algorithm typically called TwoBoneIK. This algorithm works by leveraging the law of cosigns and the lengths of the bones to figure out what rotation the bones currently have, and what rotation they need to make a complete triangle, where the first bone, the second bone, and the target form the three vertices of the triangle. Because the algorithm works by making a triangle, it can only opperate on two bones. This [SkeletonModification3D] uses an algorithm typically called TwoBoneIK. This algorithm works by leveraging the law of cosigns and the lengths of the bones to figure out what rotation the bones currently have, and what rotation they need to make a complete triangle, where the first bone, the second bone, and the target form the three vertices of the triangle. Because the algorithm works by making a triangle, it can only operate on two bones.
TwoBoneIK is great for arms, legs, and really any joints that can be represented by just two bones that bend to reach a target. This solver is more lightweight than [SkeletonModification3DFABRIK], but gives similar, natural looking results. TwoBoneIK is great for arms, legs, and really any joints that can be represented by just two bones that bend to reach a target. This solver is more lightweight than [SkeletonModification3DFABRIK], but gives similar, natural looking results.
A [Node3D]-based node can be used to define the pole, or bend direction, allowing control over which direction the joint takes when bending to reach the target when the target is within reach. A [Node3D]-based node can be used to define the pole, or bend direction, allowing control over which direction the joint takes when bending to reach the target when the target is within reach.
</description> </description>

View File

@ -43,7 +43,7 @@
<method name="get_is_setup" qualifiers="const"> <method name="get_is_setup" qualifiers="const">
<return type="bool" /> <return type="bool" />
<description> <description>
Returns a boolean that indiciates whether the modification stack is setup and can execute. Returns a boolean that indicates whether the modification stack is setup and can execute.
</description> </description>
</method> </method>
<method name="get_modification" qualifiers="const"> <method name="get_modification" qualifiers="const">

View File

@ -396,7 +396,7 @@
<return type="bool" /> <return type="bool" />
<argument index="0" name="font_rid" type="RID" /> <argument index="0" name="font_rid" type="RID" />
<description> <description>
Returns [code]true[/code] if auto-hinting is supported and preffered over font built-in hinting. Used by dynamic fonts only. Returns [code]true[/code] if auto-hinting is supported and preferred over font built-in hinting. Used by dynamic fonts only.
</description> </description>
</method> </method>
<method name="font_is_language_supported" qualifiers="const"> <method name="font_is_language_supported" qualifiers="const">
@ -541,7 +541,7 @@
<argument index="0" name="font_rid" type="RID" /> <argument index="0" name="font_rid" type="RID" />
<argument index="1" name="force_autohinter" type="bool" /> <argument index="1" name="force_autohinter" type="bool" />
<description> <description>
If set to [code]true[/code] auto-hinting is preffered over font built-in hinting. If set to [code]true[/code] auto-hinting is preferred over font built-in hinting.
</description> </description>
</method> </method>
<method name="font_set_global_oversampling"> <method name="font_set_global_oversampling">
@ -549,7 +549,7 @@
<argument index="0" name="oversampling" type="float" /> <argument index="0" name="oversampling" type="float" />
<description> <description>
Sets oversampling factor, shared by all font in the TextServer. Sets oversampling factor, shared by all font in the TextServer.
[b]Note:[/b] This value can be automaticaly changed by display server. [b]Note:[/b] This value can be automatically changed by display server.
</description> </description>
</method> </method>
<method name="font_set_glyph_advance"> <method name="font_set_glyph_advance">
@ -1384,7 +1384,7 @@
<constant name="OVERRUN_JUSTIFICATION_AWARE" value="16" enum="TextOverrunFlag"> <constant name="OVERRUN_JUSTIFICATION_AWARE" value="16" enum="TextOverrunFlag">
</constant> </constant>
<constant name="GRAPHEME_IS_VALID" value="1" enum="GraphemeFlag"> <constant name="GRAPHEME_IS_VALID" value="1" enum="GraphemeFlag">
Grapheme is supprted by the font, and can be drawn. Grapheme is supported by the font, and can be drawn.
</constant> </constant>
<constant name="GRAPHEME_IS_RTL" value="2" enum="GraphemeFlag"> <constant name="GRAPHEME_IS_RTL" value="2" enum="GraphemeFlag">
Grapheme is part of right-to-left or bottom-to-top run. Grapheme is part of right-to-left or bottom-to-top run.

View File

@ -396,7 +396,7 @@
<return type="bool" /> <return type="bool" />
<argument index="0" name="font_rid" type="RID" /> <argument index="0" name="font_rid" type="RID" />
<description> <description>
Returns [code]true[/code] if auto-hinting is supported and preffered over font built-in hinting. Used by dynamic fonts only. Returns [code]true[/code] if auto-hinting is supported and preferred over font built-in hinting. Used by dynamic fonts only.
</description> </description>
</method> </method>
<method name="_font_is_language_supported" qualifiers="virtual const"> <method name="_font_is_language_supported" qualifiers="virtual const">
@ -542,7 +542,7 @@
<argument index="0" name="font_rid" type="RID" /> <argument index="0" name="font_rid" type="RID" />
<argument index="1" name="fixed_size" type="int" /> <argument index="1" name="fixed_size" type="int" />
<description> <description>
If set to [code]true[/code] auto-hinting is preffered over font built-in hinting. If set to [code]true[/code] auto-hinting is preferred over font built-in hinting.
</description> </description>
</method> </method>
<method name="_font_set_force_autohinter" qualifiers="virtual"> <method name="_font_set_force_autohinter" qualifiers="virtual">
@ -557,7 +557,7 @@
<argument index="0" name="oversampling" type="float" /> <argument index="0" name="oversampling" type="float" />
<description> <description>
Sets oversampling factor, shared by all font in the TextServer. Sets oversampling factor, shared by all font in the TextServer.
[b]Note:[/b] This value can be automaticaly changed by display server. [b]Note:[/b] This value can be automatically changed by display server.
</description> </description>
</method> </method>
<method name="_font_set_glyph_advance" qualifiers="virtual"> <method name="_font_set_glyph_advance" qualifiers="virtual">

View File

@ -69,7 +69,7 @@
<description> <description>
Triggers an update of the TileMap. If [code]layer[/code] is provided, only updates the given layer. Triggers an update of the TileMap. If [code]layer[/code] is provided, only updates the given layer.
[b]Note:[/b] The TileMap node updates automatically when one of its properties is modified. A manual update is only needed if runtime modifications (implemented in [method _tile_data_runtime_update]) need to be applied. [b]Note:[/b] The TileMap node updates automatically when one of its properties is modified. A manual update is only needed if runtime modifications (implemented in [method _tile_data_runtime_update]) need to be applied.
[b]Warning:[/b] Updating the TileMap is a performance demanding task. Limit occurences of those updates to the minimum and limit the amount tiles they impact (by segregating tiles updated often to a dedicated layer for example). [b]Warning:[/b] Updating the TileMap is a performance demanding task. Limit occurrences of those updates to the minimum and limit the amount tiles they impact (by segregating tiles updated often to a dedicated layer for example).
</description> </description>
</method> </method>
<method name="get_cell_alternative_tile" qualifiers="const"> <method name="get_cell_alternative_tile" qualifiers="const">
@ -103,7 +103,7 @@
<return type="Vector2i" /> <return type="Vector2i" />
<argument index="0" name="body" type="RID" /> <argument index="0" name="body" type="RID" />
<description> <description>
Returns the coodinates of the tile for given physics body RID. Such RID can be retrieved from [method KinematicCollision2D.get_collider_rid], when colliding with a tile. Returns the coordinates of the tile for given physics body RID. Such RID can be retrieved from [method KinematicCollision2D.get_collider_rid], when colliding with a tile.
</description> </description>
</method> </method>
<method name="get_layer_modulate" qualifiers="const"> <method name="get_layer_modulate" qualifiers="const">
@ -144,7 +144,7 @@
<argument index="0" name="coords" type="Vector2i" /> <argument index="0" name="coords" type="Vector2i" />
<argument index="1" name="neighbor" type="int" enum="TileSet.CellNeighbor" /> <argument index="1" name="neighbor" type="int" enum="TileSet.CellNeighbor" />
<description> <description>
Returns the neighboring cell to the one at coordinates [code]coords[/code], indentified by the [code]neighbor[/code] direction. This method takes into account the different layouts a TileMap can take. Returns the neighboring cell to the one at coordinates [code]coords[/code], identified by the [code]neighbor[/code] direction. This method takes into account the different layouts a TileMap can take.
</description> </description>
</method> </method>
<method name="get_pattern"> <method name="get_pattern">
@ -195,7 +195,7 @@
<argument index="1" name="coords_in_pattern" type="Vector2i" /> <argument index="1" name="coords_in_pattern" type="Vector2i" />
<argument index="2" name="pattern" type="TileMapPattern" /> <argument index="2" name="pattern" type="TileMapPattern" />
<description> <description>
Returns for the given coodinate [code]coords_in_pattern[/code] in a [TileMapPattern] the corresponding cell coordinates if the pattern was pasted at the [code]position_in_tilemap[/code] coordinates (see [method set_pattern]). This mapping is required as in half-offset tile shapes, the mapping might not work by calculating [code]position_in_tile_map + coords_in_pattern[/code] Returns for the given coordinate [code]coords_in_pattern[/code] in a [TileMapPattern] the corresponding cell coordinates if the pattern was pasted at the [code]position_in_tilemap[/code] coordinates (see [method set_pattern]). This mapping is required as in half-offset tile shapes, the mapping might not work by calculating [code]position_in_tile_map + coords_in_pattern[/code]
</description> </description>
</method> </method>
<method name="map_to_world" qualifiers="const"> <method name="map_to_world" qualifiers="const">
@ -229,7 +229,7 @@
<argument index="4" name="alternative_tile" type="int" default="-1" /> <argument index="4" name="alternative_tile" type="int" default="-1" />
<description> <description>
Sets the tile indentifiers for the cell on layer [code]layer[/code] at coordinates [code]coords[/code]. Each tile of the [TileSet] is identified using three parts: Sets the tile indentifiers for the cell on layer [code]layer[/code] at coordinates [code]coords[/code]. Each tile of the [TileSet] is identified using three parts:
- The source indentifier [code]source_id[/code] identifies a [TileSetSource] identifier. See [method TileSet.set_source_id], - The source identifier [code]source_id[/code] identifies a [TileSetSource] identifier. See [method TileSet.set_source_id],
- The atlas coordinates identifier [code]atlas_coords[/code] identifies a tile coordinates in the atlas (if the source is a [TileSetAtlasSource]. For [TileSetScenesCollectionSource] it should be 0), - The atlas coordinates identifier [code]atlas_coords[/code] identifies a tile coordinates in the atlas (if the source is a [TileSetAtlasSource]. For [TileSetScenesCollectionSource] it should be 0),
- The alternative tile identifier [code]alternative_tile[/code] identifies a tile alternative the source is a [TileSetAtlasSource], and the scene for a [TileSetScenesCollectionSource]. - The alternative tile identifier [code]alternative_tile[/code] identifies a tile alternative the source is a [TileSetAtlasSource], and the scene for a [TileSetScenesCollectionSource].
</description> </description>

View File

@ -51,7 +51,7 @@
<argument index="0" name="pattern" type="TileMapPattern" /> <argument index="0" name="pattern" type="TileMapPattern" />
<argument index="1" name="index" type="int" default="-1" /> <argument index="1" name="index" type="int" default="-1" />
<description> <description>
Adds a [TileMapPattern] to be stored in the TileSet resouce. If provided, insert it at the given [code]index[/code]. Adds a [TileMapPattern] to be stored in the TileSet resource. If provided, insert it at the given [code]index[/code].
</description> </description>
</method> </method>
<method name="add_physics_layer"> <method name="add_physics_layer">
@ -582,7 +582,7 @@
Diamond tile shape (for isometric look). Diamond tile shape (for isometric look).
</constant> </constant>
<constant name="TILE_SHAPE_HALF_OFFSET_SQUARE" value="2" enum="TileShape"> <constant name="TILE_SHAPE_HALF_OFFSET_SQUARE" value="2" enum="TileShape">
Rectangular tile shape with one row/colum out of two offset by half a tile. Rectangular tile shape with one row/column out of two offset by half a tile.
</constant> </constant>
<constant name="TILE_SHAPE_HEXAGON" value="3" enum="TileShape"> <constant name="TILE_SHAPE_HEXAGON" value="3" enum="TileShape">
Hexagonal tile shape. Hexagonal tile shape.

View File

@ -4,8 +4,8 @@
Exposes a set of scenes as tiles for a [TileSet] resource. Exposes a set of scenes as tiles for a [TileSet] resource.
</brief_description> </brief_description>
<description> <description>
When placed on a [TileMap], tiles from [TileSetScenesCollectionSource] will automatically instanciate an assiciated scene at the cell's position in the TileMap. When placed on a [TileMap], tiles from [TileSetScenesCollectionSource] will automatically instantiate an associated scene at the cell's position in the TileMap.
Scenes are instanciated as children of the [TileMap] when it enters the tree. If you add/remove a scene tile in the [TileMap] that is already inside the tree, the [TileMap] will automatically instanciate/free the scene accordingly. Scenes are instantiated as children of the [TileMap] when it enters the tree. If you add/remove a scene tile in the [TileMap] that is already inside the tree, the [TileMap] will automatically instantiate/free the scene accordingly.
</description> </description>
<tutorials> <tutorials>
</tutorials> </tutorials>
@ -87,7 +87,7 @@
<argument index="0" name="id" type="int" /> <argument index="0" name="id" type="int" />
<argument index="1" name="packed_scene" type="PackedScene" /> <argument index="1" name="packed_scene" type="PackedScene" />
<description> <description>
Assigns a [PackedScene] resource to the scene tile with id [code]id[/code]. This will fail if the scene does not extend CanvasItem, as positionning properties are needed to place the scene on the TileMap. Assigns a [PackedScene] resource to the scene tile with id [code]id[/code]. This will fail if the scene does not extend CanvasItem, as positioning properties are needed to place the scene on the TileMap.
</description> </description>
</method> </method>
</methods> </methods>

View File

@ -10279,7 +10279,7 @@ msgstr ""
#: doc/classes/BakedLightmap.xml #: doc/classes/BakedLightmap.xml
msgid "" msgid ""
"Determines the amount of samples per texel used in indrect light baking. The " "Determines the amount of samples per texel used in indirect light baking. The "
"amount of samples for each quality level can be configured in the project " "amount of samples for each quality level can be configured in the project "
"settings." "settings."
msgstr "" msgstr ""
@ -22770,7 +22770,7 @@ msgstr ""
#: doc/classes/Environment.xml #: doc/classes/Environment.xml
msgid "" msgid ""
"Academy Color Encoding System tonemapper operator. Performs an aproximation " "Academy Color Encoding System tonemapper operator. Performs an approximation "
"of the ACES tonemapping curve." "of the ACES tonemapping curve."
msgstr "" msgstr ""
@ -42154,14 +42154,14 @@ msgid ""
"This method is potentially slower than [code]decompress[/code], as it may " "This method is potentially slower than [code]decompress[/code], as it may "
"have to re-allocate it's output buffer multiple times while decompressing, " "have to re-allocate it's output buffer multiple times while decompressing, "
"where as [code]decompress[/code] knows it's output buffer size from the " "where as [code]decompress[/code] knows it's output buffer size from the "
"begining.\n" "beginning.\n"
"\n" "\n"
"GZIP has a maximal compression ratio of 1032:1, meaning it's very possible " "GZIP has a maximal compression ratio of 1032:1, meaning it's very possible "
"for a small compressed payload to decompress to a potentially very large " "for a small compressed payload to decompress to a potentially very large "
"output. To guard against this, you may provide a maximum size this function " "output. To guard against this, you may provide a maximum size this function "
"is allowed to allocate in bytes via [code]max_output_size[/code]. Passing -1 " "is allowed to allocate in bytes via [code]max_output_size[/code]. Passing -1 "
"will allow for unbounded output. If any positive value is passed, and the " "will allow for unbounded output. If any positive value is passed, and the "
"decompression exceeds that ammount in bytes, then an error will be returned." "decompression exceeds that amount in bytes, then an error will be returned."
msgstr "" msgstr ""
#: doc/classes/PoolByteArray.xml #: doc/classes/PoolByteArray.xml
@ -45759,7 +45759,7 @@ msgid ""
"If you accidentally build your level with portals facing the wrong way, this " "If you accidentally build your level with portals facing the wrong way, this "
"setting can fix the problem.\n" "setting can fix the problem.\n"
"It will flip named portal meshes (i.e. [code]-portal[/code]) on the initial " "It will flip named portal meshes (i.e. [code]-portal[/code]) on the initial "
"convertion to [Portal] nodes." "conversion to [Portal] nodes."
msgstr "" msgstr ""
#: doc/classes/ProjectSettings.xml #: doc/classes/ProjectSettings.xml
@ -46450,7 +46450,7 @@ msgid ""
"result, it should not be depended upon for reproducible random streams " "result, it should not be depended upon for reproducible random streams "
"across Godot versions.\n" "across Godot versions.\n"
"To generate a random float number (within a given range) based on a time-" "To generate a random float number (within a given range) based on a time-"
"dependant seed:\n" "dependent seed:\n"
"[codeblock]\n" "[codeblock]\n"
"var rng = RandomNumberGenerator.new()\n" "var rng = RandomNumberGenerator.new()\n"
"func _ready():\n" "func _ready():\n"
@ -69589,7 +69589,7 @@ msgid ""
"signals is the same id as used in [member ARVRController.controller_id].\n" "signals is the same id as used in [member ARVRController.controller_id].\n"
"You can use one or all of these methods to allow your game or app to support " "You can use one or all of these methods to allow your game or app to support "
"a wider or narrower set of devices and input methods, or to allow more " "a wider or narrower set of devices and input methods, or to allow more "
"advanced interations with more advanced devices." "advanced interactions with more advanced devices."
msgstr "" msgstr ""
#: modules/webxr/doc_classes/WebXRInterface.xml #: modules/webxr/doc_classes/WebXRInterface.xml

View File

@ -465,7 +465,7 @@ public:
TransformMode orig_transform_mode; TransformMode orig_transform_mode;
// support for extra matrices // support for extra matrices
bool extra_matrix_sent; // whether sent on this item (in which case sofware transform can't be used untl end of item) bool extra_matrix_sent; // whether sent on this item (in which case software transform can't be used untl end of item)
int transform_extra_command_number_p1; // plus one to allow fast checking against zero int transform_extra_command_number_p1; // plus one to allow fast checking against zero
Transform2D transform_combined; // final * extra Transform2D transform_combined; // final * extra
}; };

View File

@ -1610,7 +1610,7 @@ FRAGMENT_SHADER_CODE
specular_light *= specular * metallic * albedo * 2.0; specular_light *= specular * metallic * albedo * 2.0;
#else #else
// scales the specular reflections, needs to be be computed before lighting happens, // scales the specular reflections, needs to be computed before lighting happens,
// but after environment and reflection probes are added // but after environment and reflection probes are added
//TODO: this curve is not really designed for gammaspace, should be adjusted //TODO: this curve is not really designed for gammaspace, should be adjusted
const vec4 c0 = vec4(-1.0, -0.0275, -0.572, 0.022); const vec4 c0 = vec4(-1.0, -0.0275, -0.572, 0.022);

View File

@ -109,7 +109,7 @@ Dictionary DebugAdapterParser::prepare_error_response(const Dictionary &p_params
case DAP::ErrorType::UNKNOWN: case DAP::ErrorType::UNKNOWN:
default: default:
error = "unknown"; error = "unknown";
error_desc = "An unknown error has ocurred when processing the request."; error_desc = "An unknown error has occurred when processing the request.";
break; break;
} }
@ -412,7 +412,7 @@ Dictionary DebugAdapterParser::req_scopes(const Dictionary &p_params) const {
} }
Dictionary DebugAdapterParser::req_variables(const Dictionary &p_params) const { Dictionary DebugAdapterParser::req_variables(const Dictionary &p_params) const {
// If _remaining_vars > 0, the debugee is still sending a stack dump to the editor. // If _remaining_vars > 0, the debuggee is still sending a stack dump to the editor.
if (DebugAdapterProtocol::get_singleton()->_remaining_vars > 0) { if (DebugAdapterProtocol::get_singleton()->_remaining_vars > 0) {
return Dictionary(); return Dictionary();
} }

View File

@ -1799,7 +1799,7 @@ Array EditorInspectorArray::_extract_properties_as_array(const List<PropertyInfo
dict[format_string] = object->get(pi.name); dict[format_string] = object->get(pi.name);
output[array_index] = dict; output[array_index] = dict;
} else { } else {
WARN_PRINT(vformat("Array element %s has an index too high. Array allocaiton failed.", pi.name)); WARN_PRINT(vformat("Array element %s has an index too high. Array allocation failed.", pi.name));
} }
} }
} }
@ -2766,7 +2766,7 @@ void EditorInspector::update_tree() {
doc_hint = descr; doc_hint = descr;
} }
// Seach for the inspector plugin that will handle the properties. Then add the correct property editor to it. // Search for the inspector plugin that will handle the properties. Then add the correct property editor to it.
for (Ref<EditorInspectorPlugin> &ped : valid_plugins) { for (Ref<EditorInspectorPlugin> &ped : valid_plugins) {
bool exclusive = ped->parse_property(object, p.type, p.name, p.hint, p.hint_string, p.usage, wide_editors); bool exclusive = ped->parse_property(object, p.type, p.name, p.hint, p.hint_string, p.usage, wide_editors);

View File

@ -142,7 +142,7 @@ bool EditorSettings::_get(const StringName &p_name, Variant &r_ret) const {
if (builtin_list.has(shortcut_definition.key)) { if (builtin_list.has(shortcut_definition.key)) {
// This shortcut was auto-generated from built in actions: don't save. // This shortcut was auto-generated from built in actions: don't save.
// If the builtin is overriden, it will be saved in the "builtin_action_overrides" section below. // If the builtin is overridden, it will be saved in the "builtin_action_overrides" section below.
continue; continue;
} }

View File

@ -392,7 +392,7 @@ Error ResourceImporterLayeredTexture::import(const String &p_source_file, const
bool can_s3tc = ProjectSettings::get_singleton()->get("rendering/textures/vram_compression/import_s3tc"); bool can_s3tc = ProjectSettings::get_singleton()->get("rendering/textures/vram_compression/import_s3tc");
if (can_bptc) { if (can_bptc) {
formats_imported.push_back("bptc"); //needs to be aded anyway formats_imported.push_back("bptc"); // Needs to be added anyway.
} }
bool can_compress_hdr = hdr_compression > 0; bool can_compress_hdr = hdr_compression > 0;

View File

@ -1110,7 +1110,7 @@ void fragment() {
)"); )");
selected_mat->set_shader(selected_sh); selected_mat->set_shader(selected_sh);
// Regist properties in editor settings. // Register properties in editor settings.
EDITOR_DEF("editors/3d_gizmos/gizmo_colors/skeleton", Color(1, 0.8, 0.4)); EDITOR_DEF("editors/3d_gizmos/gizmo_colors/skeleton", Color(1, 0.8, 0.4));
EDITOR_DEF("editors/3d_gizmos/gizmo_colors/selected_bone", Color(0.8, 0.3, 0.0)); EDITOR_DEF("editors/3d_gizmos/gizmo_colors/selected_bone", Color(0.8, 0.3, 0.0));
EDITOR_DEF("editors/3d_gizmos/gizmo_settings/bone_axis_length", (float)0.1); EDITOR_DEF("editors/3d_gizmos/gizmo_settings/bone_axis_length", (float)0.1);

View File

@ -1760,7 +1760,7 @@ CSGBrush *CSGPolygon3D::_build_brush() {
} }
int face_count = extrusions * extrusion_face_count + end_count * shape_face_count; int face_count = extrusions * extrusion_face_count + end_count * shape_face_count;
// Intialize variables used to create the mesh. // Initialize variables used to create the mesh.
Ref<Material> material = get_material(); Ref<Material> material = get_material();
Vector<Vector3> faces; Vector<Vector3> faces;

View File

@ -50,7 +50,7 @@
<argument index="2" name="channels" type="int" default="0" /> <argument index="2" name="channels" type="int" default="0" />
<argument index="3" name="data" type="int" default="0" /> <argument index="3" name="data" type="int" default="0" />
<description> <description>
Initiates a connection to a foreign [code]address[/code] using the specified [code]port[/code] and allocting the requested [code]channels[/code]. Optional [code]data[/code] can be passed during connection in the form of a 32 bit integer. Initiates a connection to a foreign [code]address[/code] using the specified [code]port[/code] and allocating the requested [code]channels[/code]. Optional [code]data[/code] can be passed during connection in the form of a 32 bit integer.
[b]Note:[/b] You must call either [method create_host] or [method create_host_bound] before calling this method. [b]Note:[/b] You must call either [method create_host] or [method create_host_bound] before calling this method.
</description> </description>
</method> </method>
@ -61,7 +61,7 @@
<argument index="2" name="in_bandwidth" type="int" default="0" /> <argument index="2" name="in_bandwidth" type="int" default="0" />
<argument index="3" name="out_bandwidth" type="int" default="0" /> <argument index="3" name="out_bandwidth" type="int" default="0" />
<description> <description>
Create an ENetHost that will allow up to [code]max_peers[/code] connected peers, each allocating up to [code]max_channels[/code] channels, optionally limiting bandwith to [code]in_bandwidth[/code] and [code]out_bandwidth[/code]. Create an ENetHost that will allow up to [code]max_peers[/code] connected peers, each allocating up to [code]max_channels[/code] channels, optionally limiting bandwidth to [code]in_bandwidth[/code] and [code]out_bandwidth[/code].
</description> </description>
</method> </method>
<method name="create_host_bound"> <method name="create_host_bound">
@ -174,7 +174,7 @@
A connection request initiated by enet_host_connect has completed. The array will contain the peer which successfully connected. A connection request initiated by enet_host_connect has completed. The array will contain the peer which successfully connected.
</constant> </constant>
<constant name="EVENT_DISCONNECT" value="2" enum="EventType"> <constant name="EVENT_DISCONNECT" value="2" enum="EventType">
A peer has disconnected. This event is generated on a successful completion of a disconnect initiated by [method ENetPacketPeer.peer_disconnect], if a peer has timed out, or if a connection request intialized by [method connect_to_host] has timed out. The array will contain the peer which disconnected. The data field contains user supplied data describing the disconnection, or 0, if none is available. A peer has disconnected. This event is generated on a successful completion of a disconnect initiated by [method ENetPacketPeer.peer_disconnect], if a peer has timed out, or if a connection request initialized by [method connect_to_host] has timed out. The array will contain the peer which disconnected. The data field contains user supplied data describing the disconnection, or 0, if none is available.
</constant> </constant>
<constant name="EVENT_RECEIVE" value="3" enum="EventType"> <constant name="EVENT_RECEIVE" value="3" enum="EventType">
A packet has been received from a peer. The array will contain the peer which sent the packet, the channel number upon which the packet was received, and the received packet. A packet has been received from a peer. The array will contain the peer which sent the packet, the channel number upon which the packet was received, and the received packet.

View File

@ -107,7 +107,7 @@ Error ENetMultiplayerPeer::add_mesh_peer(int p_id, Ref<ENetConnection> p_host) {
ERR_FAIL_COND_V_MSG(active_mode != MODE_MESH, ERR_UNCONFIGURED, "The multiplayer instance is not configured as a mesh. Call 'create_mesh' first."); ERR_FAIL_COND_V_MSG(active_mode != MODE_MESH, ERR_UNCONFIGURED, "The multiplayer instance is not configured as a mesh. Call 'create_mesh' first.");
List<Ref<ENetPacketPeer>> host_peers; List<Ref<ENetPacketPeer>> host_peers;
p_host->get_peers(host_peers); p_host->get_peers(host_peers);
ERR_FAIL_COND_V_MSG(host_peers.size() != 1 || host_peers[0]->get_state() != ENetPacketPeer::STATE_CONNECTED, ERR_INVALID_PARAMETER, "The provided host must have excatly one peer in the connected state."); ERR_FAIL_COND_V_MSG(host_peers.size() != 1 || host_peers[0]->get_state() != ENetPacketPeer::STATE_CONNECTED, ERR_INVALID_PARAMETER, "The provided host must have exactly one peer in the connected state.");
hosts[p_id] = p_host; hosts[p_id] = p_host;
peers[p_id] = host_peers[0]; peers[p_id] = host_peers[0];
emit_signal(SNAME("peer_connected"), p_id); emit_signal(SNAME("peer_connected"), p_id);

View File

@ -103,7 +103,7 @@ public:
virtual void poll() override; virtual void poll() override;
virtual bool is_server() const override; virtual bool is_server() const override;
// Overriden so we can instrument the DTLSServer when needed. // Overridden so we can instrument the DTLSServer when needed.
virtual void set_refuse_new_connections(bool p_enabled) override; virtual void set_refuse_new_connections(bool p_enabled) override;
virtual ConnectionStatus get_connection_status() const override; virtual ConnectionStatus get_connection_status() const override;

View File

@ -167,7 +167,7 @@ ImporterMeshInstance3D *FBXMeshData::create_fbx_mesh(const ImportState &state, c
sanitize_vertex_weights(state); sanitize_vertex_weights(state);
// Re organize polygon vertices to to correctly take into account strange // Reorganize polygon vertices to correctly take into account strange
// UVs. // UVs.
reorganize_vertices( reorganize_vertices(
polygon_indices, polygon_indices,

View File

@ -146,7 +146,7 @@ typedef struct {
} godot_nativescript_method_argument; } godot_nativescript_method_argument;
typedef struct { typedef struct {
// instance pointer, method data, user data, num args, args - return result as varaint // instance pointer, method data, user data, num args, args - return result as variant
GDCALLINGCONV godot_variant (*method)(godot_object *, void *, void *, int, godot_variant **); GDCALLINGCONV godot_variant (*method)(godot_object *, void *, void *, int, godot_variant **);
void *method_data; void *method_data;
GDCALLINGCONV void (*free_func)(void *); GDCALLINGCONV void (*free_func)(void *);

View File

@ -6,7 +6,7 @@ signal a
# No parameters. # No parameters.
signal b() signal b()
# With paramters. # With parameters.
signal c(a, b, c) signal c(a, b, c)
# With parameters multiline. # With parameters multiline.

View File

@ -400,7 +400,7 @@ namespace Godot
/// </summary> /// </summary>
/// <param name="seed"> /// <param name="seed">
/// Seed to use to generate the random number. /// Seed to use to generate the random number.
/// If a different seed is used, its value will be modfied. /// If a different seed is used, its value will be modified.
/// </param> /// </param>
/// <returns>A random <see langword="uint"/> number.</returns> /// <returns>A random <see langword="uint"/> number.</returns>
public static uint RandFromSeed(ref ulong seed) public static uint RandFromSeed(ref ulong seed)

View File

@ -694,7 +694,7 @@ namespace Godot
/// <summary> /// <summary>
/// Returns <see langword="true"/> if the string is a path to a file or /// Returns <see langword="true"/> if the string is a path to a file or
/// directory and its startign point is explicitly defined. This includes /// directory and its starting point is explicitly defined. This includes
/// <c>res://</c>, <c>user://</c>, <c>C:\</c>, <c>/</c>, etc. /// <c>res://</c>, <c>user://</c>, <c>C:\</c>, <c>/</c>, etc.
/// </summary> /// </summary>
/// <seealso cref="IsRelativePath(string)"/> /// <seealso cref="IsRelativePath(string)"/>

View File

@ -67,7 +67,7 @@ void JavaScriptToolsEditorPlugin::_download_zip(Variant p_v) {
FileAccess *src_f; FileAccess *src_f;
zlib_filefunc_def io = zipio_create_io_from_file(&src_f); zlib_filefunc_def io = zipio_create_io_from_file(&src_f);
// Name the downloded ZIP file to contain the project name and download date for easier organization. // Name the downloaded ZIP file to contain the project name and download date for easier organization.
// Replace characters not allowed (or risky) in Windows file names with safe characters. // Replace characters not allowed (or risky) in Windows file names with safe characters.
// In the project name, all invalid characters become an empty string so that a name // In the project name, all invalid characters become an empty string so that a name
// like "Platformer 2: Godette's Revenge" becomes "platformer_2-_godette-s_revenge". // like "Platformer 2: Godette's Revenge" becomes "platformer_2-_godette-s_revenge".

View File

@ -223,7 +223,7 @@ void ShapeCast2D::_notification(int p_what) {
draw_col.g = g; draw_col.g = g;
draw_col.b = g; draw_col.b = g;
} }
// Draw continuos chain of shapes along the cast. // Draw continuous chain of shapes along the cast.
const int steps = MAX(2, target_position.length() / shape->get_rect().get_size().length() * 4); const int steps = MAX(2, target_position.length() / shape->get_rect().get_size().length() * 4);
for (int i = 0; i <= steps; ++i) { for (int i = 0; i <= steps; ++i) {
Vector2 t = (real_t(i) / steps) * target_position; Vector2 t = (real_t(i) / steps) * target_position;

View File

@ -866,7 +866,7 @@ void TileMap::_recreate_layer_internals(int p_layer) {
return; return;
} }
// Upadate the layer internals. // Update the layer internals.
_rendering_update_layer(p_layer); _rendering_update_layer(p_layer);
// Recreate the quadrants. // Recreate the quadrants.
@ -1375,7 +1375,7 @@ void TileMap::_physics_notification(int p_what) {
in_editor = Engine::get_singleton()->is_editor_hint(); in_editor = Engine::get_singleton()->is_editor_hint();
#endif #endif
if (is_inside_tree() && collision_animatable && !in_editor) { if (is_inside_tree() && collision_animatable && !in_editor) {
// Update tranform on the physics tick when in animatable mode. // Update transform on the physics tick when in animatable mode.
last_valid_transform = new_transform; last_valid_transform = new_transform;
set_notify_local_transform(false); set_notify_local_transform(false);
set_global_transform(new_transform); set_global_transform(new_transform);
@ -2296,7 +2296,7 @@ Map<Vector2i, TileSet::TerrainsPattern> TileMap::terrain_wave_function_collapse(
// Randomly a cell to fill out of the most constrained. // Randomly a cell to fill out of the most constrained.
Vector2i selected_cell_to_replace = to_choose_from[Math::random(0, to_choose_from.size() - 1)]; Vector2i selected_cell_to_replace = to_choose_from[Math::random(0, to_choose_from.size() - 1)];
// Get the list of acceptable pattens for the given cell. // Get the list of acceptable patterns for the given cell.
Set<TileSet::TerrainsPattern> valid_tiles = per_cell_acceptable_tiles[selected_cell_to_replace]; Set<TileSet::TerrainsPattern> valid_tiles = per_cell_acceptable_tiles[selected_cell_to_replace];
if (valid_tiles.is_empty()) { if (valid_tiles.is_empty()) {
break; // No possibilities :/ break; // No possibilities :/

View File

@ -2990,7 +2990,7 @@ CodeEdit::CodeEdit() {
add_auto_brace_completion_pair("\"", "\""); add_auto_brace_completion_pair("\"", "\"");
add_auto_brace_completion_pair("\'", "\'"); add_auto_brace_completion_pair("\'", "\'");
/* Delimiter traking */ /* Delimiter tracking */
add_string_delimiter("\"", "\"", false); add_string_delimiter("\"", "\"", false);
add_string_delimiter("\'", "\'", false); add_string_delimiter("\'", "\'", false);

View File

@ -2107,7 +2107,7 @@ void GraphEdit::arrange_nodes() {
} while (u != E->get()); } while (u != E->get());
} }
//Compute horizontal co-ordinates individually for layers to get uniform gap // Compute horizontal coordinates individually for layers to get uniform gap.
float start_from = origin.x; float start_from = origin.x;
float largest_node_size = 0.0f; float largest_node_size = 0.0f;

View File

@ -4052,7 +4052,7 @@ int RichTextLabel::get_content_height() const {
#ifndef DISABLE_DEPRECATED #ifndef DISABLE_DEPRECATED
// People will be very angry, if their texts get erased, because of #39148. (3.x -> 4.0) // People will be very angry, if their texts get erased, because of #39148. (3.x -> 4.0)
// Altough some people may not used bbcode_text, so we only overwrite, if bbcode_text is not empty // Although some people may not used bbcode_text, so we only overwrite, if bbcode_text is not empty.
bool RichTextLabel::_set(const StringName &p_name, const Variant &p_value) { bool RichTextLabel::_set(const StringName &p_name, const Variant &p_value) {
if (p_name == "bbcode_text" && !((String)p_value).is_empty()) { if (p_name == "bbcode_text" && !((String)p_value).is_empty()) {
set_text(p_value); set_text(p_value);

View File

@ -5048,7 +5048,7 @@ void TextEdit::_bind_methods() {
ClassDB::bind_method(D_METHOD("get_line_wrapped_text", "line"), &TextEdit::get_line_wrapped_text); ClassDB::bind_method(D_METHOD("get_line_wrapped_text", "line"), &TextEdit::get_line_wrapped_text);
/* Viewport. */ /* Viewport. */
// Scolling. // Scrolling.
ClassDB::bind_method(D_METHOD("set_smooth_scroll_enable", "enable"), &TextEdit::set_smooth_scroll_enabled); ClassDB::bind_method(D_METHOD("set_smooth_scroll_enable", "enable"), &TextEdit::set_smooth_scroll_enabled);
ClassDB::bind_method(D_METHOD("is_smooth_scroll_enabled"), &TextEdit::is_smooth_scroll_enabled); ClassDB::bind_method(D_METHOD("is_smooth_scroll_enabled"), &TextEdit::is_smooth_scroll_enabled);
@ -5410,7 +5410,7 @@ void TextEdit::_cut_internal() {
set_caret_line(get_caret_line() + 1); set_caret_line(get_caret_line() + 1);
} }
// Correct the visualy perceived caret column taking care of identation level of the lines. // Correct the visually perceived caret column taking care of indentation level of the lines.
int diff_indent = indent_level - get_indent_level(get_caret_line()); int diff_indent = indent_level - get_indent_level(get_caret_line());
cc += diff_indent; cc += diff_indent;
if (diff_indent != 0) { if (diff_indent != 0) {

View File

@ -70,7 +70,7 @@ public:
GUTTER_TYPE_CUSTOM GUTTER_TYPE_CUSTOM
}; };
/* Contex Menu. */ /* Context Menu. */
enum MenuItems { enum MenuItems {
MENU_CUT, MENU_CUT,
MENU_COPY, MENU_COPY,

View File

@ -4197,7 +4197,7 @@ struct AnimationCompressionDataState {
}; };
uint32_t components = 3; uint32_t components = 3;
LocalVector<uint8_t> data; //commited packets LocalVector<uint8_t> data; // Committed packets.
struct PacketData { struct PacketData {
int32_t data[3] = { 0, 0, 0 }; int32_t data[3] = { 0, 0, 0 };
uint32_t frame = 0; uint32_t frame = 0;
@ -4576,7 +4576,7 @@ void Animation::compress(uint32_t p_page_size, uint32_t p_fps, float p_split_tol
} }
} }
for (int j = 0; j < 3; j++) { for (int j = 0; j < 3; j++) {
//cant have zero // Can't have zero.
if (aabb.size[j] < CMP_EPSILON) { if (aabb.size[j] < CMP_EPSILON) {
aabb.size[j] = CMP_EPSILON; aabb.size[j] = CMP_EPSILON;
} }
@ -4596,7 +4596,7 @@ void Animation::compress(uint32_t p_page_size, uint32_t p_fps, float p_split_tol
} }
} }
for (int j = 0; j < 3; j++) { for (int j = 0; j < 3; j++) {
//cant have zero // Can't have zero.
if (aabb.size[j] < CMP_EPSILON) { if (aabb.size[j] < CMP_EPSILON) {
aabb.size[j] = CMP_EPSILON; aabb.size[j] = CMP_EPSILON;
} }

View File

@ -168,7 +168,7 @@ void SkeletonModification3DJiggle::_execute_jiggle_joint(int p_joint_idx, Node3D
} }
if (_print_execution_error( if (_print_execution_error(
jiggle_data_chain[p_joint_idx].bone_idx < 0 || jiggle_data_chain[p_joint_idx].bone_idx > stack->skeleton->get_bone_count(), jiggle_data_chain[p_joint_idx].bone_idx < 0 || jiggle_data_chain[p_joint_idx].bone_idx > stack->skeleton->get_bone_count(),
"Jiggle joint " + itos(p_joint_idx) + " bone index is invald. Cannot execute modification!")) { "Jiggle joint " + itos(p_joint_idx) + " bone index is invalid. Cannot execute modification!")) {
return; return;
} }

View File

@ -690,7 +690,7 @@ ShaderLanguage::Token ShaderLanguage::_get_token() {
} }
if (!str.is_valid_int()) { if (!str.is_valid_int()) {
if (uint_suffix_found) { if (uint_suffix_found) {
return _make_token(TK_ERROR, "Invalid (usigned integer) numeric constant"); return _make_token(TK_ERROR, "Invalid (unsigned integer) numeric constant");
} else { } else {
return _make_token(TK_ERROR, "Invalid (integer) numeric constant"); return _make_token(TK_ERROR, "Invalid (integer) numeric constant");
} }

View File

@ -1104,7 +1104,7 @@ TEST_CASE("[SceneTree][CodeEdit] delimiters") {
CHECK(code_edit->get_delimiter_start_key(idx) == "#"); CHECK(code_edit->get_delimiter_start_key(idx) == "#");
CHECK(code_edit->get_delimiter_end_key(idx) == ""); CHECK(code_edit->get_delimiter_end_key(idx) == "");
/* Check nested strings are handeled correctly. */ /* Check nested strings are handled correctly. */
code_edit->set_text(" \n# # \n "); code_edit->set_text(" \n# # \n ");
/* Check line above is not in string. */ /* Check line above is not in string. */
@ -1132,7 +1132,7 @@ TEST_CASE("[SceneTree][CodeEdit] delimiters") {
CHECK(code_edit->get_delimiter_start_position(2, 1) == OUTSIDE_DELIMETER); CHECK(code_edit->get_delimiter_start_position(2, 1) == OUTSIDE_DELIMETER);
CHECK(code_edit->get_delimiter_end_position(2, 1) == OUTSIDE_DELIMETER); CHECK(code_edit->get_delimiter_end_position(2, 1) == OUTSIDE_DELIMETER);
/* Check is in string with no column retruns true if entire line is comment excluding whitespace. */ /* Check is in string with no column returns true if entire line is comment excluding whitespace. */
code_edit->set_text(" \n # # \n "); code_edit->set_text(" \n # # \n ");
CHECK(code_edit->is_in_string(1) != -1); CHECK(code_edit->is_in_string(1) != -1);
@ -1195,7 +1195,7 @@ TEST_CASE("[SceneTree][CodeEdit] delimiters") {
CHECK(code_edit->get_delimiter_start_key(idx) == "#"); CHECK(code_edit->get_delimiter_start_key(idx) == "#");
CHECK(code_edit->get_delimiter_end_key(idx) == ""); CHECK(code_edit->get_delimiter_end_key(idx) == "");
/* Check nested comments are handeled correctly. */ /* Check nested comments are handled correctly. */
code_edit->set_text(" \n# # \n "); code_edit->set_text(" \n# # \n ");
/* Check line above is not in comment. */ /* Check line above is not in comment. */
@ -1223,7 +1223,7 @@ TEST_CASE("[SceneTree][CodeEdit] delimiters") {
CHECK(code_edit->get_delimiter_start_position(2, 1) == OUTSIDE_DELIMETER); CHECK(code_edit->get_delimiter_start_position(2, 1) == OUTSIDE_DELIMETER);
CHECK(code_edit->get_delimiter_end_position(2, 1) == OUTSIDE_DELIMETER); CHECK(code_edit->get_delimiter_end_position(2, 1) == OUTSIDE_DELIMETER);
/* Check is in comment with no column retruns true if entire line is comment excluding whitespace. */ /* Check is in comment with no column returns true if entire line is comment excluding whitespace. */
code_edit->set_text(" \n # # \n "); code_edit->set_text(" \n # # \n ");
CHECK(code_edit->is_in_comment(1) != -1); CHECK(code_edit->is_in_comment(1) != -1);
@ -1491,7 +1491,7 @@ TEST_CASE("[SceneTree][CodeEdit] delimiters") {
CHECK(code_edit->get_delimiter_start_key(idx) == "#"); CHECK(code_edit->get_delimiter_start_key(idx) == "#");
CHECK(code_edit->get_delimiter_end_key(idx) == "#"); CHECK(code_edit->get_delimiter_end_key(idx) == "#");
/* Check is in string with no column retruns true if entire line is string excluding whitespace. */ /* Check is in string with no column returns true if entire line is string excluding whitespace. */
code_edit->set_text(" \n # \n\n #\n "); code_edit->set_text(" \n # \n\n #\n ");
CHECK(code_edit->is_in_string(1) != -1); CHECK(code_edit->is_in_string(1) != -1);
CHECK(code_edit->is_in_string(2) != -1); CHECK(code_edit->is_in_string(2) != -1);
@ -1680,7 +1680,7 @@ TEST_CASE("[SceneTree][CodeEdit] delimiters") {
CHECK(code_edit->get_delimiter_start_key(idx) == "#"); CHECK(code_edit->get_delimiter_start_key(idx) == "#");
CHECK(code_edit->get_delimiter_end_key(idx) == "#"); CHECK(code_edit->get_delimiter_end_key(idx) == "#");
/* Check is in comment with no column retruns true if entire line is comment excluding whitespace. */ /* Check is in comment with no column returns true if entire line is comment excluding whitespace. */
code_edit->set_text(" \n # \n\n #\n "); code_edit->set_text(" \n # \n\n #\n ");
CHECK(code_edit->is_in_comment(1) != -1); CHECK(code_edit->is_in_comment(1) != -1);
CHECK(code_edit->is_in_comment(2) != -1); CHECK(code_edit->is_in_comment(2) != -1);
@ -1746,7 +1746,7 @@ TEST_CASE("[SceneTree][CodeEdit] delimiters") {
CHECK(code_edit->get_delimiter_start_key(idx) == "#"); CHECK(code_edit->get_delimiter_start_key(idx) == "#");
CHECK(code_edit->get_delimiter_end_key(idx) == "#"); CHECK(code_edit->get_delimiter_end_key(idx) == "#");
/* Check is in comment with no column retruns true as inner delimiter should not be counted. */ /* Check is in comment with no column returns true as inner delimiter should not be counted. */
CHECK(code_edit->is_in_comment(1) != -1); CHECK(code_edit->is_in_comment(1) != -1);
CHECK(code_edit->is_in_comment(2) != -1); CHECK(code_edit->is_in_comment(2) != -1);
CHECK(code_edit->is_in_comment(3) != -1); CHECK(code_edit->is_in_comment(3) != -1);

View File

@ -135,7 +135,7 @@ int register_test_command(String p_command, TestFunc p_function);
// SEND_GUI_ACTION - takes an object and a input map key. e.g SEND_GUI_ACTION(code_edit, "ui_text_newline"). // SEND_GUI_ACTION - takes an object and a input map key. e.g SEND_GUI_ACTION(code_edit, "ui_text_newline").
// SEND_GUI_KEY_EVENT - takes an object and a keycode set. e.g SEND_GUI_KEY_EVENT(code_edit, Key::A | KeyModifierMask::CMD). // SEND_GUI_KEY_EVENT - takes an object and a keycode set. e.g SEND_GUI_KEY_EVENT(code_edit, Key::A | KeyModifierMask::CMD).
// SEND_GUI_MOUSE_EVENT - takes an object, position, mouse button and mouse mask e.g SEND_GUI_MOUSE_EVENT(code_edit, Vector2(50, 50), MOUSE_BUTTON_NONE, MOUSE_BUTTON_NONE); // SEND_GUI_MOUSE_EVENT - takes an object, position, mouse button and mouse mask e.g SEND_GUI_MOUSE_EVENT(code_edit, Vector2(50, 50), MOUSE_BUTTON_NONE, MOUSE_BUTTON_NONE);
// SEND_GUI_DOUBLE_CLICK - takes an object and a postion. e.g SEND_GUI_DOUBLE_CLICK(code_edit, Vector2(50, 50)); // SEND_GUI_DOUBLE_CLICK - takes an object and a position. e.g SEND_GUI_DOUBLE_CLICK(code_edit, Vector2(50, 50));
#define SEND_GUI_ACTION(m_object, m_action) \ #define SEND_GUI_ACTION(m_object, m_action) \
{ \ { \
@ -192,7 +192,7 @@ int register_test_command(String p_command, TestFunc p_function);
// //
// Use SIGNAL_DISCARD("signal_name") to discard records all of the given signal, use only in placed you don't need to check. // Use SIGNAL_DISCARD("signal_name") to discard records all of the given signal, use only in placed you don't need to check.
// //
// All signals are automaticaly discared between test/sub test cases. // All signals are automatically discarded between test/sub test cases.
class SignalWatcher : public Object { class SignalWatcher : public Object {
private: private: