--- Syncronize time between client and servers so we can use a universal timestamp
-- across the game.
-- See: www.nist.gov/el/isd/ieee/upload/tutorial-basic.pdf
-- @classmod TimeSyncManager
-- @usage Use use just require the module, it's a singleton. Load TimeSyncManager on the server to use on the clients.
local RunService = game:GetService("RunService")
local MasterClock = {}
MasterClock.__index = MasterClock
MasterClock.ClassName = "MasterClock"
function MasterClock.new(remoteEvent, remoteFunction)
local self = setmetatable({}, MasterClock)
self._remoteEvent = remoteEvent or error("No remoteEvent")
self._remoteFunction = remoteFunction or error("No remoteFunction")
self._remoteFunction.OnServerInvoke = function(player, timeThree)
return self:_handleDelayRequest(timeThree)
This file has been truncated. show original