add completion requirements and flag to level data and save

This commit is contained in:
Haze Weathers 2023-12-24 21:23:28 -05:00
parent 885082c7c4
commit f263ce7842
6 changed files with 52 additions and 3 deletions

View file

@ -18,6 +18,8 @@ class LevelSaveData:
# collectibles
var keys_collected: int = 0
var shards_collected: Array
# whether level has been beaten at all
var completed: bool = false
func _init(id: String) -> void:
save_id = id
@ -42,6 +44,8 @@ class LevelSaveData:
# set collected shards
for i in 8:
file.set_value(save_id, "shard_%d" % i, shards_collected[i])
# set completion status
file.set_value(save_id, "completed", completed)
## loads level data from the given ConfigFile
func load_from_file(file: ConfigFile) -> void:
@ -58,6 +62,8 @@ class LevelSaveData:
# get collected shards
for i in 8:
shards_collected[i] = file.get_value(save_id, "shard_%d" % i, false)
# get completion status
completed = file.get_value(save_id, "completed", false)
# contains data of one save file
class SaveFile: