aboutsummaryrefslogtreecommitdiff
path: root/scripts/load_shapes.gd
diff options
context:
space:
mode:
Diffstat (limited to 'scripts/load_shapes.gd')
-rw-r--r--scripts/load_shapes.gd44
1 files changed, 29 insertions, 15 deletions
diff --git a/scripts/load_shapes.gd b/scripts/load_shapes.gd
index 308f111..32e9104 100644
--- a/scripts/load_shapes.gd
+++ b/scripts/load_shapes.gd
@@ -1,29 +1,43 @@
extends Node
var saveload : Node
+
+var info : Dictionary
var models : Dictionary
+var thumbnails : Dictionary
-var loaded = false
+var loaded : bool = false
signal done_loading
-func get_saveload():
- if saveload == null: saveload = get_tree().root.get_node("world").get_node("saveload")
-
func _ready():
get_saveload()
load_models()
+ load_info()
emit_signal("done_loading")
loaded = true
+func get_saveload():
+ if saveload == null: saveload = get_tree().root.get_node("world").get_node("saveload")
+
func load_models():
- models = {}
- var dir = Directory.new()
- dir.open("res://assets/models/shapes")
- dir.list_dir_begin(true)
- var shape = dir.get_next()
- while shape != "":
- if (shape.ends_with(".glb")):
- var model = load("res://assets/models/shapes/" + shape)
- var sname = shape.substr(0, shape.length()-4)
- models[sname] = model
- shape = dir.get_next()
+ models.clear()
+ var files = saveload.parse_dir("res://assets/models/shapes", ".glb")
+ for turr in files:
+ models[turr] = load("res://assets/models/shapes/" + turr)
+
+func load_thumbnails():
+ thumbnails.clear()
+ var files = saveload.parse_dir("res://assets/textures/thumbnails/enemies", ".png")
+ for turr in files:
+ print(turr)
+ thumbnails[turr] = load("res://assets/textures/thumbnails/enemies/" + turr)
+
+func load_info():
+ info.clear()
+ var files = saveload.parse_dir("res://assets/json", ".json")
+ for f in files:
+ if f != "enemies.json": continue
+ var parsed = saveload.load_parse_json("res://assets/json/" + f)
+ if parsed != null:
+ for tin in parsed:
+ info[tin.name] = tin