Skip to content

Commit cdcf5f4

Browse files
committed
cfg refactor wip 7
1 parent 6af8905 commit cdcf5f4

File tree

1 file changed

+36
-99
lines changed

1 file changed

+36
-99
lines changed

Scenes/FxData.gd

+36-99
Original file line numberDiff line numberDiff line change
@@ -10,30 +10,6 @@ var objects_cfg : Dictionary
1010
var creature_cfg : Dictionary
1111
var trapdoor_cfg : Dictionary
1212

13-
14-
#func _ready():
15-
# var directory = Directory.new()
16-
# var image_directory = "res://Art/"
17-
#
18-
# if directory.open(image_directory) == OK:
19-
# directory.list_dir_begin()
20-
# var file_name = directory.get_next()
21-
# while file_name != "":
22-
# if file_name.get_extension().to_lower() in ["png", "jpg", "jpeg", "webp"]:
23-
# var image_path = image_directory + file_name
24-
# print("Loaded image: ", image_path)
25-
#
26-
# file_name = directory.get_next()
27-
# else:
28-
# print("Failed to open the directory.")
29-
30-
# var newName
31-
# var checkName = objects_cfg[section]["Name"]
32-
# if Things.convert_name.has(checkName):
33-
# newName = Things.convert_name[checkName]
34-
# else:
35-
# newName = checkName.capitalize()
36-
3713
func start():
3814
if Cube.tex.empty() == true:
3915
Cube.read_cubes_cfg()
@@ -44,75 +20,56 @@ func start():
4420
trapdoor_cfg = read_dkcfg_file(oGame.DK_FXDATA_DIRECTORY.plus_file("trapdoor.cfg"))
4521
print('Parsed all dkcfg files: ' + str(OS.get_ticks_msec() - CODETIME_START) + 'ms')
4622

47-
4823
var CODETIME_LOADCFG_START = OS.get_ticks_msec()
49-
24+
load_objects_data()
25+
load_creatures_data()
26+
load_trapdoor_data()
27+
print('Loaded things from cfg files: ' + str(OS.get_ticks_msec() - CODETIME_LOADCFG_START) + 'ms')
28+
29+
30+
func load_objects_data():
5031
for section in objects_cfg:
5132
if section.begins_with("object"):
5233
var id = int(section)
5334
if id == 0: continue
54-
if id >= 136 or id in [100,101,102,103,104,105]: # Dummy Boxes should be overwritten
55-
var newName = objects_cfg[section]["Name"]
56-
57-
var animID = objects_cfg[section]["AnimationID"]
58-
var newSprite = null
59-
if Graphics.sprite_id.has(animID):
60-
newSprite = animID
61-
elif Graphics.sprite_id.has(newName):
62-
newSprite = newName
63-
64-
var newGenre = objects_cfg[section].get("Genre", null)
35+
if id >= 136 or id in [100, 101, 102, 103, 104, 105]: # Dummy Boxes should be overwritten
36+
var data = objects_cfg[section]
37+
var newName = data["Name"]
38+
var animID = data["AnimationID"]
39+
var newSprite = get_sprite(animID, newName)
40+
var newGenre = data.get("Genre", null)
6541
var newEditorTab = Things.GENRE_TO_TAB[newGenre]
66-
67-
Things.DATA_OBJECT[id] = [
68-
newName, # NAME
69-
newSprite, # SPRITE
70-
newEditorTab, # EDITOR_TAB
71-
]
72-
42+
Things.DATA_OBJECT[id] = [newName, newSprite, newEditorTab]
43+
44+
45+
func load_creatures_data():
7346
for id_number in creature_cfg["common"]["Creatures"].size():
7447
if Things.DATA_CREATURE.has(id_number+1) == false:
75-
7648
var newName = creature_cfg["common"]["Creatures"][id_number]
77-
78-
var newSprite = null
79-
if Graphics.sprite_id.has(newName):
80-
newSprite = newName
81-
82-
var newPortrait = null
83-
if Graphics.sprite_id.has(str(newSprite) + "_PORTRAIT"):
84-
newPortrait = str(newSprite) + "_PORTRAIT"
85-
86-
Things.DATA_CREATURE[id_number+1] = [
87-
newName, # NAME
88-
newSprite, # SPRITE
89-
Things.TAB_CREATURE, # EDITOR_TAB
90-
]
91-
49+
var newSprite = get_sprite(newName)
50+
Things.DATA_CREATURE[id_number + 1] = [newName, newSprite, Things.TAB_CREATURE]
51+
52+
53+
func load_trapdoor_data():
9254
for section in trapdoor_cfg:
9355
var id = int(section)
9456
if id == 0: continue
57+
var data = trapdoor_cfg[section]
58+
var newName = data.get("Name", null)
59+
var newSprite = get_sprite(newName)
9560
if section.begins_with("door"):
96-
var newName = trapdoor_cfg[section]["Name"]
97-
var newSprite = null
98-
if Graphics.sprite_id.has(newName):
99-
newSprite = newName
100-
Things.DATA_DOOR[id] = [
101-
newName, # NAME
102-
newSprite, # SPRITE
103-
Things.TAB_MISC, # EDITOR_TAB
104-
]
61+
Things.DATA_DOOR[id] = [newName, newSprite, Things.TAB_MISC]
10562
elif section.begins_with("trap"):
106-
var newName = trapdoor_cfg[section]["Name"]
107-
var newSprite = null
108-
if Graphics.sprite_id.has(newName):
109-
newSprite = newName
110-
Things.DATA_TRAP[id] = [
111-
newName, # NAME
112-
newSprite, # SPRITE
113-
Things.TAB_TRAP, # EDITOR_TAB
114-
]
115-
print('Loaded things from cfg files: ' + str(OS.get_ticks_msec() - CODETIME_LOADCFG_START) + 'ms')
63+
Things.DATA_TRAP[id] = [newName, newSprite, Things.TAB_TRAP]
64+
65+
66+
func get_sprite(id, fallback = null):
67+
if Graphics.sprite_id.has(id):
68+
return id
69+
elif fallback and Graphics.sprite_id.has(fallback):
70+
return fallback
71+
return null
72+
11673

11774
func read_dkcfg_file(file_path) -> Dictionary: # Optimized
11875
var config = {}
@@ -156,23 +113,3 @@ func read_dkcfg_file(file_path) -> Dictionary: # Optimized
156113
config[current_section][key] = value
157114

158115
return config
159-
160-
# print ("var sprite_id = {")
161-
# for key in objects_cfg.keys():
162-
# if "object" in key:
163-
# #print(key)
164-
# #print(objects_cfg[key]["Name"] + " ")
165-
# #print(objects_cfg[key]["AnimationID"] + " : " + "")
166-
# var b = '""'
167-
# if Things.DATA_OBJECT.has(int(key)):
168-
# var fsffsa = Things.DATA_OBJECT[int(key)][Things.TEXTURE]
169-
# if fsffsa != null:
170-
# b = 'preload("' +fsffsa.resource_path + '")'
171-
#
172-
# var a = objects_cfg[key]["AnimationID"]
173-
# if a is String:
174-
# print('"' + a + '"' + " : " + b + ",")
175-
# else:
176-
# print(str(a) + " : " + str(b) + ",")
177-
# print("}")
178-

0 commit comments

Comments
 (0)