add Time, reducing some duplication
This commit is contained in:
parent
e737015d7e
commit
b6999e4f1f
7 changed files with 70 additions and 85 deletions
|
|
@ -1,5 +1,6 @@
|
|||
import Geometry from './Geometry.js'
|
||||
import Protocol from './Protocol.js'
|
||||
import Time from './Time.js'
|
||||
import Util from './Util.js'
|
||||
|
||||
// Map<gameId, GameObject>
|
||||
|
|
@ -89,14 +90,14 @@ function playerExists(gameId, playerId) {
|
|||
}
|
||||
|
||||
function getRelevantPlayers(gameId, ts) {
|
||||
const minTs = ts - 30000
|
||||
const minTs = ts - 30 * Time.SEC
|
||||
return getAllPlayers(gameId).filter(player => {
|
||||
return player.ts >= minTs || player.points > 0
|
||||
})
|
||||
}
|
||||
|
||||
function getActivePlayers(gameId, ts) {
|
||||
const minTs = ts - 30000
|
||||
const minTs = ts - 30 * Time.SEC
|
||||
return getAllPlayers(gameId).filter(player => {
|
||||
return player.ts >= minTs
|
||||
})
|
||||
|
|
|
|||
45
common/Time.js
Normal file
45
common/Time.js
Normal file
|
|
@ -0,0 +1,45 @@
|
|||
const MS = 1
|
||||
const SEC = MS * 1000
|
||||
const MIN = SEC * 60
|
||||
const HOUR = MIN * 60
|
||||
const DAY = HOUR * 24
|
||||
|
||||
export const timestamp = () => {
|
||||
const d = new Date();
|
||||
return Date.UTC(
|
||||
d.getUTCFullYear(),
|
||||
d.getUTCMonth(),
|
||||
d.getUTCDate(),
|
||||
d.getUTCHours(),
|
||||
d.getUTCMinutes(),
|
||||
d.getUTCSeconds(),
|
||||
d.getUTCMilliseconds(),
|
||||
)
|
||||
}
|
||||
|
||||
export const timeDiffStr = (from, to) => {
|
||||
let diff = to - from
|
||||
const d = Math.floor(diff / DAY)
|
||||
diff = diff % DAY
|
||||
|
||||
const h = Math.floor(diff / HOUR)
|
||||
diff = diff % HOUR
|
||||
|
||||
const m = Math.floor(diff / MIN)
|
||||
diff = diff % MIN
|
||||
|
||||
const s = Math.floor(diff / SEC)
|
||||
|
||||
return `${d}d ${h}h ${m}m ${s}s`
|
||||
}
|
||||
|
||||
export default {
|
||||
MS,
|
||||
SEC,
|
||||
MIN,
|
||||
HOUR,
|
||||
DAY,
|
||||
|
||||
timestamp,
|
||||
timeDiffStr,
|
||||
}
|
||||
|
|
@ -69,19 +69,6 @@ export const shuffle = (
|
|||
return arr
|
||||
}
|
||||
|
||||
export const timestamp = () => {
|
||||
const d = new Date();
|
||||
return Date.UTC(
|
||||
d.getUTCFullYear(),
|
||||
d.getUTCMonth(),
|
||||
d.getUTCDate(),
|
||||
d.getUTCHours(),
|
||||
d.getUTCMinutes(),
|
||||
d.getUTCSeconds(),
|
||||
d.getUTCMilliseconds(),
|
||||
)
|
||||
}
|
||||
|
||||
function encodeShape(data) {
|
||||
if (typeof data === 'number') {
|
||||
return data
|
||||
|
|
@ -224,7 +211,6 @@ export default {
|
|||
choice,
|
||||
throttle,
|
||||
shuffle,
|
||||
timestamp,
|
||||
|
||||
encodeShape,
|
||||
decodeShape,
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue