diff --git a/scripts/autoload/DownloadManager.gd b/scripts/autoload/DownloadManager.gd index 6efe6fd..2a16da0 100644 --- a/scripts/autoload/DownloadManager.gd +++ b/scripts/autoload/DownloadManager.gd @@ -1,5 +1,7 @@ extends Node +var uuid: String + func create_file(file_path: String) -> void: var base_dir = file_path.get_base_dir() if !DirAccess.dir_exists_absolute(base_dir): @@ -16,8 +18,15 @@ func download_file(server_path: String, local_path: String) -> void: http.download_file = file_path http.request(server_path) +func get_uuid() -> void: + var index_file = FileAccess.open("user://download/temp/index.json", FileAccess.READ) + var index_text = index_file.get_as_text() + var content = JSON.parse_string(index_text) + index_file.close() + uuid = content["uuid"] + func download_defs(type: String, origin: String) -> void: - var list_file = FileAccess.open("user://download/source/%ss/list.json" % [type], FileAccess.READ) + var list_file = FileAccess.open("user://download/%s/%ss/list.json" % [uuid, type], FileAccess.READ) var list_text = list_file.get_as_text() var list = JSON.parse_string(list_text) list_file.close() @@ -25,10 +34,10 @@ func download_defs(type: String, origin: String) -> void: return for k in list: var filename = list[k] - download_file("%s%s/id/%s" % [origin, type, k], "user://download/source/%ss/%s.json" % [type, filename]) + download_file("%s%s/id/%s" % [origin, type, k], "user://download/%s/%ss/%s.json" % [uuid, type, filename]) func download_assets(origin: String) -> void: - var list_file = FileAccess.open("user://download/source/assets/list.json", FileAccess.READ) + var list_file = FileAccess.open("user://download/%s/assets/list.json" % [uuid], FileAccess.READ) var list_text = list_file.get_as_text() var list = JSON.parse_string(list_text) list_file.close() @@ -36,10 +45,10 @@ func download_assets(origin: String) -> void: return for k in list["pics"]: var filename = list["pics"][k] - download_file("%sasset/pic/%s" % [origin, k], "user://download/source/assets/pics/%s" % [filename]) + download_file("%sasset/pic/%s" % [origin, k], "user://download/%s/assets/pics/%s" % [uuid, filename]) for k in list["sounds"]: var filename = list["sounds"][k] - download_file("%sasset/sound/%s" % [origin, k], "user://download/source/assets/sounds/%s" % [filename]) + download_file("%sasset/sound/%s" % [origin, k], "user://download/%s/assets/sounds/%s" % [uuid, filename]) func download_from_origin() -> int: var origin = GameManager.data_origin @@ -54,11 +63,15 @@ func download_from_origin() -> int: if origin[-1] != "/": origin = origin + "/" + + #download_file(origin + "index", "user://download/temp/index.json") - download_file(origin + "card/list", "user://download/source/cards/list.json") - download_file(origin + "reaction/list", "user://download/source/reactions/list.json") - download_file(origin + "matter/list", "user://download/source/matters/list.json") - download_file(origin + "asset/list", "user://download/source/assets/list.json") + # get_uuid() + + download_file(origin + "card/list", "user://download/%s/cards/list.json" % [uuid]) + download_file(origin + "reaction/list", "user://download/%s/reactions/list.json" % [uuid]) + download_file(origin + "matter/list", "user://download/%s/matters/list.json" % [uuid]) + download_file(origin + "asset/list", "user://download/%s/assets/list.json" % [uuid]) download_defs("card", origin) download_defs("reaction", origin) @@ -69,19 +82,19 @@ func download_from_origin() -> int: return 0 func load_resource(): - var card_file = FileAccess.open("user://download/source/cards/list.json", FileAccess.READ) + var card_file = FileAccess.open("user://download/%s/cards/list.json" % [uuid], FileAccess.READ) GameManager.card_list = JSON.parse_string(card_file.get_as_text()) card_file.close() - var reaction_file = FileAccess.open("user://download/source/reactions/list.json", FileAccess.READ) + var reaction_file = FileAccess.open("user://download/%s/reactions/list.json" % [uuid], FileAccess.READ) GameManager.reaction_list = JSON.parse_string(reaction_file.get_as_text()) reaction_file.close() - var matter_file = FileAccess.open("user://download/source/matters/list.json", FileAccess.READ) + var matter_file = FileAccess.open("user://download/%s/matters/list.json" % [uuid], FileAccess.READ) GameManager.matter_list = JSON.parse_string(matter_file.get_as_text()) matter_file.close() - var asset_file = FileAccess.open("user://download/source/assets/list.json", FileAccess.READ) + var asset_file = FileAccess.open("user://download/%s/assets/list.json" % [uuid], FileAccess.READ) var asset_list = JSON.parse_string(asset_file.get_as_text()) GameManager.pic_list = asset_list["pics"] GameManager.sound_list = asset_list["sounds"] diff --git a/scripts/game/card.gd b/scripts/game/card.gd index 7aab8c2..52ab00e 100644 --- a/scripts/game/card.gd +++ b/scripts/game/card.gd @@ -9,4 +9,4 @@ func set_texture(pic: String) -> void: func set_card(cname: String) -> void: card_name = cname - # set_texture(GameManager.pic_list[card_name]) \ No newline at end of file + set_texture(GameManager.pic_list[card_name]) \ No newline at end of file