Advertisement
Filexdoj

client.lua

Mar 17th, 2019
117
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 2.71 KB | None | 0 0
  1. -- Client
  2. local devScreenW, devScreenH = 1280, 800 -- Developer Screen W/H
  3. local ScreenW, ScreenH = guiGetScreenSize()
  4. local newScale = dxGetFontHeight(ScreenW / 15000, "default")
  5. local hourDifference = nil
  6. local minuteDifference = nil
  7. local secondDifference = nil
  8. local theResource =  getThisResource ()
  9. local dimensions = {
  10.   left = 1100 / devScreenW * ScreenW,
  11.   top = 10 / devScreenH * ScreenH,
  12.   right = 1270 / devScreenW * ScreenW,
  13.   bottom = 26 / devScreenH * ScreenH,
  14.   visible = true
  15. }
  16.  
  17. function triggerDataSending()
  18.   triggerServerEvent("data:sending", getLocalPlayer())
  19.   local file = fileExists ("clockInvisible")
  20.   if file then
  21.     removeEventHandler("onClientRender", getRootElement(), drawTime)
  22.     dimensions["visible"] = false
  23.   end
  24. end
  25. addEventHandler("onClientResourceStart", getResourceRootElement(theResource), triggerDataSending)
  26.  
  27. function calculateDifference(serverHours,serverMinutes,serverSeconds)
  28.   local localTime = getRealTime()
  29.   hourDifference = serverHours - localTime.hour
  30.   minuteDifference = serverMinutes - localTime.minute
  31.   secondDifference = serverSeconds - localTime.second
  32.  
  33. end
  34. addEvent("calculate:difference", true)
  35. addEventHandler("calculate:difference", getRootElement(), calculateDifference)
  36.  
  37. function drawTime()
  38.   if hourDifference == nil then
  39.     return
  40.   else
  41.     local localTime = getRealTime()
  42.     local time = string.format("%02d:%02d:%02d", localTime.hour + hourDifference, localTime.minute + minuteDifference, localTime.second + secondDifference)
  43.     text = "Server Time : " .. time
  44.     dxDrawText(
  45.       text,
  46.       dimensions["left"] + 1,
  47.       dimensions["top"] + 1,
  48.       dimensions["right"] + 1,
  49.       dimensions["bottom"] + 1,
  50.       tocolor(0, 0, 0, 255),
  51.       newScale,
  52.       "default",
  53.       "center",
  54.       "center",
  55.       false,
  56.       true,
  57.       true,
  58.       false,
  59.       false
  60.     )
  61.     dxDrawText(
  62.       text,
  63.       dimensions["left"],
  64.       dimensions["top"],
  65.       dimensions["right"],
  66.       dimensions["bottom"],
  67.       tocolor(255, 255, 255, 255),
  68.       newScale,
  69.       "default",
  70.       "center",
  71.       "center",
  72.       false,
  73.       true,
  74.       true,
  75.       false,
  76.       false
  77.     )
  78.   end
  79. end
  80.  
  81. addEventHandler("onClientRender", getRootElement(), drawTime)
  82. function hideOrShow()
  83.   if (dimensions["visible"] == true) then
  84.     removeEventHandler("onClientRender", getRootElement(), drawTime)
  85.     dimensions["visible"] = false
  86.     local file = fileCreate("clockInvisible")
  87.     fileClose(file)
  88.   elseif (dimensions["visible"] == false) then
  89.     addEventHandler("onClientRender", getRootElement(), drawTime)
  90.     dimensions["visible"] = true
  91.     fileDelete("clockInvisible")
  92.   end
  93. end
  94. addCommandHandler("clock", hideOrShow)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement