@quenty/timesyncservice 8.4.0 → 9.0.0-canary.439.eb597ee.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -3,6 +3,14 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ # [9.0.0-canary.439.eb597ee.0](https://github.com/Quenty/NevermoreEngine/compare/@quenty/timesyncservice@8.4.0...@quenty/timesyncservice@9.0.0-canary.439.eb597ee.0) (2024-01-17)
7
+
8
+ **Note:** Version bump only for package @quenty/timesyncservice
9
+
10
+
11
+
12
+
13
+
6
14
  # [8.4.0](https://github.com/Quenty/NevermoreEngine/compare/@quenty/timesyncservice@8.3.0...@quenty/timesyncservice@8.4.0) (2024-01-08)
7
15
 
8
16
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@quenty/timesyncservice",
3
- "version": "8.4.0",
3
+ "version": "9.0.0-canary.439.eb597ee.0",
4
4
  "description": "Quenty's TimeSyncService keeps time synchronized between all clients and the server",
5
5
  "keywords": [
6
6
  "Roblox",
@@ -26,17 +26,18 @@
26
26
  "Quenty"
27
27
  ],
28
28
  "dependencies": {
29
- "@quenty/baseobject": "^7.2.0",
30
- "@quenty/loader": "^7.3.0",
31
- "@quenty/maid": "^2.6.0",
32
- "@quenty/promise": "^7.2.0",
33
- "@quenty/remoting": "^7.4.0",
34
- "@quenty/rx": "^8.4.0",
35
- "@quenty/signal": "^3.2.0",
36
- "@quenty/table": "^3.4.0"
29
+ "@quenty/baseobject": "8.0.0-canary.439.eb597ee.0",
30
+ "@quenty/loader": "8.0.0-canary.439.eb597ee.0",
31
+ "@quenty/maid": "2.6.0",
32
+ "@quenty/promise": "8.0.0-canary.439.eb597ee.0",
33
+ "@quenty/remoting": "8.0.0-canary.439.eb597ee.0",
34
+ "@quenty/rx": "9.0.0-canary.439.eb597ee.0",
35
+ "@quenty/signal": "4.0.0-canary.439.eb597ee.0",
36
+ "@quenty/table": "3.4.0",
37
+ "@quenty/valueobject": "9.0.0-canary.439.eb597ee.0"
37
38
  },
38
39
  "publishConfig": {
39
40
  "access": "public"
40
41
  },
41
- "gitHead": "075fb03a03f12ade8758f667767ba738204e0c4b"
42
+ "gitHead": "eb597ee01e62e4dd91190bb7abd1d1404652d5ff"
42
43
  }
@@ -6,6 +6,7 @@
6
6
  local require = require(script.Parent.loader).load(script)
7
7
 
8
8
  local BaseObject = require("BaseObject")
9
+ local Rx = require("Rx")
9
10
 
10
11
  local MasterClock = setmetatable({}, BaseObject)
11
12
  MasterClock.__index = MasterClock
@@ -59,6 +60,15 @@ function MasterClock:GetClockFunction()
59
60
  return self._clockFunction
60
61
  end
61
62
 
63
+ --[=[
64
+ Observes how much ping the clock has
65
+
66
+ @return Observable<number>
67
+ ]=]
68
+ function MasterClock:ObservePing()
69
+ return Rx.of(0)
70
+ end
71
+
62
72
  --[=[
63
73
  Returns true if the manager has synced with the server
64
74
  @return boolean
@@ -6,6 +6,7 @@
6
6
  local require = require(script.Parent.loader).load(script)
7
7
 
8
8
  local BaseObject = require("BaseObject")
9
+ local ValueObject = require("ValueObject")
9
10
 
10
11
  local SlaveClock = setmetatable({}, BaseObject)
11
12
  SlaveClock.__index = SlaveClock
@@ -24,7 +25,7 @@ function SlaveClock.new(remoteEvent, remoteFunction)
24
25
 
25
26
  self._remoteEvent = remoteEvent or error("No remoteEvent")
26
27
  self._remoteFunction = remoteFunction or error("No remoteFunction")
27
- self._ping = 0
28
+ self._ping = self._maid:Add(ValueObject.new(0, "number"))
28
29
 
29
30
  self._maid:GiveTask(self._remoteEvent.OnClientEvent:Connect(function(timeOne)
30
31
  self:_handleSyncEventAsync(timeOne)
@@ -51,6 +52,10 @@ function SlaveClock:GetClockFunction()
51
52
  return self._clockFunction
52
53
  end
53
54
 
55
+ function SlaveClock:ObservePing()
56
+ return self._ping:Observe()
57
+ end
58
+
54
59
  --[=[
55
60
  Converts the syncedTime to the original tick value.
56
61
  @param syncedTime number
@@ -90,7 +95,7 @@ end
90
95
  @return number
91
96
  ]=]
92
97
  function SlaveClock:GetPing()
93
- return self._ping
98
+ return self._ping.Value
94
99
  end
95
100
 
96
101
  function SlaveClock:_handleSyncEventAsync(timeOne)
@@ -126,7 +131,7 @@ function SlaveClock:_handleSyncEventAsync(timeOne)
126
131
 
127
132
  self._offset = offset -- Estimated difference between server/client
128
133
  self._pneWayDelay = oneWayDelay -- Estimated time for network events to send. (MSDelay/SMDelay)
129
- self._ping = ping
134
+ self._ping.Value = ping
130
135
 
131
136
  self._syncedBindable:Fire()
132
137
  end