Age | Commit message (Collapse) | Author |
|
Fixes #25316.
|
|
This property returns an instance of the singleton.
The purpose of this is to allow using methods from the base class like 'Connect'.
Since all Godot singletons inherit Object, the type of the returned instance is Godot.Object.
|
|
C#: Make GD.Range return IEnumerable instead of array
|
|
- Make NodePath and RID sealed classes.
- Renamed rand_range to RandRange.
|
|
Fix Godot.Reference marshalling from MonoObject* to Variant
|
|
C#: Throw ObjectDisposedException from disposed wrapper classes
|
|
C#: Add random functions to GD class
|
|
|
|
|
|
|
|
Closes #24753
|
|
Fixes #25903
|
|
Need to cast Ref<T> to Variant instead of constructing Variant from Object*, otherwise the Variant won't hold a reference.
|
|
Ensure classes match their header filename
|
|
|
|
Renamed:
- `modules/mono/mono_gd/gd_mono_class_member.h` -> `i_mono_class_member.h`
- `modules/upnp/upnpdevice.h` -> `upnp_device.h`
- `modules/websocket/websocket_multiplayer.h` -> `websocket_multiplayer_peer.h`
|
|
Use script instance binding for objects constructed from C#
|
|
Also drop some unused files.
Renamed:
- `core/dvector.h` -> `pool_vector.h`
- `core/io/resource_import.h` -> `resource_importer.h`
- `core/sort.h` -> `sort_array.h`
- `core/string_db.h` -> `string_name.h`
Dropped:
- `core/allocators.h`
- `core/os/shell.h`
- `core/variant_construct_string.cpp`
|
|
|
|
[Mono] Fix Transform2D origin
|
|
Windows: Default to system MSBuild and add VSCode hint path
|
|
|
|
Don't pass FrameworkPathOverride to MSBuild. It's causing issues with some nuget packages.
|
|
Do not initialize Mono if 'res://.mono/' and mscorlib are missing
|
|
Fix check to determine if [[noreturn]] attribute is usable
|
|
|
|
This is the whole reason 'fill_search_dirs' was added for, yet somehow I forgot to pass the config parameter.
|
|
This is needed to avoid aborting due to missing mscorlib for projects that do not use C#.
If 'res://.mono/' exists, then we assume the project uses C#, in which case a missing mscorlib should still abort.
|
|
|
|
Only possible if the object class is a "native type". If the object class is a user class (that derives a "native type") then a script is needed.
Since CSharpLanguage does cleanup of script instance bindings when finished, cases like #25621 will no longer cause problems.
Fixed ~Object() trying to free script instance bindings after the language has already been removed, which would result in a NULL dereference.
|
|
Previously this was only done when building the script for running the game. This was a problem because the user could want to build the project manually with the "Build project" button, to then run the game from the command line or similar.
|
|
|
|
Mono: Lifetime fixes for CSharpInstance and instance binding data
|
|
|
|
Avoid CSharpInstance from accessing its state after self destructing (by deleting the Reference owner).
It's now safe to replace the script instance without leaking or crashing.
Also fixed godot_icall_Object_weakref return reference being freed before returning.
|
|
Mono: Fix MonoPosixHelper not being found
|
|
|
|
|
|
To help users writing good cross-platform code, Godot's
`FileAccessWindows:open()` will issue a warning on case mismatch, which
happens here with capitalized extensions given by `PATHEXT` compared to
actual file extensions which are lowercase 99% of the time.
Fixes #25368.
|
|
|
|
Add environment variable to specify a custom --debugger-agent for mono.
|
|
|
|
BaseIntermediateOutputPath seems to be empty by default. The workaround is to explicitly set it.
Also fixed passing char instead of char[] to String.Split. Why was this even working with Mono?
|
|
C# Bindings Generator: Fix vararg methods with custom return type
|
|
C#: Fix trying to build when there's no solution
|
|
|
|
This would cause errors that shouldn't happen unless there was something to build.
|
|
|
|
Fix properties being lost when reloading placeholder GDScript instance
|
|
Some used 'is_valid()' checks, others not. Validity is already checked in 'unref()',
and 'remove_resource_format_*()' has an ERR_FAIL condition on 'is_null()' already
(which shouldn't happen since we're only unregistering things that we previously
registered.
Also add missing GDCLASS statement in ResourceFormatLoaderVideoStreamGDNative,
missed in #20552 which was last amended before #19501 was merged.
|