This repository has been archived by the owner on Aug 9, 2023. It is now read-only.
/
init.lua
113 lines (95 loc) · 2.44 KB
/
init.lua
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
print[[
Powered by
██╗██████╗
██║╚════██╗
██║ █████╔╝
██║ ╚═══██╗
██║██████╔╝
╚═╝╚═════╝
]]
local modpath = core.get_modpath"i3"
local http = core.request_http_api()
local storage = core.get_mod_storage()
local _loadfile = dofile(modpath .. "/src/preprocessor.lua")
local function lf(path)
return assert(_loadfile(modpath .. path))
end
i3 = {
data = core.deserialize(storage:get_string"data") or {},
settings = {
debug_mode = false,
max_favs = 6,
max_waypoints = 30,
min_fs_version = 4,
item_btn_size = 1.1,
drop_bag_on_die = true,
save_interval = 600, -- Player data save interval (in seconds)
hud_speed = 1,
hud_timer_max = 1.5,
damage_enabled = core.settings:get_bool"enable_damage",
progressive_mode = core.settings:get_bool"i3_progressive_mode",
legacy_inventory = core.settings:get_bool"i3_legacy_inventory",
item_compression = core.settings:get_bool("i3_item_compression", true),
},
categories = {
"bag",
"armor",
"skins",
"awards",
"waypoints",
},
saves = { -- Metadata to save
bag = true,
home = true,
waypoints = true,
inv_items = true,
drop_items = true,
known_recipes = true,
},
files = {
api = lf"/src/api.lua",
bags = lf"/src/bags.lua",
caches = lf"/src/caches.lua",
callbacks = lf"/src/callbacks.lua",
common = lf"/src/common.lua",
compress = lf"/src/compression.lua",
detached = lf"/src/detached_inv.lua",
fields = lf"/src/fields.lua",
groups = lf"/src/groups.lua",
gui = lf"/src/gui.lua",
hud = lf"/src/hud.lua",
model_alias = lf"/src/model_aliases.lua",
progressive = lf"/src/progressive.lua",
styles = lf"/src/styles.lua",
},
-- Caches
init_items = {},
fuel_cache = {},
usages_cache = {},
recipes_cache = {},
tabs = {},
cubes = {},
groups = {},
plants = {},
modules = {},
craft_types = {},
recipe_filters = {},
search_filters = {},
sorting_methods = {},
}
i3.settings.hotbar_len = i3.settings.legacy_inventory and 8 or 9
i3.settings.inv_size = 4 * i3.settings.hotbar_len
i3.files.common()
i3.files.api(http)
i3.files.compress()
i3.files.groups()
i3.files.callbacks(http, storage)
if i3.settings.progressive_mode then
i3.files.progressive()
end
if i3.settings.debug_mode then
lf("/tests/test_tabs.lua")()
lf("/tests/test_operators.lua")()
lf("/tests/test_compression.lua")()
lf("/tests/test_custom_recipes.lua")()
end