summaryrefslogtreecommitdiffstats
path: root/modules/multiplayer/multiplayer_spawner.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Revert "Update Node::get_configuration_warnings signature"Rémi Verschelde2024-02-171-2/+2
| | | | This reverts commit d3852deaa450d77edb30df2bb1c77bd7bc45befc.
* Update Node::get_configuration_warnings signatureRedMser2024-02-081-2/+2
|
* [Modules] Replace `ERR_FAIL_COND` with `ERR_FAIL_NULL` where applicableA Thousand Ships2023-09-261-3/+3
|
* Do not serialize `MultiplayerSpawner.spawn_function`Ninni Pipping2023-06-181-1/+1
|
* [MP] Fix MultiplayerSpawner not connecting to child_entered_tree.Fabio Alessandrelli2023-02-121-0/+18
| | | | | | | | | 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.
* [MP] Fix nested spawning during "ready".Fabio Alessandrelli2023-01-171-6/+2
| | | | | | 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).
* [MP] Convert _spawn_custom to a Callable property.Fabio Alessandrelli2023-01-091-16/+14
| | | | | | | | 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.
* One Copyright Update to rule them allRémi Verschelde2023-01-051-29/+29
| | | | | | | | | | | | | | | | | | | | 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".
* Fix typos with codespellRémi Verschelde2022-09-301-1/+1
| | | | | | | Using codespell 2.3-dev from current git. And fix typo in `methods.py` for `vsproj=yes` option (still won't work though).
* Change return type of `get_configuration_warnings` to `PackedStringArray`Marc Gilleron2022-09-191-2/+2
|
* [MP] Add warnings to spawner and synchronizer.Fabio Alessandrelli2022-09-171-0/+20
| | | | | | | | | | | 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.
* do not load PackedScene from spawner until instantiatingNathan Franke2022-09-131-6/+6
|
* [Multiplayer] Fix crash in spawner get_spawnable_scene.Fabio Alessandrelli2022-09-121-0/+1
|
* Rename CONNECT_ONESHOT TO CONNECT_ONE_SHOTMicky2022-09-061-2/+2
| | | | For consistency. Every other exposed `one_shot` is spaced out like this.
* document multiplayer replication classes, small changes to multiplayer spawnerNathan Franke2022-07-301-7/+6
|
* Remove Signal connect bindsJuan Linietsky2022-07-291-2/+2
| | | | | Remove the optional argument p_binds from `Object::connect` since it was deprecated by Callable.bind(). Changed all uses of it to Callable.bind()
* [Net] Modularize multiplayer, expose MultiplayerAPI to extensions.Fabio Alessandrelli2022-07-261-0/+302
- 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.