-
Notifications
You must be signed in to change notification settings - Fork 1
/
preference.lua
53 lines (44 loc) · 1.36 KB
/
preference.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
--
-- Moduł do zapisu/odczytu danych w formacie json.
--
-- Wymagane moduły
local loadsave = require( 'lib.loadsave' )
local app = require( 'lib.app' )
local colors = require( 'lib.colors' )
-- Deklaracja modułu
local M = {}
-- Tablica przechowująca wszelkie ustawienia dotyczące gry
-- w tym wynik użytkownika itp.
M.settings = {}
function M:save()
loadsave.saveTable( self.settings, 'settings.json' )
end
function M:get( name )
return self.settings[name]
end
function M:set( name, value )
self.settings[name] = value
end
function M:load()
local settings = loadsave.loadTable( 'settings.json' )
if ( settings == nil ) then
-- informacje o dostępnych piłeczkach
-- muszą odpowiadać miniaturkom na mapie
local balls = {
{ name='Simple Ball', points=0 , params={}, buy=true },
{ name='Fast Ball', points=20 , params={enableSparks=true, enableTrail=false}, buy=false },
{ name='Furoius Ball', points=40 , params={ballColor=colors.firebrick, trailColor=colors.firebrick, enableSparks=true, enableTrail=true}, buy=false },
}
-- Ustawienia domyślne
self:set( 'music', true )
self:set( 'sound', true )
self:set( 'ballInUse', 1 )
self:set( 'totalPoints', 100 )
self:set( 'balls', balls )
self:set( 'gamesPlayed', 0 )
loadsave.saveTable( self.settings, 'settings.json' )
else
self.settings = settings
end
end
return M