summaryrefslogtreecommitdiff
path: root/modules/multiplayer/multiplayer_spawner.cpp
AgeCommit message (Collapse)Author
2023-02-12[MP] Fix MultiplayerSpawner not connecting to child_entered_tree.Fabio Alessandrelli
The connection used to happen during enter_tree, but this was causing issues when setting the spawnable scenes from code. The spawner now connects/disconnects to the signal during add_spawnable_scene/clear_spawnable_scenes if the node is inside tree and has a valid spawn_path.
2023-01-17[MP] Fix nested spawning during "ready".Fabio Alessandrelli
We want our spawns to be notified after ready, but we need to notify them in the order they entered tree, so that nested spawners can be used during "ready" (instead of having to await a frame).
2023-01-09[MP] Convert _spawn_custom to a Callable property.Fabio Alessandrelli
Renamed to "spawn_function". Allow both custom spawn and auto spawn list to co-exist. This makes it possible to implement custom spawn without being forced to attach a script to MultiplayerSpawner directly.
2023-01-05One Copyright Update to rule them allRémi Verschelde
As many open source projects have started doing it, we're removing the current year from the copyright notice, so that we don't need to bump it every year. It seems like only the first year of publication is technically relevant for copyright notices, and even that seems to be something that many companies stopped listing altogether (in a version controlled codebase, the commits are a much better source of date of publication than a hardcoded copyright statement). We also now list Godot Engine contributors first as we're collectively the current maintainers of the project, and we clarify that the "exclusive" copyright of the co-founders covers the timespan before opensourcing (their further contributions are included as part of Godot Engine contributors). Also fixed "cf." Frenchism - it's meant as "refer to / see".
2022-09-30Fix typos with codespellRémi Verschelde
Using codespell 2.3-dev from current git. And fix typo in `methods.py` for `vsproj=yes` option (still won't work though).
2022-09-19Change return type of `get_configuration_warnings` to `PackedStringArray`Marc Gilleron
2022-09-17[MP] Add warnings to spawner and synchronizer.Fabio Alessandrelli
MultiplayerSpawner: - When spawn_path is invalid. - When the auto spawn list is empty and _spawn_custom is not overridden. Note: We remove the warning for placeholder scripts since there's no way of knowing if they have a certain method. MultiplayerSynchronizer: - When root_path is invalid.
2022-09-13do not load PackedScene from spawner until instantiatingNathan Franke
2022-09-12[Multiplayer] Fix crash in spawner get_spawnable_scene.Fabio Alessandrelli
2022-09-06Rename CONNECT_ONESHOT TO CONNECT_ONE_SHOTMicky
For consistency. Every other exposed `one_shot` is spaced out like this.
2022-07-30document multiplayer replication classes, small changes to multiplayer spawnerNathan Franke
2022-07-29Remove Signal connect bindsJuan Linietsky
Remove the optional argument p_binds from `Object::connect` since it was deprecated by Callable.bind(). Changed all uses of it to Callable.bind()
2022-07-26[Net] Modularize multiplayer, expose MultiplayerAPI to extensions.Fabio Alessandrelli
- RPC configurations are now dictionaries. - Script.get_rpc_methods renamed to Script.get_rpc_config. - Node.rpc[_id] and Callable.rpc now return an Error. - Refactor MultiplayerAPI to allow extension. - New MultiplayerAPI.rpc method with Array argument (for scripts). - Move the default MultiplayerAPI implementation to a module.