forked from noxious/server
Date & weather manager fixes
This commit is contained in:
parent
9bdafd5026
commit
f2d0e87e26
@ -1,9 +1,9 @@
|
|||||||
import { Server } from 'socket.io'
|
import { Server } from 'socket.io'
|
||||||
|
|
||||||
import Logger, { LoggerType } from '#application/logger'
|
import Logger, { LoggerType } from '#application/logger'
|
||||||
|
import { World } from '#entities/world'
|
||||||
import SocketManager from '#managers/socketManager'
|
import SocketManager from '#managers/socketManager'
|
||||||
import WorldRepository from '#repositories/worldRepository'
|
import WorldRepository from '#repositories/worldRepository'
|
||||||
import WorldService from '#services/worldService'
|
|
||||||
|
|
||||||
class DateManager {
|
class DateManager {
|
||||||
private static readonly CONFIG = {
|
private static readonly CONFIG = {
|
||||||
@ -90,7 +90,11 @@ class DateManager {
|
|||||||
private async saveDate(): Promise<void> {
|
private async saveDate(): Promise<void> {
|
||||||
try {
|
try {
|
||||||
const worldRepository = new WorldRepository()
|
const worldRepository = new WorldRepository()
|
||||||
await (await worldRepository.getFirst())?.setDate(this.currentDate).save()
|
|
||||||
|
let world = await worldRepository.getFirst()
|
||||||
|
if (!world) world = new World()
|
||||||
|
|
||||||
|
await world.setDate(this.currentDate).save()
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
this.handleError('Failed to save date', error)
|
this.handleError('Failed to save date', error)
|
||||||
}
|
}
|
||||||
|
@ -1,9 +1,9 @@
|
|||||||
import { Server } from 'socket.io'
|
import { Server } from 'socket.io'
|
||||||
|
|
||||||
import Logger, { LoggerType } from '#application/logger'
|
import Logger, { LoggerType } from '#application/logger'
|
||||||
|
import { World } from '#entities/world'
|
||||||
import SocketManager from '#managers/socketManager'
|
import SocketManager from '#managers/socketManager'
|
||||||
import WorldRepository from '#repositories/worldRepository'
|
import WorldRepository from '#repositories/worldRepository'
|
||||||
import WorldService from '#services/worldService'
|
|
||||||
|
|
||||||
type WeatherState = {
|
type WeatherState = {
|
||||||
isRainEnabled: boolean
|
isRainEnabled: boolean
|
||||||
@ -114,8 +114,12 @@ class WeatherManager {
|
|||||||
private async saveWeather(): Promise<void> {
|
private async saveWeather(): Promise<void> {
|
||||||
try {
|
try {
|
||||||
const worldRepository = new WorldRepository()
|
const worldRepository = new WorldRepository()
|
||||||
await (await worldRepository.getFirst())
|
|
||||||
?.setIsRainEnabled(this.weatherState.isRainEnabled)
|
let world = await worldRepository.getFirst()
|
||||||
|
if (!world) world = new World()
|
||||||
|
|
||||||
|
await world
|
||||||
|
.setIsRainEnabled(this.weatherState.isRainEnabled)
|
||||||
.setRainPercentage(this.weatherState.rainPercentage)
|
.setRainPercentage(this.weatherState.rainPercentage)
|
||||||
.setIsFogEnabled(this.weatherState.isFogEnabled)
|
.setIsFogEnabled(this.weatherState.isFogEnabled)
|
||||||
.setFogDensity(this.weatherState.fogDensity)
|
.setFogDensity(this.weatherState.fogDensity)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user