import { moneyTotal } from '../../utils/moneyTotal.js'
import { PURCHASEABLE_COMBINES } from '../../constants.js'

export const purchaseCombine = (
  state: farmhand.state,
  combineId: number
): farmhand.state => {
  const { money, purchasedCombine } = state

  if (purchasedCombine >= combineId) {
    return state
  }

  const combine = PURCHASEABLE_COMBINES.get(combineId)
  const price = combine?.price || 0

  return {
    ...state,
    purchasedCombine: combineId,
    money: moneyTotal(money, -price),
  }
}
