SHARE
TWEET

Untitled

a guest Mar 19th, 2019 61 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. local function savereserve(char)
  2.     nut.db.updateTable({
  3.         _reserve = char:getReserve()
  4.     }, nil, "reserve", "_charID = "..char:getID())
  5. end
  6.  
  7. function SCHEMA:OnReserveChanged(char)
  8.     savereserve(char)
  9. end
  10.  
  11. do
  12.         local MYSQL_CREATE_TABLES = [[
  13. CREATE TABLE IF NOT EXISTS `nut_reserve` (
  14.     `_charID` int(11) NOT NULL,
  15.     `_reserve` int(11) unsigned DEFAULT NULL,
  16.     PRIMARY KEY (`_charID`)
  17. );
  18.         ]]
  19.         local SQLITE_CREATE_TABLES = [[
  20. CREATE TABLE IF NOT EXISTS `nut_reserve` (
  21.     `_charID` INTEGER PRIMARY KEY,
  22.     `_reserve` INTEGER
  23. );
  24.         ]]
  25.  
  26.         function SCHEMA:OnLoadTables()
  27.             if (nut.db.object) then
  28.                 -- This is needed to perform multiple queries since the string is only 1 big query.
  29.                 local queries = string.Explode(";", MYSQL_CREATE_TABLES)
  30.  
  31.                 nut.db.query(queries[1])
  32.                 nut.db.query(queries[2])
  33.             else
  34.                 nut.db.query(SQLITE_CREATE_TABLES)
  35.             end
  36.         end
  37.  
  38.         function SCHEMA:CharacterPreSave(char)
  39.             savereserve(char)
  40.         end
  41.  
  42.         function SCHEMA:CharacterLoaded(id)
  43.             -- legacy support
  44.             -- for modernRP users
  45.             local char = nut.char.loaded[id]
  46.             local legacy = false
  47.  
  48.             if (char:getData("reserve")) then
  49.                 local restore = char:getData("reserve", 0)
  50.  
  51.                 char:setReserve(tonumber(restore))
  52.                 char:setData("reserve", nil)
  53.                 legacy = true
  54.             end
  55.  
  56.             nut.db.query("SELECT _reserve FROM nut_reserve WHERE _charID = "..id, function(data)
  57.                 if (data and #data > 0) then
  58.                     for k, v in ipairs(data) do
  59.                         local money = tonumber(v._reserve)
  60.  
  61.                         if (!legacy) then
  62.                             char:setReserve(money)
  63.                         end
  64.                     end
  65.                 else
  66.                     nut.db.insertTable({
  67.                         _reserve = 0,
  68.                         _charID = id,
  69.                     }, function(data)
  70.                         if (!legacy) then
  71.                             char:setReserve(0)
  72.                         end
  73.                     end, "reserve")
  74.                 end
  75.             end)
  76.         end
  77.  
  78.         function SCHEMA:PreCharDelete(client, char)
  79.             nut.db.query("DELETE FROM nut_reserve WHERE _charID = "..char:getID())
  80.         end
  81.  
  82. end
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
 
Top