summaryrefslogtreecommitdiff
path: root/modules/mono/glue
AgeCommit message (Collapse)Author
2020-11-16Merge pull request #43250 from aaronfranke/strext-lstripRémi Verschelde
Add LStrip, RStrip, and HexEncode to C#
2020-11-13Improve comments in Color documentationAaron Franke
2020-11-11Removing unneeded FuncRef code in C#Grzegorz Puławski
2020-11-10Minor clamp and float fixesAaron Franke
2020-11-10Updated gd_glue.cpp to work with the latest changes in the variant refactoringAdrian Adeva
Without this change the engine dont compile with the mono module enabled.
2020-11-09Add HexEncode to C#Aaron Franke
2020-11-09Add LStrip and RStrip to C# stringsAaron Franke
2020-11-07Reorganized core/ directory, it was too fatty alreadyreduz
-Removed FuncRef, since Callable makes it obsolete -Removed int_types.h as its obsolete in c++11+ -Changed color names code
2020-11-07[Mono] Added Shuffle method to ArrayYuri Roubinsky
2020-11-06Exposed randi_range to global funcs + renamed rand_range to randf_rangeYuri Roubinsky
2020-11-03Remove `Color.contrasted()` as its behavior is barely usefulHugo Locurcio
Returning the most contrasting color isn't a trivial task, as there are often many possible choices. It's usually best left for the user to implement using a script.
2020-10-26C#: Fix custom event signals crash on hot-reloadIgnacio Etcheverry
Cleanup and re-initialization of event signals before and after hot-reload should be working correctly now.
2020-10-18Refactor MethodBind to use variadic templatesreduz
Removed make_binders and the old style generated binders.
2020-10-17Add GetStringFromUTF8 and GetStringFromASCIIAaron Franke
2020-10-06Improve the Vector2 rotated code in C#Aaron Franke
2020-09-24Merge pull request #42293 from ricardoalcantara/fix_basis_csharpRémi Verschelde
Basis RotationQuat should be public.
2020-09-24Basis RotationQuat should be public.Ricardo Alcantara
2020-09-23Fix C# string.IsAbsPath()Zae
2020-09-16Fix ExprMatch stackoverflowRaul Santos
2020-09-12Add concatenation support and a new ctor to Godot.Collections.ArrayAaron Franke
2020-09-08Change inequality comparison operators to use exact equalityAaron Franke
2020-09-01Simplify html_is_valid and allow it to work with 3 and 4 hex digitsAaron Franke
2020-09-01Change Color HTML conversion from ARGB to RGBAAaron Franke
Also add support for 3 and 4 digit values in C#. Now it actually matches the HTML/CSS spec.
2020-07-26Merge pull request #40595 from neikeq/godot-net-sdk-and-net-standardRémi Verschelde
C#: Switch games to MSBuild Sdks and .NET Standard
2020-07-25C#: Switch games to MSBuild Sdks and .NET StandardIgnacio Etcheverry
Godot.NET.Sdk ------------- Godot uses its own custom MSBuild Sdk for game projects. This new Sdk adds its own functionality on top of 'Microsoft.NET.Sdk'. The new Sdk is resolved from the NuGet package. All the default boilerplate was moved from game projects to the Sdk. The default csproj for game project can now be as simple as: ``` <Project Sdk="Godot.NET.Sdk/4.0.0-dev2"> <PropertyGroup> <TargetFramework>netstandard2.1</TargetFramework> </PropertyGroup> </Project> ``` Source files are included by automatically so Godot no longer needs to keep the csproj in sync when creating new source files. Define constants ---------------- Godot defines a list of constants for conditional compilation. When exporting games, this list also included engine 'features' and platform 'bits'. There were a few problems with that: - The 'features' constants were only defined when exporting games. Not when building the game for running in the editor player. - If the project was built externally by an IDE, the constants wouldn't be defined at all. The new Sdk assigns default values to these constants when not built from the Godot editor, i.e.: when built from an IDE or from the command line. The default define constants are determined from the system MSBuild is running on. However, it's not possible for MSBuild to determine the set of supported engine features. It's also not possible to determine if a project is being built to run on a 32-bit or 64-bit Godot executable. As such the 'features' and 'bits' constants had to be removed. The benefit of checking those at compile time was questionable, and they can still be checked at runtime. The new list of define constants includes: - GODOT - GODOT_<PLATFORM> Defaults to the platform MSBuild is running on. - GODOT_<PC/MOBILE/WEB> - TOOLS When building with the 'Debug' configuration (editor and editor player). - GODOT_REAL_T_IS_DOUBLE Not defined by default unless $(GodotRealTIsDouble) is overriden to be 'true'. .NET Standard ------------- The target framework of game projects was changed to 'netstandard2.1'.
2020-07-22Fix typos in GodotSharp code docsmega-bit
2020-07-21Fix XML in Plane.csAaron Franke
2020-07-21Update core documentation to match recent C# changesAaron Franke
Also a few minor API changes like adding AABB.abs() Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
2020-07-11Add C# XML documentation to core C# math typesAaron Franke
2020-07-05Merge pull request #40137 from neikeq/fix-clangtidy-warnings-monoRémi Verschelde
Mono/C#: Fix several clang-tidy warnings and cleanup
2020-07-05Mono/C#: Fix several clang-tidy warnings and cleanupIgnacio Etcheverry
2020-07-03fix crash when pass null in print array in GD.printendlesstravel
fix crash when pass null in print array in GD.print 2 fix crash when pass null in print array in GD.print 3 fix space
2020-06-19[mono] implement generics GetNodesInGroupPaul Joannon
2020-05-14Style: clang-format: Disable KeepEmptyLinesAtTheStartOfBlocksRémi Verschelde
Which means that reduz' beloved style which we all became used to will now be changed automatically to remove the first empty line. This makes us lean closer to 1TBS (the one true brace style) instead of hybridating it with some Allman-inspired spacing. There's still the case of braces around single-statement blocks that needs to be addressed (but clang-format can't help with that, but clang-tidy may if we agree about it). Part of #33027.
2020-05-11C#: Support for building with the dotnet CLIIgnacio Etcheverry
By adding a reference to the 'Microsoft.NETFramework.ReferenceAssemblies' nuget package, we can build projects targeting .NET Framework with the dotnet CLI. By referencing this package we also don't need to install Mono on Linux/macOS or .NET Framework on Windows, as the assemblies are taken from the package.
2020-05-10Revert "Renamed plane's d to distance"Rémi Verschelde
This reverts commit ec7b481170dcd6a7b4cf0e6c1221e204ff7945f3. This was wrong, `d` is not a distance but the `d` constant in the parametric equation `ax + by + cz = d` describing the plane.
2020-05-10Renamed plane's d to distanceMarcus Elg
2020-05-09C#: Remove StringExtensions.Empty() functionIgnacio Etcheverry
Causes issues with some editors as it's confused with `string.Empty`. Should use `string.IsNullOrEmpty(str)` instead.
2020-05-07Merge pull request #36379 from aaronfranke/color-constructorsRémi Verschelde
Add a Color constructor for Color with alpha
2020-04-29Color with alpha constructorAaron Franke
2020-04-29Fix growMargin() not returning modified Rect2/Rect2iNannaquin
2020-04-29[Mono] Rename LinearInterpolate to LerpAaron Franke
2020-04-23C#: Revert marshalling of IDictionary/IEnumerable implementing typesIgnacio Etcheverry
Added marshalling for `System.Collections.Generic.List<T>` and `System.Collections.Generic.Dictionary<TKey, TValue>`.
2020-04-02Replace NULL with nullptrlupoDharkael
2020-03-30doc: Update classref with node renamesRémi Verschelde
A few extra renames for classes which were missed in last week's PRs.
2020-03-18Merge pull request #36756 from aaronfranke/mono-vec2i3iIgnacio Roldán Etcheverry
[Mono] Add Vector2i and Vector3i
2020-03-17[Mono] Add Vector2i, Vector3i, and Rect2iAaron Franke
These have conversion operators between their non-integer equivalents. Vector2i to Vector2 is implicit, while Vector2 to Vector2i is explicit. All conversion code is done in the integer files, so Vector2.cs contains no reference to Vector2i etc.
2020-03-17Mono/C#: Optimize the way we store GC handles for scriptsIgnacio Etcheverry
Don't store GC handles for C# script instances and instance bindings as 'Ref<MonoGCHandle>'; store the raw data instead. Initially this was not possible as we needed to store a Variant, but this had not been the case for a looong time yet the stored type was never updated.
2020-03-17Fix C# bindings after recent breaking changesIgnacio Etcheverry
Implementation for new Variant types Callable, Signal, StringName. Added support for PackedInt64Array and PackedFloat64Array. Add generation of signal members as events, as well as support for user created signals as events. NOTE: As of now, raising such events will not emit the signal. As such, one must use `EmitSignal` instead of raising the event directly. Removed old ThreadLocal fallback class. It's safe to use thread_local now since it's supported on all minimum versions of compilers we support.
2020-03-14C#: Replace uses of old Configuration and update old csprojsIgnacio Etcheverry