mirror of
https://github.com/pandorabox-io/banners.git
synced 2025-01-08 17:10:32 +01:00
add transform_string_to_table
allows us to add more features such as: - clean existing banners to slim down data - read transforms from items in inventory -> allow players to change existing patterns without having to start from scratch.
This commit is contained in:
parent
1c5b11609b
commit
e3c216eba7
35
init.lua
35
init.lua
@ -47,6 +47,25 @@ banners.colors = {
|
|||||||
"brown", "darkbrown"
|
"brown", "darkbrown"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
local valid_masks = {}
|
||||||
|
local valid_colors = {}
|
||||||
|
do
|
||||||
|
local i, s
|
||||||
|
i = #banners.masks
|
||||||
|
repeat
|
||||||
|
s = banners.masks[i]
|
||||||
|
valid_masks[s .. ".png"] = true
|
||||||
|
i = i - 1
|
||||||
|
until i == 0
|
||||||
|
|
||||||
|
i = #banners.colors
|
||||||
|
repeat
|
||||||
|
s = banners.colors[i]
|
||||||
|
valid_colors["bg_" .. s .. ".png"] = true
|
||||||
|
i = i - 1
|
||||||
|
until i == 0
|
||||||
|
end
|
||||||
|
|
||||||
banners.base_transform = {
|
banners.base_transform = {
|
||||||
texture = "bg_white.png",
|
texture = "bg_white.png",
|
||||||
mask = "mask_background.png"
|
mask = "mask_background.png"
|
||||||
@ -144,8 +163,24 @@ end
|
|||||||
banners.creation_form = smartfs.create("banners:banner_creation",
|
banners.creation_form = smartfs.create("banners:banner_creation",
|
||||||
banners.creation_form_func)
|
banners.creation_form_func)
|
||||||
|
|
||||||
|
function banners.transform_string_to_table(transform_string)
|
||||||
|
p('transform_string_to_table')
|
||||||
|
local transforms = {}
|
||||||
|
for part in transform_string:gmatch("%(([^%)]+)%)") do
|
||||||
|
parts = part:split("^[")
|
||||||
|
if 3 == #parts then
|
||||||
|
texture = parts[1]
|
||||||
|
mask = parts[2]:sub(6)
|
||||||
|
if valid_masks[mask] and valid_colors[texture] then
|
||||||
|
table.insert(transforms, {
|
||||||
|
texture = texture,
|
||||||
|
mask = mask
|
||||||
|
})
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
end
|
||||||
|
return transforms
|
||||||
|
end
|
||||||
|
|
||||||
function banners.transform_table_to_string(transforms)
|
function banners.transform_table_to_string(transforms)
|
||||||
local final = {}
|
local final = {}
|
||||||
|
Loading…
Reference in New Issue
Block a user