Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Saveload API #79644

Draft
wants to merge 36 commits into
base: master
Choose a base branch
from
Draft
Show file tree
Hide file tree
Changes from 22 commits
Commits
Show all changes
36 commits
Select commit Hold shift + click to select a range
983f2d9
Added saveload module
akien-mga Jun 10, 2023
78f3c48
Added saveload module
nlupugla Jun 13, 2023
4a4b381
Changed "replicator" to "saveloader"
nlupugla Jun 14, 2023
2c0eb55
Attempted to implement SceneSaveload::encode
nlupugla Jun 18, 2023
ce02813
Exposed SaveloadAPI to GDScript.
nlupugla Jun 19, 2023
6e7a3c9
Added and exposed get_state_wrapper (will rename later)
nlupugla Jun 20, 2023
4d2bf18
Added and exposed get_sync_nodes() to get all synchronizer nodes.
nlupugla Jun 21, 2023
35b44d6
Tried to implement an intermediate data structure but there's still s…
nlupugla Jun 25, 2023
16c7d73
Fixed executable crashing immediately by adding = 0 to end of virtual…
nlupugla Jun 26, 2023
25bfda5
Removed some print statements
nlupugla Jun 26, 2023
811b2d8
Added icons for Saveload nodes
nlupugla Jun 26, 2023
9664c3d
Implemented loading
nlupugla Jun 29, 2023
cda85a6
Implemented spawning
nlupugla Jul 2, 2023
fe6e029
Started cleaning up vestigial multiplayer code
nlupugla Jul 3, 2023
a1a52ee
Spawning now clears tracked nodes before loading
nlupugla Jul 10, 2023
ef98539
Cleaned up code
nlupugla Jul 12, 2023
bc835cb
Moved saveload from a node property to an engine singleton.
nlupugla Jul 18, 2023
810235c
merged with upstream master
nlupugla Jul 18, 2023
635ac55
Fixed formatting and spurious changes to docs and translations.
nlupugla Jul 20, 2023
9566b76
Changed SaveloadAPI to an Object from RefCounted.
nlupugla Jul 23, 2023
61d3f17
Changed SaveloadAPI to an Object from RefCounted.
nlupugla Jul 23, 2023
bd4901f
Merged and fixed formatting issues.
nlupugla Jul 23, 2023
1ba54e2
Registered SceneSaveload as abstract.
nlupugla Jul 23, 2023
a95f494
Tried to fix module uninitialization.
nlupugla Jul 23, 2023
e0458f4
Made singleton instance of SceneSaveload instead of SaveloadAPI to se…
nlupugla Jul 25, 2023
16d0c6f
Added docs and made singleton instance of SceneSaveload instead of Sa…
nlupugla Jul 25, 2023
ee33b11
Added docs and unregistered SceneSaveload to appease the .NET tests.
nlupugla Jul 25, 2023
7f7f2ad
Unregistered SceneSaveload to appease the .NET tests.
nlupugla Jul 25, 2023
4e0c232
Cleaned out more vestigial multiplayer code.
nlupugla Jul 28, 2023
ac1ee57
Cleaned out more vestigial multiplayer code.
nlupugla Jul 28, 2023
95b8889
Fixed style to make Clang happy
nlupugla Jul 28, 2023
3328268
Fixed style to make Clang happy
nlupugla Jul 28, 2023
1148fc8
Merge branch 'save-load-api' of https://github.com/nlupugla/godot int…
nlupugla Aug 7, 2023
c4ca104
Merge branch 'master' of https://github.com/godotengine/godot into sa…
nlupugla Sep 9, 2023
847aec0
Merge branch 'master' of https://github.com/godotengine/godot into sa…
nlupugla Sep 18, 2023
3450058
Properly encapsulated module by moving docs and icons
nlupugla Sep 18, 2023
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions editor/icons/SaveloadSpawner.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
5 changes: 5 additions & 0 deletions editor/icons/SaveloadSynchronizer.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
14 changes: 14 additions & 0 deletions modules/saveload/SCsub
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
#!/usr/bin/env python

Import("env")
Import("env_modules")

env_mp = env_modules.Clone()

module_obj = []
env_mp.add_source_files(module_obj, "*.cpp")

if env.editor_build:
env_mp.add_source_files(module_obj, "editor/*.cpp")

env.modules_sources += module_obj
19 changes: 19 additions & 0 deletions modules/saveload/config.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
def can_build(env, platform):
return True


def configure(env):
pass


def get_doc_classes():
return [
"SceneSaveloadConfig",
"SceneSaveload",
"SaveloadSpawner",
"SaveloadSynchronizer",
]


def get_doc_path():
return "doc_classes"
Loading