From bb4b98defedf6aeadb94a497568f962981dd3ec7 Mon Sep 17 00:00:00 2001 From: Jakub Grzesik Date: Wed, 26 Jul 2017 11:12:10 +0200 Subject: [PATCH] Documentation update for KinematicBody.move() --- doc/base/classes.xml | 24 +++++++++++++++++++++--- 1 file changed, 21 insertions(+), 3 deletions(-) diff --git a/doc/base/classes.xml b/doc/base/classes.xml index 2075f30b363..fdc6b301de9 100644 --- a/doc/base/classes.xml +++ b/doc/base/classes.xml @@ -245,7 +245,7 @@ Returns the floating-point remainder of x/y (rounded towards zero): [codeblock] - fmod = x - tquot * y + fmod = x - tquot * y [/codeblock] Where tquot is the truncated (i.e., rounded towards zero) result of: x/y. @@ -22390,7 +22390,16 @@ - Move the body in the given direction, stopping if there is an obstacle. The returned vector is how much movement was remaining before being stopped. + Move the body in the given direction, stopping if there is an obstacle. If as a result of a movement there will be any collision then informations about this collision will be in returned dictionary. Dictionary will contains those keys: + - "position" - collision position + - "normal" - collision normal + - "local_shape" - id of this kinematic body shape that took part in a collision + - "travel" - traveled movement before being stopped + - "remainder" - remaining movement before being stopped + - "collider_id" - id of the collider, it can be used when dealing with [PhysicsServer] + - "collider" - colliding body + - "collider_shape_index" - index of the colliding shape, inside collider body "collider_metadata" + If the body did not intersect anything, then an empty dictionary (dir.empty()==true) is returned instead. Please note that this method is less user friendly than [method move_and_slide]. If you don't want to program each edge case manually, then it's recommended to use [method move_and_slide] instead. @@ -22572,7 +22581,16 @@ - Move the body in the given direction, stopping if there is an obstacle. The returned vector is how much movement was remaining before being stopped. + Move the body in the given direction, stopping if there is an obstacle. If as a result of a movement there will be any collision then informations about this collision will be in returned dictionary. Dictionary will contains those keys: + - "position" - collision position + - "normal" - collision normal + - "local_shape" - id of this kinematic body shape that took part in a collision + - "travel" - traveled movement before being stopped + - "remainder" - remaining movement before being stopped + - "collider_id" - id of the collider, it can be used when dealing with [Physics2DServer] + - "collider" - colliding body + - "collider_shape_index" - index of the colliding shape, inside collider body "collider_metadata" + If the body did not intersect anything, then an empty dictionary (dir.empty()==true) is returned instead. Please note that this method is less user friendly than [method move_and_slide]. If you don't want to program each edge case manually, then it's recommended to use [method move_and_slide] instead.