| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
| |
We used to only cleanup path_get_cache and not path_send_cache causing
issues when a peer disconnects and then reconnects with the same ID.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
| |
Condensed some if and ERR statements. Added dots to end of error messages
Couldn't figure out EXPLAINC. These files gave me trouble: core/error_macros.h, core/io/file_access_buffered_fa.h (where is it?),
core/os/memory.cpp,
drivers/png/png_driver_common.cpp,
drivers/xaudio2/audio_driver_xaudio2.cpp (where is it?)
|
|
|
|
|
| |
Also, make spacing of "=" in the editor help a bit more consistent.
Closes #16086
|
|
|
|
|
| |
Allow calling yourself via RPC/RSET if the mode allows it.
Better error messages when you are not allowed to call yourself.
|
| |
|
| |
|
|
|
|
|
| |
This reverts commit 95ad747deaa474b30c04b01f60634f2be9a5ea18.
It introduced regressions, see #27655.
|
|
|
|
|
|
|
|
|
|
|
|
| |
Adds `FALLTHROUGH` macro to specify when a fallthrough is intentional.
Can be replaced by `[[fallthrough]]` if/when we switch to C++17.
The warning is now enabled by default for GCC on `extra` warnings level
(part of GCC's `-Wextra`). It's not enabled in Clang's `-Wextra` yet,
but we could enable it manually once we switch to C++11. There's no
equivalent feature in MSVC for now.
Fixes #26135.
|
|
|
|
|
|
|
|
| |
_can_call_mode used to call is_network_master/get_network_master
internally.
This would reset any potential last error set via ERR_EXPLAIN,
preventing it from being displayed correctly.
_can_call_mode now expects the node master ID to be passed instead.
|
|
|
|
|
|
|
|
|
| |
Network peers get_var/put_var
File get_var/store_var
GDScript/Mono/VisualScript bytes2var/var2bytes
Add MultiplayerAPI.allow_object_decoding member which deprecates PacketPeer.allow_object_decoding.
Break ABI compatibaility (API compatibility for GDNative).
|
|
|
|
| |
Add doc about allow_object_decoding in PacketPeer
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
A GDScript call to:
`multiplayer.network_peer.some_prop = true`
seems to transalte to:
```
var temp = multiplayer.network_peer
temp.some_prop = true
multiplayer.network_peer = temp
```
Which caused the MultiplayerAPI to be resetted.
The call to set_network_peer is now ignored if the peer that's beeing
set is the same as the currently set one.
|
|
|
|
|
|
|
|
|
| |
rpc_sender_id is now correctly initialized to 0 so get_rpc_sender_id()
work reliably even if called before receiving any RPC.
root_node is initialized to NULL (fix crashes when incorrectly using the
MultiplayerAPI).
clear function now resets the packet cache size to free more memory when
not running.
|
|
|
|
| |
Happy new year to the wonderful Godot community!
|
|
|
|
|
|
| |
Some of this code has been re-organized.
f
|
|
|
| |
If it can be compared to a boolean, it can be evaluated as one in-place.
|
| |
|
| |
|
| |
|
|
|
|
|
| |
NOTE: This changes the RPC_MODE_* enum values.
Games should be re-exported. GDNative rebuilt.
|
|
|
|
|
| |
The slave keyword will still be available as deprecated in 3.1 but will
be dropped from future releases.
|
|
|
|
|
|
| |
This allows more consistency in the manner we include core headers,
where previously there would be a mix of absolute, relative and
include path-dependent includes.
|
|
|
|
| |
Fix various missing arguments in bindings.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This commit makes operator[] on Vector const and adds a write proxy to it. From
now on writes to Vectors need to happen through the .write proxy. So for
instance:
Vector<int> vec;
vec.push_back(10);
std::cout << vec[0] << std::endl;
vec.write[0] = 20;
Failing to use the .write proxy will cause a compilation error.
In addition COWable datatypes can now embed a CowData pointer to their data.
This means that String, CharString, and VMap no longer use or derive from
Vector.
_ALWAYS_INLINE_ and _FORCE_INLINE_ are now equivalent for debug and non-debug
builds. This is a lot faster for Vector in the editor and while running tests.
The reason why this difference used to exist is because force-inlined methods
used to give a bad debugging experience. After extensive testing with modern
compilers this is no longer the case.
|
|
|
|
|
| |
Added as extra parameter, allow you to specify which transfer mode to
use for those specific bytes
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
Handles all the high level networking stuff
|