Advertisement
footballfan12

FootyShops Hub v1.0.0

Apr 20th, 2015
256
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 2.79 KB | None | 0 0
  1. rednet.open("back")
  2. --[[
  3.     Description:
  4.         Splits a string by spaces.
  5.     Parameters:
  6.         input: The text to split.
  7.     Returns:
  8.         Table
  9.             -The separate words.
  10. ]]--
  11. local function splitBySpaces(input)
  12.         local output={} ; i=1
  13.         for str in string.gmatch(input, "([^%s]+)") do
  14.                 output[i] = str
  15.                 i = i + 1
  16.         end
  17.         return output
  18. end
  19.  
  20. while true do
  21.     local id, message_string = rednet.recieve()
  22.     local message = splitBySpaces(message_string)
  23.     --Get a player's data
  24.     if message[1] == "get_player_data" then
  25.         local datafile = fs.open("playerdata","r")
  26.         local datatable = textutils.unserialize(datafile.readAll())
  27.         datafile.close()
  28.         if datatable[message[2]] then
  29.             rednet.send(id,textutils.serialize(datatable[message[2]]))
  30.         else
  31.             local playerdata = {}
  32.             playerdata["playername"] = message_2
  33.             playerdata["balance"] = 0
  34.             playerdata["terms_accepted"] = false
  35.             rednet.send(id,textutils.serialize(playerdata))
  36.             datatable[message[2]] = playerdata
  37.             datafile = fs.open("playerdata","w")
  38.             datafile.write(textutils.serialize(datatable))
  39.             datafile.close()
  40.         end
  41.     end
  42.     --Set a player's balance
  43.     if message[1] == "set_player_balance" then
  44.         local datafile = fs.open("playerdata","r")
  45.         local datatable = textutils.unserialize(datafile.readAll())
  46.         datafile.close()
  47.         if datatable[message[2]] then
  48.             local playerdata = datatable[message[2]]
  49.             playerdata["balance"] = tonumber(message[3])
  50.             datatable[message[2]] = playerdata
  51.             datafile = fs.open("playerdata","w")
  52.             datafile.write(textutils.serialize(datatable))
  53.             datafile.close()
  54.         else
  55.             local playerdata = {}
  56.             playerdata["playername"] = message[2]
  57.             playerdata["balance"] = tonumber(message[3])
  58.             playerdata["terms_accepted"] = false
  59.             rednet.send(id,textutils.serialize(playerdata))
  60.             datatable[message[2]] = playerdata
  61.             datafile = fs.open("playerdata","w")
  62.             datafile.write(textutils.serialize(datatable))
  63.             datafile.close()
  64.         end
  65.     end
  66.     --Set if a player accepted terms
  67.     if message[1] == "player_accepted" then
  68.         local datafile = fs.open("playerdata","r")
  69.         local datatable = textutils.unserialize(datafile.readAll())
  70.         datafile.close()
  71.         if datatable[message[2]] then
  72.             local playerdata = datatable[message[2]]
  73.             playerdata["terms_accepted"] = true
  74.             datatable[message[2]] = playerdata
  75.             datafile = fs.open("playerdata","w")
  76.             datafile.write(textutils.serialize(datatable))
  77.             datafile.close()
  78.         else
  79.             local playerdata = {}
  80.             playerdata["playername"] = message[2]
  81.             playerdata["balance"] = 0
  82.             playerdata["terms_accepted"] = true
  83.             rednet.send(id,textutils.serialize(playerdata))
  84.             datatable[message[2]] = playerdata
  85.             datafile = fs.open("playerdata","w")
  86.             datafile.write(textutils.serialize(datatable))
  87.             datafile.close()
  88.         end
  89.     end
  90. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement