JSFiddle - React, Tailwind, and code Playground

by Chad Drummond

JavaScript

function goodVsEvil(good, evil){
  let goodScores = [1, 2, 3, 3, 4, 10]
  let evilScores = [1, 2, 2, 2, 3, 5, 10]
  
  let goodValue = 0
  good.split(' ').forEach((qty, i) => {
    goodValue += Number(qty) * goodScores[i]
  })
  
  let evilValue = 0
  evil.split(' ').forEach((qty, i) => {
    evilValue += Number(qty) * evilScores[i]
  })
  
  let results = {
    good: 'Battle Result: Good triumphs over Evil',
    evil: 'Battle Result: Evil eradicates all trace of Good',
    tie: 'Battle Result: No victor on this battle field'
  }
  
  let winner = 'tie'
  if (goodValue > evilValue) {
    winner = 'good'
  }
  if (evilValue > goodValue) {
    winner = 'evil'
  }
  
  return results[winner]
}