package de.nowchess.bot.bots.nnue

import de.nowchess.api.game.GameContext
import de.nowchess.bot.ai.Weights

object EvaluationNNUE extends Weights:

  private val nnue = NNUE()

  val CHECKMATE_SCORE: Int = 10_000_000
  val DRAW_SCORE: Int = 0

  /** Evaluate the position using NNUE neural network.
   *  Returns score from the perspective of context.turn (positive = good for the side to move). */
  def evaluate(context: GameContext): Int =
    nnue.evaluate(context)
