diff --git a/core/ustring.cpp b/core/ustring.cpp index 1be828c44a3..1fce4f1826b 100644 --- a/core/ustring.cpp +++ b/core/ustring.cpp @@ -686,6 +686,9 @@ Vector String::split_spaces() const { int from = 0; int i = 0; int len = length(); + if (len == 0) + return ret; + bool inside = false; while (true) { diff --git a/doc/classes/AABB.xml b/doc/classes/AABB.xml index 574573cb6cb..6ca327b9dfe 100644 --- a/doc/classes/AABB.xml +++ b/doc/classes/AABB.xml @@ -7,6 +7,7 @@ AABB consists of a position, a size, and several utility functions. It is typically used for fast overlap tests. + http://docs.godotengine.org/en/3.0/learning/features/math/index.html diff --git a/doc/classes/Animation.xml b/doc/classes/Animation.xml index 8de86fef18a..e618e69258b 100644 --- a/doc/classes/Animation.xml +++ b/doc/classes/Animation.xml @@ -8,6 +8,7 @@ Animations are just data containers, and must be added to odes such as an [AnimationPlayer] or [AnimationTreePlayer] to be played back. + http://docs.godotengine.org/en/3.0/learning/features/animation/index.html diff --git a/doc/classes/AnimationPlayer.xml b/doc/classes/AnimationPlayer.xml index 46602911d2e..50e4e9ff2b0 100644 --- a/doc/classes/AnimationPlayer.xml +++ b/doc/classes/AnimationPlayer.xml @@ -7,6 +7,8 @@ An animation player is used for general purpose playback of [Animation] resources. It contains a dictionary of animations (referenced by name) and custom blend times between their transitions. Additionally, animations can be played and blended in different channels. + http://docs.godotengine.org/en/3.0/learning/step_by_step/animations.html + http://docs.godotengine.org/en/3.0/learning/features/animation/index.html diff --git a/doc/classes/AudioServer.xml b/doc/classes/AudioServer.xml index afeeae02dfa..c0c7f4b4eae 100644 --- a/doc/classes/AudioServer.xml +++ b/doc/classes/AudioServer.xml @@ -7,6 +7,7 @@ AudioServer is a low level server interface for audio access. It is in charge of creating sample data (playable audio) as well as its playback via a voice interface. + http://docs.godotengine.org/en/3.0/learning/features/audio/audio_buses.html diff --git a/doc/classes/AudioStream.xml b/doc/classes/AudioStream.xml index 430d06db610..b7ec1a017f2 100644 --- a/doc/classes/AudioStream.xml +++ b/doc/classes/AudioStream.xml @@ -7,6 +7,7 @@ Base class for audio streams. Audio streams are used for music playback, or other types of streamed sounds that don't fit or require more flexibility than a [Sample]. + http://docs.godotengine.org/en/3.0/learning/features/audio/audio_streams.html diff --git a/doc/classes/AudioStreamPlayer.xml b/doc/classes/AudioStreamPlayer.xml index 109b2d98603..219afb21168 100644 --- a/doc/classes/AudioStreamPlayer.xml +++ b/doc/classes/AudioStreamPlayer.xml @@ -8,6 +8,7 @@ http://docs.godotengine.org/en/latest/learning/features/audio/index.html + http://docs.godotengine.org/en/3.0/learning/features/audio/audio_streams.html diff --git a/doc/classes/AudioStreamPlayer2D.xml b/doc/classes/AudioStreamPlayer2D.xml index 5996038f922..fc4f4b34cf5 100644 --- a/doc/classes/AudioStreamPlayer2D.xml +++ b/doc/classes/AudioStreamPlayer2D.xml @@ -8,6 +8,7 @@ http://docs.godotengine.org/en/latest/learning/features/audio/index.html + http://docs.godotengine.org/en/3.0/learning/features/audio/audio_streams.html diff --git a/doc/classes/AudioStreamPlayer3D.xml b/doc/classes/AudioStreamPlayer3D.xml index ec855cdff62..49d5723871a 100644 --- a/doc/classes/AudioStreamPlayer3D.xml +++ b/doc/classes/AudioStreamPlayer3D.xml @@ -8,6 +8,7 @@ http://docs.godotengine.org/en/latest/learning/features/audio/index.html + http://docs.godotengine.org/en/3.0/learning/features/audio/audio_streams.html diff --git a/doc/classes/BakedLightmap.xml b/doc/classes/BakedLightmap.xml index 0c28e989eb5..6a8e10485f9 100644 --- a/doc/classes/BakedLightmap.xml +++ b/doc/classes/BakedLightmap.xml @@ -5,6 +5,7 @@ + http://docs.godotengine.org/en/3.0/learning/features/3d/baked_lightmaps.html diff --git a/doc/classes/CanvasItem.xml b/doc/classes/CanvasItem.xml index f7a71d7ea8d..6d5576d9588 100644 --- a/doc/classes/CanvasItem.xml +++ b/doc/classes/CanvasItem.xml @@ -11,6 +11,8 @@ Ultimately, a transform notification can be requested, which will notify the node that its global position changed in case the parent tree changed. + http://docs.godotengine.org/en/3.0/learning/features/2d/2d_transforms.html + http://docs.godotengine.org/en/3.0/learning/features/2d/custom_drawing_in_2d.html diff --git a/doc/classes/CanvasLayer.xml b/doc/classes/CanvasLayer.xml index 1d924b6eadb..1533a29e54f 100644 --- a/doc/classes/CanvasLayer.xml +++ b/doc/classes/CanvasLayer.xml @@ -7,6 +7,8 @@ Canvas drawing layer. [CanvasItem] nodes that are direct or indirect children of a [code]CanvasLayer[/code] will be drawn in that layer. The layer is a numeric index that defines the draw order. The default 2D scene renders with index 0, so a [code]CanvasLayer[/code] with index -1 will be drawn below, and one with index 1 will be drawn above. This is very useful for HUDs (in layer 1+ or above), or backgrounds (in layer -1 or below). + http://docs.godotengine.org/en/3.0/learning/features/2d/2d_transforms.html + http://docs.godotengine.org/en/3.0/learning/features/2d/canvas_layers.html diff --git a/doc/classes/CollisionShape.xml b/doc/classes/CollisionShape.xml index 08a371bafd0..e2f1d813868 100644 --- a/doc/classes/CollisionShape.xml +++ b/doc/classes/CollisionShape.xml @@ -7,6 +7,7 @@ Editor facility for creating and editing collision shapes in 3D space. You can use this node to represent all sorts of collision shapes, for example, add this to an [Area] to give it a detection shape, or add it to a [PhysicsBody] to give create solid object. [b]IMPORTANT[/b]: this is an Editor-only helper to create shapes, use [method get_shape] to get the actual shape. + http://docs.godotengine.org/en/3.0/learning/features/physics/physics_introduction.html diff --git a/doc/classes/CollisionShape2D.xml b/doc/classes/CollisionShape2D.xml index 94ae8189da1..4382bc99db4 100644 --- a/doc/classes/CollisionShape2D.xml +++ b/doc/classes/CollisionShape2D.xml @@ -7,6 +7,7 @@ Editor facility for creating and editing collision shapes in 2D space. You can use this node to represent all sorts of collision shapes, for example, add this to an [Area2D] to give it a detection shape, or add it to a [PhysicsBody2D] to give create solid object. [b]IMPORTANT[/b]: this is an Editor-only helper to create shapes, use [method get_shape] to get the actual shape. + http://docs.godotengine.org/en/3.0/learning/features/physics/physics_introduction.html diff --git a/doc/classes/Control.xml b/doc/classes/Control.xml index 33fcc513d65..b974ecda64b 100644 --- a/doc/classes/Control.xml +++ b/doc/classes/Control.xml @@ -13,6 +13,8 @@ [Theme] resources change the Control's appearance. If you change the [Theme] on a [code]Control[/code] node, it affects all of its children. To override some of the theme's parameters, call one of the [code]add_*_override[/code] methods, like [method add_font_override]. You can override the theme with the inspector. + http://docs.godotengine.org/en/3.0/learning/features/gui/index.html + http://docs.godotengine.org/en/3.0/learning/features/2d/custom_drawing_in_2d.html diff --git a/doc/classes/DirectionalLight.xml b/doc/classes/DirectionalLight.xml index 0a282403fb2..74fe8e856f4 100644 --- a/doc/classes/DirectionalLight.xml +++ b/doc/classes/DirectionalLight.xml @@ -7,6 +7,7 @@ A DirectionalLight is a type of [Light] node that emits light constantly in one direction (the negative z axis of the node). It is used lights with strong intensity that are located far away from the scene to model sunlight or moonlight. The worldspace location of the DirectionalLight transform (origin) is ignored, only the basis is used do determine light direction. + http://docs.godotengine.org/en/3.0/learning/features/3d/lights_and_shadows.html diff --git a/doc/classes/Directory.xml b/doc/classes/Directory.xml index 7b577e94f66..bd854dde3c1 100644 --- a/doc/classes/Directory.xml +++ b/doc/classes/Directory.xml @@ -23,6 +23,7 @@ [/codeblock] + http://docs.godotengine.org/en/3.0/learning/step_by_step/filesystem.html diff --git a/doc/classes/EditorPlugin.xml b/doc/classes/EditorPlugin.xml index 0f0c5d288d5..1f94ef5ddf2 100644 --- a/doc/classes/EditorPlugin.xml +++ b/doc/classes/EditorPlugin.xml @@ -7,6 +7,7 @@ Plugins are used by the editor to extend functionality. The most common types of plugins are those which edit a given node or resource type, import plugins and export plugins. + http://docs.godotengine.org/en/3.0/development/plugins/index.html diff --git a/doc/classes/Environment.xml b/doc/classes/Environment.xml index dde952b4e35..f5fd874346a 100644 --- a/doc/classes/Environment.xml +++ b/doc/classes/Environment.xml @@ -12,6 +12,8 @@ - Adjustments + http://docs.godotengine.org/en/3.0/learning/features/3d/environment_and_post_processing.html + http://docs.godotengine.org/en/3.0/learning/features/3d/high_dynamic_range.html diff --git a/doc/classes/File.xml b/doc/classes/File.xml index d9e60a97a53..2491e3b6141 100644 --- a/doc/classes/File.xml +++ b/doc/classes/File.xml @@ -22,6 +22,7 @@ [/codeblock] + http://docs.godotengine.org/en/3.0/learning/step_by_step/filesystem.html diff --git a/doc/classes/GIProbe.xml b/doc/classes/GIProbe.xml index e10aa614870..687974ba0f7 100644 --- a/doc/classes/GIProbe.xml +++ b/doc/classes/GIProbe.xml @@ -5,6 +5,7 @@ + http://docs.godotengine.org/en/3.0/learning/features/3d/gi_probes.html diff --git a/doc/classes/HTTPClient.xml b/doc/classes/HTTPClient.xml index 57ea7ab172c..e08b9022463 100644 --- a/doc/classes/HTTPClient.xml +++ b/doc/classes/HTTPClient.xml @@ -10,6 +10,8 @@ For more information on HTTP, see https://developer.mozilla.org/en-US/docs/Web/HTTP (or read RFC 2616 to get it straight from the source: https://tools.ietf.org/html/rfc2616). + http://docs.godotengine.org/en/3.0/learning/features/networking/http_client_class.html + http://docs.godotengine.org/en/3.0/learning/features/networking/ssl_certificates.html diff --git a/doc/classes/HTTPRequest.xml b/doc/classes/HTTPRequest.xml index ba8a92bf3e9..02d74aba0be 100644 --- a/doc/classes/HTTPRequest.xml +++ b/doc/classes/HTTPRequest.xml @@ -8,6 +8,7 @@ Can be used to make HTTP requests, i.e. download or upload files or web content via HTTP. + http://docs.godotengine.org/en/3.0/learning/features/networking/ssl_certificates.html diff --git a/doc/classes/InputEvent.xml b/doc/classes/InputEvent.xml index f17b20be3ed..322c85b3ab3 100644 --- a/doc/classes/InputEvent.xml +++ b/doc/classes/InputEvent.xml @@ -7,7 +7,8 @@ Base class of all sort of input event. See [method Node._input]. - http://docs.godotengine.org/en/stable/learning/features/inputs/inputevent.html + http://docs.godotengine.org/en/3.0/learning/features/inputs/inputevent.html + http://docs.godotengine.org/en/3.0/learning/features/2d/2d_transforms.html diff --git a/doc/classes/InputEventAction.xml b/doc/classes/InputEventAction.xml index b9e8ef2304e..246f2dc12d1 100644 --- a/doc/classes/InputEventAction.xml +++ b/doc/classes/InputEventAction.xml @@ -7,7 +7,7 @@ Contains a generic action which can be targeted from several type of inputs. Actions can be created from the project settings menu [code]Project > Project Settings > Input Map[/code]. See [method Node._input]. - http://docs.godotengine.org/en/stable/learning/features/inputs/inputevent.html#actions + http://docs.godotengine.org/en/3.0/learning/features/inputs/inputevent.html#actions diff --git a/doc/classes/InputEventJoypadButton.xml b/doc/classes/InputEventJoypadButton.xml index 6de45b62859..ed834229813 100644 --- a/doc/classes/InputEventJoypadButton.xml +++ b/doc/classes/InputEventJoypadButton.xml @@ -7,7 +7,7 @@ Input event type for gamepad buttons. For joysticks see [InputEventJoypadMotion]. - http://docs.godotengine.org/en/stable/learning/features/inputs/inputevent.html + http://docs.godotengine.org/en/3.0/learning/features/inputs/inputevent.html diff --git a/doc/classes/InputEventJoypadMotion.xml b/doc/classes/InputEventJoypadMotion.xml index 1794f94a785..c29d05d922f 100644 --- a/doc/classes/InputEventJoypadMotion.xml +++ b/doc/classes/InputEventJoypadMotion.xml @@ -7,7 +7,7 @@ Stores information about joystick motions. One [code]InputEventJoypadMotion[/code] represents one axis at a time. - http://docs.godotengine.org/en/stable/learning/features/inputs/inputevent.html + http://docs.godotengine.org/en/3.0/learning/features/inputs/inputevent.html diff --git a/doc/classes/InputEventKey.xml b/doc/classes/InputEventKey.xml index 86254a5b92a..f41f6923a57 100644 --- a/doc/classes/InputEventKey.xml +++ b/doc/classes/InputEventKey.xml @@ -7,7 +7,7 @@ Stores key presses on the keyboard. Supports key presses, key releases and [member echo] events. - http://docs.godotengine.org/en/stable/learning/features/inputs/inputevent.html + http://docs.godotengine.org/en/3.0/learning/features/inputs/inputevent.html diff --git a/doc/classes/InputEventMouse.xml b/doc/classes/InputEventMouse.xml index 13213825732..7d5a60ff0d7 100644 --- a/doc/classes/InputEventMouse.xml +++ b/doc/classes/InputEventMouse.xml @@ -7,7 +7,7 @@ Stores general mouse events informations. - http://docs.godotengine.org/en/stable/learning/features/inputs/inputevent.html + http://docs.godotengine.org/en/3.0/learning/features/inputs/inputevent.html diff --git a/doc/classes/InputEventMouseButton.xml b/doc/classes/InputEventMouseButton.xml index e082efa52c6..6b93fbfa675 100644 --- a/doc/classes/InputEventMouseButton.xml +++ b/doc/classes/InputEventMouseButton.xml @@ -7,7 +7,7 @@ Contains mouse click informations. See [method Node._input]. - http://docs.godotengine.org/en/stable/learning/features/inputs/inputevent.html + http://docs.godotengine.org/en/3.0/learning/features/inputs/mouse_and_input_coordinates.html diff --git a/doc/classes/InputEventMouseMotion.xml b/doc/classes/InputEventMouseMotion.xml index b160844ca67..4b3126dc72d 100644 --- a/doc/classes/InputEventMouseMotion.xml +++ b/doc/classes/InputEventMouseMotion.xml @@ -7,7 +7,7 @@ Contains mouse motion informations. Supports relative, absolute positions and speed. See [method Node._input]. - http://docs.godotengine.org/en/stable/learning/features/inputs/inputevent.html + http://docs.godotengine.org/en/3.0/learning/features/inputs/mouse_and_input_coordinates.html diff --git a/doc/classes/InputEventScreenDrag.xml b/doc/classes/InputEventScreenDrag.xml index 6f2aed17a22..bbf1411189e 100644 --- a/doc/classes/InputEventScreenDrag.xml +++ b/doc/classes/InputEventScreenDrag.xml @@ -8,7 +8,7 @@ Contains screen drag informations. See [method Node._input]. - http://docs.godotengine.org/en/stable/learning/features/inputs/inputevent.html + http://docs.godotengine.org/en/3.0/learning/features/inputs/inputevent.html diff --git a/doc/classes/InputEventScreenTouch.xml b/doc/classes/InputEventScreenTouch.xml index f98e575e337..bd94770da2f 100644 --- a/doc/classes/InputEventScreenTouch.xml +++ b/doc/classes/InputEventScreenTouch.xml @@ -8,7 +8,7 @@ Stores multi-touch press/release information. Supports touch press, touch release and [member index] for multi-touch count and order. - http://docs.godotengine.org/en/stable/learning/features/inputs/inputevent.html + http://docs.godotengine.org/en/3.0/learning/features/inputs/inputevent.html diff --git a/doc/classes/InputEventWithModifiers.xml b/doc/classes/InputEventWithModifiers.xml index ad867a90046..68a5540402d 100644 --- a/doc/classes/InputEventWithModifiers.xml +++ b/doc/classes/InputEventWithModifiers.xml @@ -7,7 +7,7 @@ Contains keys events informations with modifiers support like [code]SHIFT[/code] or [code]ALT[/code]. See [method Node._input]. - http://docs.godotengine.org/en/stable/learning/features/inputs/inputevent.html + http://docs.godotengine.org/en/3.0/learning/features/inputs/inputevent.html diff --git a/doc/classes/InputMap.xml b/doc/classes/InputMap.xml index a84c6807ace..dde302c095e 100644 --- a/doc/classes/InputMap.xml +++ b/doc/classes/InputMap.xml @@ -7,7 +7,7 @@ Manages all [InputEventAction] which can be created/modified from the project settings menu [code]Project > Project Settings > Input Map[/code] or in code with [method add_action] and [method action_add_event]. See [method Node._input]. - http://docs.godotengine.org/en/stable/learning/features/inputs/inputevent.html#inputmap + http://docs.godotengine.org/en/3.0/learning/features/inputs/inputevent.html#inputmap diff --git a/doc/classes/JavaScript.xml b/doc/classes/JavaScript.xml index 7bad3d80f4e..f6ba522f1a9 100644 --- a/doc/classes/JavaScript.xml +++ b/doc/classes/JavaScript.xml @@ -7,7 +7,7 @@ The JavaScript singleton is implemented only in HTML5 export. It's used to access the browser's JavaScript context. This allows interaction with embedding pages or calling third-party JavaScript APIs. - http://docs.godotengine.org/en/stable/learning/workflow/export/exporting_for_web.html#calling-javascript-from-script + http://docs.godotengine.org/en/3.0/learning/workflow/export/exporting_for_web.html#calling-javascript-from-script diff --git a/doc/classes/KinematicBody.xml b/doc/classes/KinematicBody.xml index 7ddc74bdd56..bda749fc9d9 100644 --- a/doc/classes/KinematicBody.xml +++ b/doc/classes/KinematicBody.xml @@ -9,6 +9,7 @@ Kinematic Characters: KinematicBody also has an API for moving objects (the [method move_and_collide] and [method move_and_slide] methods) while performing collision tests. This makes them really useful to implement characters that collide against a world, but that don't require advanced physics. + http://docs.godotengine.org/en/3.0/learning/features/physics/kinematic_character_2d.html diff --git a/doc/classes/Light.xml b/doc/classes/Light.xml index 4862558aaa9..073cc34069f 100644 --- a/doc/classes/Light.xml +++ b/doc/classes/Light.xml @@ -7,6 +7,7 @@ Light is the abstract base class for light nodes, so it shouldn't be used directly (It can't be instanced). Other types of light nodes inherit from it. Light contains the common variables and parameters used for lighting. + http://docs.godotengine.org/en/3.0/learning/features/3d/lights_and_shadows.html diff --git a/doc/classes/NetworkedMultiplayerPeer.xml b/doc/classes/NetworkedMultiplayerPeer.xml index 004a0d52b7f..441768d6434 100644 --- a/doc/classes/NetworkedMultiplayerPeer.xml +++ b/doc/classes/NetworkedMultiplayerPeer.xml @@ -7,6 +7,7 @@ Manages the connection to network peers. Assigns unique IDs to each client connected to the server. + http://docs.godotengine.org/en/3.0/learning/features/networking/high_level_multiplayer.html diff --git a/doc/classes/Node.xml b/doc/classes/Node.xml index 51d11104b63..657c4b443cd 100644 --- a/doc/classes/Node.xml +++ b/doc/classes/Node.xml @@ -16,6 +16,7 @@ [b]Networking with nodes:[/b] After connecting to a server (or making one, see [NetworkedMultiplayerENet]) it is possible to use the built-in RPC (remote procedure call) system to communicate over the network. By calling [method rpc] with a method name, it will be called locally and in all connected peers (peers = clients and the server that accepts connections), with behaviour varying depending on the network mode ([method set_network_mode]) of the receiving peer. To identify which node receives the RPC call Godot will use its [NodePath] (make sure node names are the same on all peers). + http://docs.godotengine.org/en/3.0/learning/step_by_step/scenes_and_nodes.html diff --git a/doc/classes/Node2D.xml b/doc/classes/Node2D.xml index 8fb9e88d470..882327db0a3 100644 --- a/doc/classes/Node2D.xml +++ b/doc/classes/Node2D.xml @@ -7,6 +7,7 @@ A 2D game object, with a position, rotation and scale. All 2D physics nodes and sprites inherit from Node2D. Use Node2D as a parent node to move, scale and rotate children in a 2D project. Also gives control on the node's render order. + http://docs.godotengine.org/en/3.0/learning/features/2d/custom_drawing_in_2d.html diff --git a/doc/classes/OmniLight.xml b/doc/classes/OmniLight.xml index 9848419c29e..d9f7d2c07e0 100644 --- a/doc/classes/OmniLight.xml +++ b/doc/classes/OmniLight.xml @@ -7,6 +7,7 @@ An OmniDirectional light is a type of [Light] node that emits lights in all directions. The light is attenuated through the distance and this attenuation can be configured by changing the energy, radius and attenuation parameters of [Light]. + http://docs.godotengine.org/en/3.0/learning/features/3d/lights_and_shadows.html diff --git a/doc/classes/Physics2DDirectSpaceState.xml b/doc/classes/Physics2DDirectSpaceState.xml index 845425d2721..f1086e86e86 100644 --- a/doc/classes/Physics2DDirectSpaceState.xml +++ b/doc/classes/Physics2DDirectSpaceState.xml @@ -7,6 +7,7 @@ Direct access object to a space in the [Physics2DServer]. It's used mainly to do queries against objects and areas residing in a given space. + http://docs.godotengine.org/en/3.0/learning/features/physics/ray-casting.html diff --git a/doc/classes/PhysicsBody.xml b/doc/classes/PhysicsBody.xml index aec7f76d1c6..99b5629ebaf 100644 --- a/doc/classes/PhysicsBody.xml +++ b/doc/classes/PhysicsBody.xml @@ -7,6 +7,7 @@ PhysicsBody is an abstract base class for implementing a physics body. All *Body types inherit from it. + http://docs.godotengine.org/en/3.0/learning/features/physics/physics_introduction.html diff --git a/doc/classes/PhysicsBody2D.xml b/doc/classes/PhysicsBody2D.xml index f974e12db19..c82e404e4f8 100644 --- a/doc/classes/PhysicsBody2D.xml +++ b/doc/classes/PhysicsBody2D.xml @@ -7,6 +7,7 @@ PhysicsBody2D is an abstract base class for implementing a physics body. All *Body2D types inherit from it. + http://docs.godotengine.org/en/3.0/learning/features/physics/physics_introduction.html diff --git a/doc/classes/PhysicsDirectSpaceState.xml b/doc/classes/PhysicsDirectSpaceState.xml index 07e65dd0041..d02f2261eae 100644 --- a/doc/classes/PhysicsDirectSpaceState.xml +++ b/doc/classes/PhysicsDirectSpaceState.xml @@ -7,6 +7,7 @@ Direct access object to a space in the [PhysicsServer]. It's used mainly to do queries against objects and areas residing in a given space. + http://docs.godotengine.org/en/3.0/learning/features/physics/ray-casting.html diff --git a/doc/classes/Plane.xml b/doc/classes/Plane.xml index ae6f2215d28..c69730ebee2 100644 --- a/doc/classes/Plane.xml +++ b/doc/classes/Plane.xml @@ -7,6 +7,7 @@ Plane represents a normalized plane equation. Basically, "normal" is the normal of the plane (a,b,c normalized), and "d" is the distance from the origin to the plane (in the direction of "normal"). "Over" or "Above" the plane is considered the side of the plane towards where the normal is pointing. + http://docs.godotengine.org/en/3.0/learning/features/math/index.html diff --git a/doc/classes/Rect2.xml b/doc/classes/Rect2.xml index 8dea117f84f..8301891220d 100644 --- a/doc/classes/Rect2.xml +++ b/doc/classes/Rect2.xml @@ -7,6 +7,7 @@ Rect2 consists of a position, a size, and several utility functions. It is typically used for fast overlap tests. + http://docs.godotengine.org/en/3.0/learning/features/math/index.html diff --git a/doc/classes/ReflectionProbe.xml b/doc/classes/ReflectionProbe.xml index afa170ff109..0a6f534fe68 100644 --- a/doc/classes/ReflectionProbe.xml +++ b/doc/classes/ReflectionProbe.xml @@ -5,6 +5,7 @@ + http://docs.godotengine.org/en/3.0/learning/features/3d/reflection_probes.html diff --git a/doc/classes/RichTextLabel.xml b/doc/classes/RichTextLabel.xml index 1eaa9dbc8c2..70631c6c615 100644 --- a/doc/classes/RichTextLabel.xml +++ b/doc/classes/RichTextLabel.xml @@ -8,6 +8,7 @@ Note that assignments to [member bbcode_text] clear the tag stack and reconstruct it from the property's contents. Any edits made to [member bbcode_text] will erase previous edits made from other manual sources such as [method append_bbcode] and the [code]push_*[/code] / [method pop] methods. + http://docs.godotengine.org/en/3.0/learning/features/gui/bbcode_in_richtextlabel.html diff --git a/doc/classes/RigidBody.xml b/doc/classes/RigidBody.xml index c42ed78a65c..247be1d433c 100644 --- a/doc/classes/RigidBody.xml +++ b/doc/classes/RigidBody.xml @@ -11,6 +11,7 @@ As a warning, don't change RigidBody's position every frame or very often. Sporadic changes work fine, but physics runs at a different granularity (fixed hz) than usual rendering (process callback) and maybe even in a separate thread, so changing this from a process loop will yield strange behavior. + http://docs.godotengine.org/en/3.0/learning/features/physics/physics_introduction.html diff --git a/doc/classes/SceneTree.xml b/doc/classes/SceneTree.xml index 6625d70f5cf..28eba6ae8fc 100644 --- a/doc/classes/SceneTree.xml +++ b/doc/classes/SceneTree.xml @@ -5,6 +5,8 @@ + http://docs.godotengine.org/en/3.0/learning/step_by_step/scene_tree.html + http://docs.godotengine.org/en/3.0/learning/features/viewports/multiple_resolutions.html diff --git a/doc/classes/Script.xml b/doc/classes/Script.xml index df96d2a6cdb..bbe360cb8c9 100644 --- a/doc/classes/Script.xml +++ b/doc/classes/Script.xml @@ -8,6 +8,7 @@ The 'new' method of a script subclass creates a new instance. [method Object.set_script] extends an existing object, if that object's class matches one of the script's base classes. + http://docs.godotengine.org/en/3.0/learning/step_by_step/scripting.html diff --git a/doc/classes/Shader.xml b/doc/classes/Shader.xml index ebd1eb69294..14c47940aab 100644 --- a/doc/classes/Shader.xml +++ b/doc/classes/Shader.xml @@ -7,6 +7,7 @@ To be changed, ignore. + http://docs.godotengine.org/en/3.0/learning/features/shading/index.html diff --git a/doc/classes/Shape.xml b/doc/classes/Shape.xml index 15f32f95a56..6cedfd937ca 100644 --- a/doc/classes/Shape.xml +++ b/doc/classes/Shape.xml @@ -7,6 +7,7 @@ Base class for all 3D shape resources. All 3D shapes that inherit from this can be set into a [PhysicsBody] or [Area]. + http://docs.godotengine.org/en/3.0/learning/features/physics/physics_introduction.html diff --git a/doc/classes/Shape2D.xml b/doc/classes/Shape2D.xml index 09e1883ec4f..c835ab49221 100644 --- a/doc/classes/Shape2D.xml +++ b/doc/classes/Shape2D.xml @@ -7,6 +7,7 @@ Base class for all 2D Shapes. All 2D shape types inherit from this. + http://docs.godotengine.org/en/3.0/learning/features/physics/physics_introduction.html diff --git a/doc/classes/Spatial.xml b/doc/classes/Spatial.xml index 0cf2b49da32..f9e53673dc0 100644 --- a/doc/classes/Spatial.xml +++ b/doc/classes/Spatial.xml @@ -9,6 +9,7 @@ Affine operations (rotate, scale, translate) happen in parent's local coordinate system, unless the Spatial object is set as top level. Affine operations in this coordinate system correspond to direct affine operations on the Spatial's transform. The word local below refers to this coordinate system. The coordinate system that is attached to the Spatial object itself is referred to as object-local coordinate system. + http://docs.godotengine.org/en/3.0/learning/features/3d/introduction_to_3d.html diff --git a/doc/classes/SpatialMaterial.xml b/doc/classes/SpatialMaterial.xml index f3b7ef3a400..617fc10a47e 100644 --- a/doc/classes/SpatialMaterial.xml +++ b/doc/classes/SpatialMaterial.xml @@ -5,6 +5,7 @@ + http://docs.godotengine.org/en/3.0/learning/features/3d/spatial_material.html diff --git a/doc/classes/SpotLight.xml b/doc/classes/SpotLight.xml index 498a7fc0261..58489cae2cc 100644 --- a/doc/classes/SpotLight.xml +++ b/doc/classes/SpotLight.xml @@ -7,6 +7,7 @@ A SpotLight light is a type of [Light] node that emits lights in a specific direction, in the shape of a cone. The light is attenuated through the distance and this attenuation can be configured by changing the energy, radius and attenuation parameters of [Light]. TODO: Image of a spotlight. + http://docs.godotengine.org/en/3.0/learning/features/3d/lights_and_shadows.html diff --git a/doc/classes/StreamPeerSSL.xml b/doc/classes/StreamPeerSSL.xml index 073f324f3a7..6503e8ad734 100644 --- a/doc/classes/StreamPeerSSL.xml +++ b/doc/classes/StreamPeerSSL.xml @@ -7,6 +7,7 @@ SSL Stream peer. This object can be used to connect to SSL servers. + http://docs.godotengine.org/en/3.0/learning/features/networking/ssl_certificates.html diff --git a/doc/classes/TileMap.xml b/doc/classes/TileMap.xml index b22ee11397b..58630780c8e 100644 --- a/doc/classes/TileMap.xml +++ b/doc/classes/TileMap.xml @@ -7,6 +7,7 @@ Node for 2D tile-based maps. Tilemaps use a [TileSet] which contain a list of tiles (textures plus optional collision, navigation, and/or occluder shapes) which are used to create grid-based maps. + http://docs.godotengine.org/en/3.0/learning/features/2d/using_tilemaps.html diff --git a/doc/classes/Transform.xml b/doc/classes/Transform.xml index 5172543cd10..4d093c8bfc6 100644 --- a/doc/classes/Transform.xml +++ b/doc/classes/Transform.xml @@ -7,6 +7,7 @@ Represents one or many transformations in 3D space such as translation, rotation, or scaling. It consists of a [Basis] "basis" and an [Vector3] "origin". It is similar to a 3x4 matrix. + http://docs.godotengine.org/en/3.0/learning/features/math/index.html diff --git a/doc/classes/Vector2.xml b/doc/classes/Vector2.xml index e1892c48c89..c7ed45dfcea 100644 --- a/doc/classes/Vector2.xml +++ b/doc/classes/Vector2.xml @@ -7,6 +7,7 @@ 2-element structure that can be used to represent positions in 2d-space, or any other pair of numeric values. + http://docs.godotengine.org/en/3.0/learning/features/math/index.html diff --git a/doc/classes/Vector3.xml b/doc/classes/Vector3.xml index 7a1bc5339a2..a0c09a752c5 100644 --- a/doc/classes/Vector3.xml +++ b/doc/classes/Vector3.xml @@ -7,6 +7,7 @@ Vector3 is one of the core classes of the engine, and includes several built-in helper functions to perform basic vector math operations. + http://docs.godotengine.org/en/3.0/learning/features/math/index.html diff --git a/doc/classes/Viewport.xml b/doc/classes/Viewport.xml index 3a1f568d5e3..ad008a0c972 100644 --- a/doc/classes/Viewport.xml +++ b/doc/classes/Viewport.xml @@ -12,6 +12,8 @@ Finally, viewports can also behave as render targets, in which case they will not be visible unless the associated texture is used to draw. + http://docs.godotengine.org/en/3.0/learning/features/2d/2d_transforms.html + http://docs.godotengine.org/en/3.0/learning/features/viewports/index.html diff --git a/doc/classes/World.xml b/doc/classes/World.xml index b99871734e3..868eed787a1 100644 --- a/doc/classes/World.xml +++ b/doc/classes/World.xml @@ -7,6 +7,7 @@ Class that has everything pertaining to a world. A physics space, a visual scenario and a sound space. Spatial nodes register their resources into the current world. + http://docs.godotengine.org/en/3.0/learning/features/physics/ray-casting.html diff --git a/doc/classes/World2D.xml b/doc/classes/World2D.xml index d826f1d19a6..7abc9061aff 100644 --- a/doc/classes/World2D.xml +++ b/doc/classes/World2D.xml @@ -7,6 +7,7 @@ Class that has everything pertaining to a 2D world. A physics space, a visual scenario and a sound space. 2D nodes register their resources into the current 2D world. + http://docs.godotengine.org/en/3.0/learning/features/physics/ray-casting.html diff --git a/doc/classes/WorldEnvironment.xml b/doc/classes/WorldEnvironment.xml index 58a30c81bcc..5fee1eb56a0 100644 --- a/doc/classes/WorldEnvironment.xml +++ b/doc/classes/WorldEnvironment.xml @@ -7,6 +7,7 @@ The [code]WorldEnvironment[/code] node can be added to a scene in order to set default [Environment] variables for the scene. The [code]WorldEnvironment[/code] can be overridden by an [Environment] node set on the current [Camera]. Additionally, only one [code]WorldEnvironment[/code] may be instanced in a given scene at a time. The [code]WorldEnvironment[/code] allows the user to specify default lighting parameters (e.g. ambient lighting), various post-processing effects (e.g. SSAO, DOF, Tonemapping), and how to draw the background (e.g. solid color, skybox). + http://docs.godotengine.org/en/3.0/learning/features/3d/environment_and_post_processing.html diff --git a/editor/editor_help.cpp b/editor/editor_help.cpp index d2883cab07d..198a52fef25 100644 --- a/editor/editor_help.cpp +++ b/editor/editor_help.cpp @@ -37,6 +37,8 @@ #include "os/keyboard.h" #define CONTRIBUTE_URL "http://docs.godotengine.org/en/latest/community/contributing/updating_the_class_reference.html" +#define CONTRIBUTE2_URL "https://github.com/godotengine/godot-docs" +#define REQUEST_URL "https://github.com/godotengine/godot-docs/issues/new" void EditorHelpSearch::popup() { @@ -1290,6 +1292,46 @@ Error EditorHelp::_goto_desc(const String &p_class, int p_vscr) { class_desc->add_newline(); } + { + + class_desc->push_color(title_color); + class_desc->push_font(doc_title_font); + class_desc->add_text(TTR("Online Tutorials:")); + class_desc->pop(); + class_desc->pop(); + class_desc->push_indent(1); + + class_desc->push_font(doc_code_font); + + class_desc->add_newline(); + // class_desc->add_newline(); + + Vector tutorials = cd.tutorials.split_spaces(); + if (tutorials.size() != 0) { + + for (int i = 0; i < tutorials.size(); i++) { + String link = tutorials[i]; + String linktxt = link; + int seppos = linktxt.find("//"); + if (seppos != -1) { + linktxt = link.right(seppos + 2); + } + + class_desc->push_color(symbol_color); + class_desc->append_bbcode("[url=" + link + "]" + linktxt + "[/url]"); + class_desc->pop(); + class_desc->add_newline(); + } + } else { + class_desc->push_color(comment_color); + class_desc->append_bbcode(TTR("There are currently no tutorials for this class, you can [color=$color][url=$url]contribute one[/url][/color] or [color=$color][url=$url2]request one[/url][/color].").replace("$url2", REQUEST_URL).replace("$url", CONTRIBUTE2_URL).replace("$color", link_color_text)); + class_desc->pop(); + } + class_desc->pop(); + class_desc->pop(); + class_desc->add_newline(); + class_desc->add_newline(); + } if (property_descr) { section_line.push_back(Pair(TTR("Properties"), class_desc->get_line_count() - 2)); diff --git a/modules/gdscript/doc_classes/GDScript.xml b/modules/gdscript/doc_classes/GDScript.xml index 29b2319f2e2..31328ab8346 100644 --- a/modules/gdscript/doc_classes/GDScript.xml +++ b/modules/gdscript/doc_classes/GDScript.xml @@ -8,6 +8,7 @@ [method new] creates a new instance of the script. [method Object.set_script] extends an existing object, if that object's class matches one of the script's base classes. + http://docs.godotengine.org/en/3.0/learning/scripting/gdscript/index.html diff --git a/modules/gridmap/doc_classes/GridMap.xml b/modules/gridmap/doc_classes/GridMap.xml index 9f74acc9490..788aa5c6b33 100644 --- a/modules/gridmap/doc_classes/GridMap.xml +++ b/modules/gridmap/doc_classes/GridMap.xml @@ -10,6 +10,7 @@ A GridMap is split into a sparse collection of octants for efficient rendering and physics processing. Every octant has the same dimensions and can contain several cells. + http://docs.godotengine.org/en/3.0/learning/features/3d/using_gridmaps.html diff --git a/modules/visual_script/doc_classes/VisualScript.xml b/modules/visual_script/doc_classes/VisualScript.xml index ae3f116f741..fa94e9ef865 100644 --- a/modules/visual_script/doc_classes/VisualScript.xml +++ b/modules/visual_script/doc_classes/VisualScript.xml @@ -9,6 +9,7 @@ You are most likely to use this class via the Visual Script editor or when writing plugins for it. + http://docs.godotengine.org/en/3.0/learning/scripting/visual_script/index.html