|
2 年之前 | |
---|---|---|
src | 2 年之前 | |
.gitignore | 2 年之前 | |
Cargo.toml | 2 年之前 | |
README.md | 2 年之前 | |
build.rs | 2 年之前 |
gm_sled is really simple wrapper around sled key-value database.
Download latest binary for corresponding OS and throw it into garrysmod/lua/bin/
.
Or, you can compile your own version.
Compilation for main Garry's Mod branch:
cargo build --release --target i686-unknown-linux-gnu
or for windows
cargo build --release --target i686-pc-windows-msvc
Compilation for x86-x64 branch:
cargo build --release --target x86_64-unknown-linux-gnu
or for windows
cargo build --release --target x86_64-pc-windows-msvc
require("sled")
local db = sled.Open("currencydb")
currencydb = {__currency = {}}
function currencydb.set(player, currency, value)
local tree = currencydb.__currency[currency]
if not tree then
tree = db:OpenTree(currency)
currencydb.__currency[currency] = tree
end
tree:InsertStruct(player:SteamID64(), "d", value)
end
function currencydb.get(player, currency)
local tree = currencydb.__currency[currency]
if not tree then
tree = db:OpenTree(currency)
currencydb.__currency[currency] = tree
end
return tree:GetStruct(player:SteamID64(), "d")
end
function currencydb.list()
local names = {}
for name in db:TreeNames() do
if name == "__sled__default" then continue end
table.insert(names, name)
end
return names
end