fix: 修复了资源无法下载的bug
This commit is contained in:
@@ -14,27 +14,27 @@ game/
|
||||
- project.godot
|
||||
- icon.svg
|
||||
- assets/
|
||||
- fonts/
|
||||
- AlibabaPuHuiTi-3-65-Medium.ttf # 阿里巴巴普惠体
|
||||
- pics/
|
||||
- fonts/
|
||||
- AlibabaPuHuiTi-3-65-Medium.ttf # 阿里巴巴普惠体
|
||||
- pics/
|
||||
- scenes
|
||||
- main_menu.tscn
|
||||
- game.tscn
|
||||
- settings.tscn
|
||||
- main_menu.tscn
|
||||
- game.tscn
|
||||
- settings.tscn
|
||||
- scripts/
|
||||
- autoload/
|
||||
- GameManager.gd # 游戏管理
|
||||
- DownloadManager.gd # 下载管理
|
||||
- MultiGame.gd # 多人游戏功能
|
||||
- SceneManager.gd # 场景管理
|
||||
- main_menu/
|
||||
- main_menu.gd
|
||||
- join_game_ui.gd
|
||||
- create_game_ui.gd
|
||||
- game/
|
||||
- game.gd
|
||||
- settings/
|
||||
- settings.gd
|
||||
- autoload/
|
||||
- GameManager.gd # 游戏管理
|
||||
- DownloadManager.gd # 下载管理
|
||||
- MultiGame.gd # 多人游戏功能
|
||||
- SceneManager.gd # 场景管理
|
||||
- main_menu/
|
||||
- main_menu.gd
|
||||
- join_game_ui.gd
|
||||
- create_game_ui.gd
|
||||
- game/
|
||||
- game.gd
|
||||
- settings/
|
||||
- settings.gd
|
||||
```
|
||||
|
||||
## 如何运行
|
||||
|
||||
@@ -17,6 +17,7 @@ func download_file(server_path: String, local_path: String) -> void:
|
||||
create_file(file_path)
|
||||
http.download_file = file_path
|
||||
http.request(server_path)
|
||||
await http.request_completed
|
||||
|
||||
func get_uuid() -> void:
|
||||
var index_file = FileAccess.open("user://download/temp/index.json", FileAccess.READ)
|
||||
@@ -34,7 +35,7 @@ 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/%s/%ss/%s.json" % [uuid, type, filename])
|
||||
await 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/%s/assets/list.json" % [uuid], FileAccess.READ)
|
||||
@@ -45,10 +46,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/%s/assets/pics/%s" % [uuid, filename])
|
||||
await 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/%s/assets/sounds/%s" % [uuid, filename])
|
||||
await 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
|
||||
@@ -64,18 +65,18 @@ func download_from_origin() -> int:
|
||||
if origin[-1] != "/":
|
||||
origin = origin + "/"
|
||||
|
||||
download_file(origin + "index", "user://download/temp/index.json")
|
||||
await download_file(origin + "index", "user://download/temp/index.json")
|
||||
|
||||
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])
|
||||
await download_file(origin + "card/list", "user://download/%s/cards/list.json" % [uuid])
|
||||
await download_file(origin + "reaction/list", "user://download/%s/reactions/list.json" % [uuid])
|
||||
await download_file(origin + "matter/list", "user://download/%s/matters/list.json" % [uuid])
|
||||
await download_file(origin + "asset/list", "user://download/%s/assets/list.json" % [uuid])
|
||||
|
||||
download_defs("card", origin)
|
||||
download_defs("reaction", origin)
|
||||
download_defs("matter", origin)
|
||||
await download_defs("card", origin)
|
||||
await download_defs("reaction", origin)
|
||||
await download_defs("matter", origin)
|
||||
|
||||
download_assets(origin)
|
||||
await download_assets(origin)
|
||||
|
||||
return 0
|
||||
|
||||
|
||||
@@ -18,7 +18,7 @@ func _on_cancel_button_pressed() -> void:
|
||||
|
||||
func _on_download_button_pressed() -> void:
|
||||
$Tips.text = "提示:已开始下载,请勿关闭设置页面"
|
||||
var result: int = DownloadManager.download_from_origin()
|
||||
var result: int = await DownloadManager.download_from_origin()
|
||||
if result == 1:
|
||||
$Tips.text = "提示:下载失败。数据源路径错误"
|
||||
return
|
||||
|
||||
Reference in New Issue
Block a user