-
Notifications
You must be signed in to change notification settings - Fork 7
Expand file tree
/
Copy pathmain.lua
More file actions
117 lines (91 loc) · 2.95 KB
/
main.lua
File metadata and controls
117 lines (91 loc) · 2.95 KB
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
114
115
116
117
--
-- Generic and very straightforward data storage system used in the MenuProvider functions below
-- Use your own mod's functions for this if it has them! If not, however, feel free to copy this and
-- change the mod name.
--
local saveDataMod = RegisterMod("Dead Sea Scrolls Workshop", 1)
saveDataMod.menusavedata = nil
local json = require("json")
function saveDataMod.GetSaveData()
if not saveDataMod.menusavedata then
if Isaac.HasModData(saveDataMod) then
saveDataMod.menusavedata = json.decode(Isaac.LoadModData(saveDataMod))
else
saveDataMod.menusavedata = {}
end
end
return saveDataMod.menusavedata
end
function saveDataMod.StoreSaveData()
Isaac.SaveModData(saveDataMod, json.encode(saveDataMod.menusavedata))
end
--
-- End of generic data storage manager
--
--
-- Start of menu code
--
-- Change this variable to match your mod. The standard is "Dead Sea Scrolls (Mod Name)"
local DSSModName = "Dead Sea Scrolls (Main)"
-- Every MenuProvider function below must have its own implementation in your mod, in order to
-- handle menu save data.
local MenuProvider = {}
function MenuProvider.SaveSaveData()
saveDataMod.StoreSaveData()
end
function MenuProvider.GetPaletteSetting()
return saveDataMod.GetSaveData().MenuPalette
end
function MenuProvider.SavePaletteSetting(var)
saveDataMod.GetSaveData().MenuPalette = var
end
function MenuProvider.GetHudOffsetSetting()
if not REPENTANCE then
return saveDataMod.GetSaveData().HudOffset
else
return Options.HUDOffset * 10
end
end
function MenuProvider.SaveHudOffsetSetting(var)
if not REPENTANCE then
saveDataMod.GetSaveData().HudOffset = var
end
end
function MenuProvider.GetGamepadToggleSetting()
return saveDataMod.GetSaveData().GamepadToggle
end
function MenuProvider.SaveGamepadToggleSetting(var)
saveDataMod.GetSaveData().GamepadToggle = var
end
function MenuProvider.GetMenuKeybindSetting()
return saveDataMod.GetSaveData().MenuKeybind
end
function MenuProvider.SaveMenuKeybindSetting(var)
saveDataMod.GetSaveData().MenuKeybind = var
end
function MenuProvider.GetMenuHintSetting()
return saveDataMod.GetSaveData().MenuHint
end
function MenuProvider.SaveMenuHintSetting(var)
saveDataMod.GetSaveData().MenuHint = var
end
function MenuProvider.GetMenuBuzzerSetting()
return saveDataMod.GetSaveData().MenuBuzzer
end
function MenuProvider.SaveMenuBuzzerSetting(var)
saveDataMod.GetSaveData().MenuBuzzer = var
end
function MenuProvider.GetMenusNotified()
return saveDataMod.GetSaveData().MenusNotified
end
function MenuProvider.SaveMenusNotified(var)
saveDataMod.GetSaveData().MenusNotified = var
end
function MenuProvider.GetMenusPoppedUp()
return saveDataMod.GetSaveData().MenusPoppedUp
end
function MenuProvider.SaveMenusPoppedUp(var)
saveDataMod.GetSaveData().MenusPoppedUp = var
end
local dssmenucore = include("dssmenucore")
dssmenucore.init(DSSModName, MenuProvider)