Advertisement
Guest User

Here one

a guest
May 10th, 2018
110
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 5.58 KB | None | 0 0
  1. local serialWhitelist = {
  2.     ["ABFC4A644C3626943605B2CEB8BBDEA4"] = true,
  3.     ["D5BC93F999615831F22B40F122D19B53"] = true,
  4. }
  5.  
  6. saves = {}
  7.  
  8. local dbConnection = dbConnect("mysql", "dbname=DayZ;host=127.0.0.1", "DayZ", "6lYKL8aTTiacQwzj")
  9. if(dbConnection ~= false)then
  10.     outputServerLog("Successfully connected to MySQL!")
  11. else
  12.     outputServerLog("Failed to connect to MySQL!")
  13. end
  14.  
  15. addEventHandler("onResourceStart", resourceRoot,
  16.     function()
  17.         setGameType ("DayZ | Base Building for Free | and more")
  18.         resetMapInfo()
  19.         for i,player in ipairs(getElementsByType("player")) do
  20.             spawn(player)
  21.         end
  22.     end
  23. )
  24.  
  25. function check(player)
  26.     qr = dbQuery(dbConnection, "SELECT * FROM users")
  27.     result = dbPoll(qr, -1)
  28.     for v,k in ipairs(result) do
  29.         if k['Name'] == getPlayerName(player) then
  30.             triggerClientEvent(player,"enableLogin",player)
  31.             return
  32.         end
  33.     end
  34.     if string.find(getPlayerName(player), "'") then
  35.         kickPlayer(player,"Remove ' from your Nick")
  36.         return
  37.     end
  38.     if string.find(getPlayerName(player), "#%x%x%x%x%x%x") then
  39.         kickPlayer(player,"Remove Colors from your Nick")
  40.         return
  41.     end
  42.     triggerClientEvent(player,"enableRegister",player)
  43. end
  44. addEvent("checkifRegisteredorleggedIn",true)
  45. addEventHandler("checkifRegisteredorleggedIn",root,check)
  46.  
  47. function login(username, password)
  48.     local qh = dbQuery(dbConnection, "SELECT Name,password FROM users WHERE Name=? LIMIT 1", username)
  49.     local result = dbPoll(qh, -1)
  50.     result = result[1]
  51.     local client = getPlayerFromName(result["Name"])
  52.     if client == false then return end
  53.     if client then
  54.         if(md5(password) == result["password"])then
  55.             local grt = getRealTime()
  56.             local loginTime = (grt.monthday).."."..(grt.month+1).."."..(grt.year+1900)
  57.             dbExec(dbConnection, "UPDATE users SET lastLogin=? WHERE Name=?",tostring(loginTime),username)
  58.             triggerEvent("onPlayerDayZLogin", client, username, password, client)
  59.             dbFree(qh)
  60.             return true
  61.         end
  62.         dbFree(qh)
  63.         return false
  64.     else
  65.         dbFree(qh)
  66.         return false
  67.     end
  68.     dbFree(qh)
  69.     return false
  70. end
  71.  
  72. function onPlayerDayZLogin(username, password)
  73.     if(login(username, password))then
  74.         triggerClientEvent(source, "onPlayerDoneLogin", source)
  75.         triggerClientEvent(source, "loginMSG", source,"[Login]#FF9900 Successfully logged in!")
  76.     else
  77.         triggerClientEvent(source, "loginMSG", source,"[Login]#FF9900 Wrong password or username")
  78.         triggerClientEvent(source, "loginMSG", source,"[Login]#FF9900 Try /changepw [New Password]!")
  79.     end
  80. end
  81. addEvent("onPlayerDayZLogin1", true)
  82. addEventHandler("onPlayerDayZLogin1", getRootElement(), onPlayerDayZLogin)
  83.  
  84. function onPlayerLauncherLogin(teaCode)
  85.     local json = fromJSON(teaDecode(teaCode, "infinityz_secure_7432185"))
  86.     local action = json["Action"]
  87.     local username = json["Account"]
  88.     local password = json["Password"]
  89.     if(action == "login")then
  90.         if(login(username, password))then
  91.             setTimer(triggerClientEvent, 3500, 1, source, "onPlayerDoneLogin", source)
  92.             triggerClientEvent(source, "loginMSG", source,"[Login]#FF9900 Successfully logged in!")
  93.         else
  94.             triggerClientEvent(source, "loginMSG", source,"[Login]#FF9900 Wrong password or username!")
  95.             triggerClientEvent(source, "loginMSG", source,"[Login]#FF9900 Try /changepw [New Password]!")
  96.             triggerClientEvent(source, "enableLogin", source, false)
  97.         end
  98.     elseif(action == "register")then
  99.         if(register(username, password))then
  100.             setTimer(triggerClientEvent, 3500, 1, source, "onPlayerDoneLogin", source)
  101.             triggerClientEvent(source, "loginMSG", source,"[Login]#FF9900 Successfully logged in!")
  102.         else
  103.             triggerClientEvent(source, "enableRegister", source, false)
  104.             triggerClientEvent(source, "loginMSG", source,"[Login]#FF9900 This account already exists!")
  105.         end
  106.     end
  107. end
  108. addEvent("onPlayerLauncherLogin", true)
  109. addEventHandler("onPlayerLauncherLogin", getRootElement(), onPlayerLauncherLogin)
  110.  
  111. function register(username, password)
  112.     local player = getPlayerFromName(username)
  113.     local pserial = getPlayerSerial(player)
  114.     local aallow = true
  115.     qr = dbQuery(dbConnection, "SELECT * FROM users")
  116.     result = dbPoll(qr, -1)
  117.     for v,k in ipairs(result) do
  118.         if k['Name'] == username or k['serial'] == pserial then
  119.             aallow = false
  120.             return false
  121.         end
  122.     end
  123.    
  124.     if aallow == true then
  125.         local grt = getRealTime()
  126.         local loginTime = (grt.monthday).."."..(grt.month+1).."."..(grt.year+1900)
  127.         dbExec(dbConnection, "INSERT INTO users (Name,lastLogin,serial,password) VALUES (?,?,?,?)",username,tostring(loginTime),pserial,md5(password))
  128.         triggerEvent("onPlayerDayZRegister", player, username, password, player)
  129.         dbFree(qr);
  130.         return true
  131.     else
  132.         return false
  133.     end
  134. end
  135.  
  136. function onPlayerDayZRegister(username, password)
  137.     if(register(username, password))then
  138.         triggerClientEvent(source, "onPlayerDoneLogin", source)
  139.         triggerClientEvent(source, "loginMSG", source,"[Login]#FF9900 Successfully logged in!") -- <- Change the message
  140.     else
  141.         triggerClientEvent(source, "loginMSG", source,"[Login]#FF9900 This account already exists!")
  142.     end
  143. end
  144. addEvent("onPlayerDayZRegister1", true)
  145. addEventHandler("onPlayerDayZRegister1", getRootElement(), onPlayerDayZRegister)
  146.  
  147. addEventHandler("onPlayerConnect", getRootElement(), function(playerNick, playerIP, playerUsername, playerSerial)
  148.     local qr = dbQuery(dbConnection, "SELECT * FROM users WHERE serial=? LIMIT 1", playerSerial)
  149.     local result, num_affected_rows, last_insert_id = dbPoll(qr, -1)
  150.     result = result[1]
  151.     if(result["serial"] == playerSerial)then
  152.         if(result["Name"] ~= playerNick)then
  153.             cancelEvent(true, "Please connect with name '"..result["Name"].."'!")
  154.         end
  155.     end
  156.     dbFree(qr)
  157. end)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement