Improvements to weatherManager
This commit is contained in:
parent
f5c4f3df19
commit
6e58de8840
@ -1,6 +1,6 @@
|
|||||||
import { Server } from 'socket.io'
|
import { Server } from 'socket.io'
|
||||||
|
|
||||||
import { appLogger } from '#application/logger'
|
import Logger, { LoggerType } from '#application/logger'
|
||||||
import worldRepository from '#repositories/worldRepository'
|
import worldRepository from '#repositories/worldRepository'
|
||||||
import worldService from '#services/worldService'
|
import worldService from '#services/worldService'
|
||||||
|
|
||||||
@ -15,6 +15,7 @@ class WeatherManager {
|
|||||||
private static readonly UPDATE_INTERVAL = 60000 // Check weather every minute
|
private static readonly UPDATE_INTERVAL = 60000 // Check weather every minute
|
||||||
private static readonly RAIN_CHANCE = 0.2 // 20% chance of rain
|
private static readonly RAIN_CHANCE = 0.2 // 20% chance of rain
|
||||||
private static readonly FOG_CHANCE = 0.15 // 15% chance of fog
|
private static readonly FOG_CHANCE = 0.15 // 15% chance of fog
|
||||||
|
private readonly logger = Logger.type(LoggerType.APP)
|
||||||
|
|
||||||
private io: Server | null = null
|
private io: Server | null = null
|
||||||
private intervalId: NodeJS.Timeout | null = null
|
private intervalId: NodeJS.Timeout | null = null
|
||||||
@ -29,7 +30,7 @@ class WeatherManager {
|
|||||||
// this.io = io
|
// this.io = io
|
||||||
// await this.loadWeather()
|
// await this.loadWeather()
|
||||||
// this.startWeatherLoop()
|
// this.startWeatherLoop()
|
||||||
appLogger.info('Weather manager loaded')
|
this.logger.info('Weather manager loaded')
|
||||||
}
|
}
|
||||||
|
|
||||||
public async toggleRain(): Promise<void> {
|
public async toggleRain(): Promise<void> {
|
||||||
@ -65,7 +66,7 @@ class WeatherManager {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
appLogger.error(`Failed to load weather: ${error instanceof Error ? error.message : String(error)}`)
|
this.logger.error(`Failed to load weather: ${error instanceof Error ? error.message : String(error)}`)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -78,7 +79,7 @@ class WeatherManager {
|
|||||||
this.updateWeather()
|
this.updateWeather()
|
||||||
this.emitWeather()
|
this.emitWeather()
|
||||||
await this.saveWeather().catch((error) => {
|
await this.saveWeather().catch((error) => {
|
||||||
appLogger.error(`Failed to save weather: ${error instanceof Error ? error.message : String(error)}`)
|
this.logger.error(`Failed to save weather: ${error instanceof Error ? error.message : String(error)}`)
|
||||||
})
|
})
|
||||||
}, WeatherManager.UPDATE_INTERVAL)
|
}, WeatherManager.UPDATE_INTERVAL)
|
||||||
}
|
}
|
||||||
@ -114,7 +115,7 @@ class WeatherManager {
|
|||||||
fogDensity: this.weatherState.fogDensity
|
fogDensity: this.weatherState.fogDensity
|
||||||
})
|
})
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
appLogger.error(`Failed to save weather: ${error instanceof Error ? error.message : String(error)}`)
|
this.logger.error(`Failed to save weather: ${error instanceof Error ? error.message : String(error)}`)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user