package fmon import com.fasterxml.jackson.databind.ObjectMapper import com.fasterxml.jackson.dataformat.yaml.YAMLFactory import com.fasterxml.jackson.module.scala.DefaultScalaModule import scala.reflect.runtime.universe._ import scala.tools.reflect.ToolBox import fmon.battle.BattleEngine import fmon.stat._ case class Prop(url : Seq[String]) object Game { def main(args : Array[String]): Unit = { implicit val rng = new scala.util.Random() val form1 = Form("Diabolo") val form2 = Form("Chanilla") val movepool1 = IndexedSeq(Move("Confuse Ray")) val movepool2 = IndexedSeq(Move("Headbutt")) val p1 = TrainerID("Jaeda", Gender.Female, 0) val p2 = TrainerID("Wild Monster", Gender.Male, 0) val party1 = new Party(p1, new MonsterPtr(new Monster(new StorageMon("Allied Mon", 500, Gene.randomGene(null, form1), form1, Statistic.emptyEvs, movepool1))), IndexedSeq()) val party2 = new Party(p2, new MonsterPtr(new Monster(new StorageMon("Wild Mon", 500, Gene.randomGene(null, form2), form2, Statistic.emptyEvs, movepool2))), IndexedSeq( new Monster(new StorageMon("Sideboard Mon", 500, Gene.randomGene(null, form2), form2, Statistic.emptyEvs, movepool2)) )) println(form1.xpCurve) val engine = new BattleEngine(party1, party2) engine.play() println(party1.lead.elements) } }