Autodownload

This commit is contained in:
Rendo 2025-12-14 18:49:21 +05:00
commit 1244832f41
96 changed files with 167 additions and 0 deletions

37
systems/auto_update.gd Normal file
View file

@ -0,0 +1,37 @@
extends HTTPRequest
var popup_scene: PackedScene = preload("uid://5goo8fyxkv33")
var new_version_avaiable: bool
var popup: ConfirmationDialog
func _ready() -> void:
request_completed.connect(on_request_completed)
popup = popup_scene.instantiate()
add_child(popup)
popup.confirmed.connect(download_button_pressed)
var patch_request: HTTPRequest = popup.get_node("HTTPRequest")
var exec_path = OS.get_executable_path()
var splitted = exec_path.split("/")
var exec_dir = exec_path.replace(splitted[len(splitted)-1],"")
patch_request.download_file = exec_dir + "chelimbalo.pck"
patch_request.request_completed.connect(patch_downloaded)
request("https://2ndbeam.ru/durenije/chelimbalo/release/deploy_data")
func on_request_completed(result: int, _response_code: int, _headers: PackedStringArray, body: PackedByteArray):
if result != OK:
return
var ver_hash = body.get_string_from_ascii().split("\n")[1]
if ver_hash != load("res://version.tres").version:
popup.popup_centered()
func download_button_pressed() -> void:
popup.get_node("HTTPRequest").request("https://2ndbeam.ru/durenije/chelimbalo/release/chelimbalo.pck")
func patch_downloaded(result: int, _response_code: int, _headers: PackedStringArray, _body: PackedByteArray) -> void:
if result == OK:
get_tree().quit()