mirror of
https://github.com/pagefaultgames/rogueserver.git
synced 2025-02-22 08:31:30 +08:00
Update StoreSystemSaveData
This commit is contained in:
parent
52c5c9ee6c
commit
9efd1b751a
@ -72,25 +72,22 @@ func ReadSystemSaveData(uuid []byte) (defs.SystemSaveData, error) {
|
||||
}
|
||||
|
||||
func StoreSystemSaveData(uuid []byte, data defs.SystemSaveData) error {
|
||||
systemData, err := ReadSystemSaveData(uuid)
|
||||
|
||||
currentTime := time.Now()
|
||||
futureTime := currentTime.Add(time.Hour * 24).UnixMilli()
|
||||
pastTime := currentTime.Add(-time.Hour * 24).UnixMilli()
|
||||
|
||||
systemData, err := ReadSystemSaveData(uuid)
|
||||
if err == nil { // system save exists
|
||||
// Check if the new data timestamp is in the past against the system save but only if the system save is not past 24 hours from now
|
||||
if systemData.Timestamp > data.Timestamp && systemData.Timestamp < int(futureTime) {
|
||||
// Error if the new data timestamp is older than the current system save timestamp
|
||||
return fmt.Errorf("attempted to save an older system save from %d when the current system save is from %d",
|
||||
data.Timestamp,
|
||||
systemData.Timestamp)
|
||||
return fmt.Errorf("attempted to save an older system save from %d when the current system save is from %d", data.Timestamp, systemData.Timestamp)
|
||||
}
|
||||
}
|
||||
|
||||
// Check if the data.Timestamp is too far in the future
|
||||
if data.Timestamp > int(futureTime) {
|
||||
return fmt.Errorf("attempted to save a system save in the future from %d", data.Timestamp)
|
||||
|
||||
}
|
||||
|
||||
// Check if the data.Timestamp is too far in the past
|
||||
|
Loading…
x
Reference in New Issue
Block a user