summaryrefslogtreecommitdiff
path: root/modules
AgeCommit message (Collapse)Author
2021-08-23Entirely removes BIND_VMETHOD in favor of GDVIRTUALreduz
* `_gui_input`, `_input`, `_unhandled_input` and `_unhandled_key_input` are now regular C++ virutal functions. * Everything else converted to GDVIRTUAL * BIND_VMETHOD is gone, always use the new syntax from now on. Creating `_gui_input` method and using the binder to register events will no longer work, simply override the virtual function now.
2021-08-22Replace BIND_VMETHOD by new GDVIRTUAL syntaxreduz
* New syntax is type safe. * New syntax allows for type safe virtuals in native extensions. * New syntax permits extremely fast calling. Note: Everything was replaced where possible except for `_gui_input` `_input` and `_unhandled_input`. These will require API rework on a separate PR as they work different than the rest of the functions. Added a new method flag METHOD_FLAG_OBJECT_CORE, used internally. Allows to not dump the core virtuals like `_notification` to the json API, since each language will implement those as it is best fits.
2021-08-21Merge pull request #51919 from raulsntos/csharp-renamesAaron Franke
Rename C# string extensions to follow GDScript
2021-08-20Merge pull request #49105 from vnen/gdscript-inner-preload-typeRémi Verschelde
GDScript: Fix inner classes and preloaded scripts as types
2021-08-20GDScript: Make singleton functions be seen as staticGeorge Marques
Since those can be called without an instance.
2021-08-20Rename C# string extensions to follow GDScriptRaul Santos
Follow up to d9d77291bca8dd1e87aa4d9e40de96d99e5ef1f6. Renames `String.Extension` -> `String.GetExtension()` and `String.BaseName()` -> `String.GetBaseName()`. This makes those methods more consistent with GDScript and with the `GetBaseDir` method.
2021-08-20Merge pull request #51916 from mhilbrunner/vs-fixRémi Verschelde
Fix VisualScriptEditor after namespaces
2021-08-20Fix VisualScriptEditor after namespacesMax Hilbrunner
2021-08-20C#: Fix bindings generator for Callable argument default valueIgnacio Roldán Etcheverry
Previously there weren't any Callable arguments with a default value, but d4dd859991205e6cecfa9a0553b89db47c983d0b introduced one.
2021-08-20Merge pull request #51902 from vnen/variant-internal-constructorRémi Verschelde
Fix initialization of objects in VariantInternal
2021-08-19Fix initialization of objects in VariantInternalGeorge Marques
2021-08-18GDScript: Fix memory leak when using self class as typeGeorge Marques
2021-08-18GDScript: Fix calling builtin static functionsGeorge Marques
2021-08-18GDScript: Fix issue when calling `new()` on its ownGeorge Marques
2021-08-18GDScript: Fix inner classes and preloaded scripts as typesGeorge Marques
2021-08-18Merge pull request #51859 from nekomatata/bullet-body-motion-fixesRémi Verschelde
Fixes in Bullet body_test_motion
2021-08-18Fixes in Bullet body_test_motionPouleyKetchoupp
Synchronize fixes from the 3.x branch to keep Bullet code in sync for later, even if it's disabled for now.
2021-08-17Remove underscore hacksMax Hilbrunner
Way less cruft. :) Co-authored-by: Ignacio Roldán Etcheverry <neikeq@users.noreply.github.com>
2021-08-17Namespaces instead of underscore prefix for bindsMax Hilbrunner
Thanks to neikeq for the initial work. Co-authored-by: Ignacio Roldán Etcheverry <neikeq@users.noreply.github.com>
2021-08-17Merge pull request #51762 from nekomatata/fix-crash-gdscript-cacheRémi Verschelde
Fix crash when failing to load script from cache
2021-08-16Fix crash when failing to load script from cachePouleyKetchoupp
2021-08-16Merge pull request #51698 from Paulb23/text-editor-settingsRémi Verschelde
Reorganise text editor settings
2021-08-16Reorganise text editor settingsPaulb23
2021-08-16Fix C# native instance bindings after recent re-writeIgnacio Roldán Etcheverry
This was needed after: 44691448911f1d29d4d79dbdd5553734761e57c4
2021-08-15Add constant to vector function parameters that don't actually modify their ↵Ricard Rovira Cubeles
input. Add more overloads of vector multiplication, required by templates to compile with float=64.
2021-08-13Style: Cleanup code using `text_editor/completion/use_single_quotes`Rémi Verschelde
2021-08-13Merge pull request #51508 from AndreaCatania/mem-placementRémi Verschelde
Refactors the memnew_placement.
2021-08-13Merge pull request #51607 from aaronfranke/includesRémi Verschelde
Fix some unnecessary includes
2021-08-13Refactors the memnew_placement.AndreaCatania
With this commit the macro `memnew_placement` uses the standard memory placement syntax: `new (mem) TheClass()`, and removes the outdated and not used syntax: ``` _ALWAYS_INLINE_ void *operator new(size_t p_size, void *p_pointer, size_t check, const char *p_description) { ``` Thanks to this change, the function `memnew_placement` call is compatible with any class, and can also initialize classes with non-empty constructor: ``` // This is valid, like before. memnew_placement(mem, Variant); // This works too: memnew_placement(mem, Variant(123)); ```
2021-08-13Fix duplicate conditions.Anilforextra
2021-08-13Fix some unnecessary includesAaron Franke
2021-08-12Use real_t and double where appropriate in ParticlesAaron Franke
2021-08-12Merge pull request #51532 from nekomatata/layer-mask-accessorsRémi Verschelde
Uniformize layer names, script methods and documentation
2021-08-12Uniformize layer names, script methods and documentationPouleyKetchoupp
- Back to 1-based layer names to make it clearer in editor UI - Layer bit accessors are renamed to layer value and 1-based too - Uniform errors and documentation in render and physics - Fix a few remaining collision_layer used in place of collision_mask
2021-08-12Resource: Remove unused `_use_builtin_script()` virtual methodRémi Verschelde
And another piece of dead code found while searching for "use_builtin".
2021-08-12Fix multiple issues with CSGPolygonMarcel Admiraal
2021-08-11Make radius & height in CapsuleShape3D independentPouleyKetchoupp
Also changed CapsuleMesh to make settings consistent between render and physics.
2021-08-11Merge pull request #51500 from timothyqiu/navmesh-docRémi Verschelde
2021-08-11Improve NavigationMesh typing, parameter validation and documentationHaoyu Qiu
2021-08-11Merge pull request #47378 from aaronfranke/use-input-enumsRémi Verschelde
Use key enum instead of plain integers for input code
2021-08-11Merge pull request #51178 from Geometror/layout-options-textline-textparagraphRémi Verschelde
Various text layout improvements (TextLine, TextParagraph, Label, TextServer)
2021-08-11Various text layout improvements (TextLine, TextParagraph, Label, TextServer)Hendrik Brucker
2021-08-10Use Key enum instead of plain integersAaron Franke
2021-08-10Merge pull request #49343 from theoway/node_auto_arrangement_graph_editK. S. Ernest (iFire) Lee
Node Auto Arrangement in GraphEdit/VisualScript/VisualShader
2021-08-11Automatic arrangement of nodes in VisualScript/VisualShaders editorsUmang Kalra
This PR and commit adds the functionality to arrange nodes in VisualScript/VisualShader editor. The layout generated by this feature is compact, with minimum crossings between connections & uniform horizontal & vertical gaps between the nodes. This work has been sponsored by GSoC '21. Full list of additions/changes: • Added arrange_nodes() method in GraphEdit module. • This method computes new positions for all the selected nodes by forming blocks and compressing them. The nodes are moved to these new positions. • Adding this method to GraphEdit makes it available for use in VisualScript/VisualShaders editors and its other subclasses. • Button with an icon has been added to call arrange_nodes() in GraphEdit. • This button is inherited by VisualScript/VisualShaders editors to invoke the method. • Undo/redo is functional with this method. • By using signals in arrange_nodes(), position changes are registered in undo/redo stack of the subclass that is using the method. • Metadata of the method has been updated in ClassDB • Method description has been added to class reference of GraphEdit
2021-08-10Fix crash when parsing Dictionarykobewi
2021-08-10Merge pull request #51457 from nekomatata/moving-platforms-3dRémi Verschelde
Fix 3D moving platform logic
2021-08-09Fix 3D moving platform logicPouleyKetchoupp
Same thing that was already done in 2D, applies moving platform motion by using a call to move_and_collide that excludes the platform itself, instead of making it part of the body motion. Helps with handling walls and slopes correctly when the character walks on the moving platform. Also made some minor adjustments to the 2D version and documentation. Co-authored-by: fabriceci <fabricecipolla@gmail.com>
2021-08-09Some work on double supportAaron Franke
2021-08-10Merge pull request #51453 from Blackiris/fix-new-inherited-scriptRémi Verschelde
Fix infinite loop when creating a newly inherited GDScript file