import { Entity, PrimaryKey, Property } from '@mikro-orm/core'

import { BaseEntity } from '#application/base/baseEntity'

export class BaseWorld extends BaseEntity {
  @PrimaryKey()
  date = new Date()

  @Property()
  rainPercentage = 0

  @Property()
  fogDensity = 0

  setDate(date: Date) {
    this.date = date
    return this
  }

  getDate() {
    return this.date
  }

  setRainPercentage(rainPercentage: number) {
    this.rainPercentage = rainPercentage
    return this
  }

  getRainPercentage() {
    return this.rainPercentage
  }

  setFogDensity(fogDensity: number) {
    this.fogDensity = fogDensity
    return this
  }

  getFogDensity() {
    return this.fogDensity
  }
}