37 lines
1.6 KiB
TypeScript
37 lines
1.6 KiB
TypeScript
import dotenv from 'dotenv'
|
|
|
|
dotenv.config()
|
|
|
|
class config {
|
|
// Server configuration
|
|
static ENV: string = process.env.ENV || 'development'
|
|
static HOST: string = process.env.HOST || '0.0.0.0'
|
|
static PORT: number = process.env.PORT ? parseInt(process.env.PORT) : 6969
|
|
static JWT_SECRET: string = process.env.JWT_SECRET || 'secret'
|
|
static CLIENT_URL: string = process.env.CLIENT_URL ? process.env.CLIENT_URL : 'https://noxious.gg'
|
|
|
|
// Database configuration
|
|
static REDIS_URL: string = process.env.REDIS_URL || 'redis://@127.0.0.1:6379/4'
|
|
static DB_HOST: string = process.env.DB_HOST || 'localhost'
|
|
static DB_USER: string = process.env.DB_USER || 'root'
|
|
static DB_PASS: string = process.env.DB_PASS || ''
|
|
static DB_PORT: number = process.env.DB_PORT ? parseInt(process.env.DB_PORT) : 3306
|
|
static DB_NAME: string = process.env.DB_NAME || 'game'
|
|
|
|
// Game configuration
|
|
static ALLOW_DIAGONAL_MOVEMENT: boolean = process.env.ALLOW_DIAGONAL_MOVEMENT === 'true'
|
|
|
|
// Default character create values
|
|
static DEFAULT_CHARACTER_ZONE: number = parseInt(process.env.DEFAULT_CHARACTER_ZONE || '1')
|
|
static DEFAULT_CHARACTER_X: number = parseInt(process.env.DEFAULT_CHARACTER_POS_X || '0')
|
|
static DEFAULT_CHARACTER_Y: number = parseInt(process.env.DEFAULT_CHARACTER_POS_Y || '0')
|
|
|
|
// Email configuration
|
|
static SMTP_HOST: string = process.env.SMTP_HOST || 'my.directonline.io'
|
|
static SMTP_PORT: number = process.env.SMTP_PORT ? parseInt(process.env.SMTP_PORT) : 587
|
|
static SMTP_USER: string = process.env.SMTP_USER || 'no-reply@noxious.gg'
|
|
static SMTP_PASSWORD: string = process.env.SMTP_PASSWORD || 'password'
|
|
}
|
|
|
|
export default config
|