import UIKit
import CoreData

class ImportAgumon: ImportProtocol {
var moc: NSManagedObjectContext

required init(viewContext: NSManagedObjectContext) {
moc = viewContext
}

func importDIM() {
// MARK: - DIM
let dim = addDIM(name: "Agumon", franchise: "Digimon", imageName: "Agumon-Header", dimType: "Vital Bracelet/Hero", id: "12", eggImage: "Agumon-Egg", dimImage: "Agumon-DIM")

// MARK: - Digimon
// MARK: - Stage 1
let botamon = addDigimon(name: "Botamon", dim: dim, stage: 1, imageName: "botamon", imageNameSplash: "botamon-splash", type: free, activityType: "Normal", characterID: 0)

// MARK: - Stage 2
let koromon = addDigimon(name: "Koromon", dim: dim, stage: 2, imageName: "koromon", imageNameSplash: "koromon-splash", type: free, activityType: "Normal", characterID: 1)

// MARK: - Stage 3
let agumon = addDigimon(name: "Agumon", dim: dim, stage: 3, imageName: "agumon", imageNameSplash: "agumon-splash", type: vaccine, activityType: "Active", characterID: 2)

// MARK: - Stage 4
let argomon_champion = addDigimon(name: "Argomon (Champion)", dim: dim, stage: 4, imageName: "argomon_champion", imageNameSplash: "argomon_champion-splash", type: virus, activityType: "Lazy", characterID: 6)
let coelamon = addDigimon(name: "Coelamon", dim: dim, stage: 4, imageName: "coelamon", imageNameSplash: "coelamon-splash", type: data, activityType: "Normal", characterID: 4)
let greymon = addDigimon(name: "Greymon", dim: dim, stage: 4, imageName: "greymon", imageNameSplash: "greymon-splash", type: vaccine, activityType: "Active", characterID: 3)
let ogremon = addDigimon(name: "Ogremon", dim: dim, stage: 4, imageName: "ogremon", imageNameSplash: "ogremon-splash", type: virus, activityType: "Stotic", characterID: 5)

// MARK: - Stage 5
let andromon = addDigimon(name: "Andromon", dim: dim, stage: 5, imageName: "andromon", imageNameSplash: "andromon-splash", type: vaccine, activityType: "Indoor", characterID: 8)
let mamemon = addDigimon(name: "Mamemon", dim: dim, stage: 5, imageName: "mamemon", imageNameSplash: "mamemon-splash", type: data, activityType: "Normal", characterID: 10)
let metal_greymon = addDigimon(name: "Metal Greymon", dim: dim, stage: 5, imageName: "metal_greymon", imageNameSplash: "metal_greymon-splash", type: vaccine, activityType: "Active", characterID: 7)
let metaltyrannomon = addDigimon(name: "MetalTyrannomon", dim: dim, stage: 5, imageName: "metaltyrannomon", imageNameSplash: "metaltyrannomon-splash", type: virus, activityType: "Normal", characterID: 12)
let neodevimon = addDigimon(name: "NeoDevimon", dim: dim, stage: 5, imageName: "neodevimon", imageNameSplash: "neodevimon-splash", type: virus, activityType: "Stotic", characterID: 11)
let scorpiomon = addDigimon(name: "Scorpiomon", dim: dim, stage: 5, imageName: "scorpiomon", imageNameSplash: "scorpiomon-splash", type: data, activityType: "Lazy", characterID: 9)

// MARK: - Stage 6
let blitzgreymon = addDigimon(name: "BlitzGreymon", dim: dim, stage: 6, imageName: "blitzgreymon", imageNameSplash: "blitzgreymon-splash", type: virus, activityType: "Indoor", characterID: 15)
let donedevimon = addDigimon(name: "DoneDevimon", dim: dim, stage: 6, imageName: "donedevimon", imageNameSplash: "donedevimon-splash", type: virus, activityType: "Stotic", adventureMode: true, adventureStage: 15, characterID: 16)
let omnimon = addDigimon(name: "Omnimon", dim: dim, stage: 6, imageName: "omnimon", imageNameSplash: "omnimon-splash", type: vaccine, activityType: "Normal", characterID: 14)
let wargreymon = addDigimon(name: "WarGreymon", dim: dim, stage: 6, imageName: "wargreymon", imageNameSplash: "wargreymon-splash", type: vaccine, activityType: "Active", characterID: 13)

// MARK: - Evolutions
// MARK: - Stage 1 to 2
addEvolution(from: botamon, to: koromon, minutes: evo1Hour)

// MARK: - Stage 2 to 3
addEvolution(from: koromon, to: agumon, minutes: evo3Hours)

// MARK: - Stage 3 to 4
addEvolution(from: agumon, to: argomon_champion, trophies: 5, vitalValues: 800, battles: 3, minutes: evo16Hours)
addEvolution(from: agumon, to: coelamon, minutes: evo16Hours)
addEvolution(from: agumon, to: greymon, trophies: 5, vitalValues: 1200, battles: 8, minutes: evo16Hours)
addEvolution(from: agumon, to: ogremon, trophies: 3, vitalValues: 500, minutes: evo16Hours)

// MARK: - Stage 4 to 5
addEvolution(from: coelamon, to: andromon, trophies: 12, vitalValues: 3000, battles: 15, winRatio: 70, minutes: evo24Hours)
addEvolution(from: ogremon, to: andromon, trophies: 12, vitalValues: 3000, battles: 15, winRatio: 70, minutes: evo24Hours)
addEvolution(from: argomon_champion, to: mamemon, trophies: 10, vitalValues: 2500, battles: 10, winRatio: 50, minutes: evo24Hours)
addEvolution(from: ogremon, to: mamemon, trophies: 10, vitalValues: 2500, battles: 10, winRatio: 50, minutes: evo24Hours)
addEvolution(from: argomon_champion, to: metal_greymon, trophies: 12, vitalValues: 3000, battles: 15, winRatio: 70, minutes: evo24Hours)
addEvolution(from: greymon, to: metal_greymon, trophies: 12, vitalValues: 3000, battles: 15, winRatio: 70, minutes: evo24Hours)
addEvolution(from: greymon, to: metaltyrannomon, trophies: 6, vitalValues: 2000, battles: 10, winRatio: 50, minutes: evo24Hours)
addEvolution(from: argomon_champion, to: metaltyrannomon, trophies: 6, vitalValues: 2000, battles: 10, winRatio: 50, minutes: evo24Hours)
addEvolution(from: ogremon, to: neodevimon, trophies: 6, vitalValues: 2000, battles: 10, winRatio: 50, minutes: evo24Hours)
addEvolution(from: coelamon, to: neodevimon, trophies: 6, vitalValues: 2000, battles: 10, winRatio: 50, minutes: evo24Hours)
addEvolution(from: coelamon, to: scorpiomon, trophies: 10, vitalValues: 2500, battles: 10, winRatio: 50, minutes: evo24Hours)
addEvolution(from: greymon, to: scorpiomon, trophies: 10, vitalValues: 2500, battles: 10, winRatio: 50, minutes: evo24Hours)

// MARK: - Stage 5 to 6
addEvolution(from: neodevimon, to: blitzgreymon, trophies: 15, vitalValues: 4500, battles: 15, winRatio: 70, minutes: evo24Hours)
addEvolution(from: mamemon, to: blitzgreymon, trophies: 15, vitalValues: 4500, battles: 15, winRatio: 70, minutes: evo24Hours)
addEvolution(from: scorpiomon, to: blitzgreymon, trophies: 15, vitalValues: 4500, battles: 15, winRatio: 70, minutes: evo24Hours)
addEvolution(from: metal_greymon, to: blitzgreymon, trophies: 15, vitalValues: 4500, battles: 15, winRatio: 70, minutes: evo24Hours)
addEvolution(from: metaltyrannomon, to: blitzgreymon, trophies: 15, vitalValues: 4500, battles: 15, winRatio: 70, minutes: evo24Hours)
addEvolution(from: andromon, to: donedevimon, trophies: 20, vitalValues: 7000, battles: 25, winRatio: 70, minutes: evo24Hours)
addEvolution(from: mamemon, to: donedevimon, trophies: 20, vitalValues: 7000, battles: 25, winRatio: 70, minutes: evo24Hours)
addEvolution(from: neodevimon, to: donedevimon, trophies: 20, vitalValues: 7000, battles: 25, winRatio: 70, minutes: evo24Hours)
addEvolution(from: metaltyrannomon, to: wargreymon, trophies: 20, vitalValues: 5000, battles: 20, winRatio: 70, minutes: evo24Hours)
addEvolution(from: andromon, to: wargreymon, trophies: 20, vitalValues: 5000, battles: 20, winRatio: 70, minutes: evo24Hours)
addEvolution(from: scorpiomon, to: wargreymon, trophies: 20, vitalValues: 5000, battles: 20, winRatio: 70, minutes: evo24Hours)
addEvolution(from: metal_greymon, to: wargreymon, trophies: 10, vitalValues: 5000, battles: 20, winRatio: 70, minutes: evo24Hours)

// MARK: - Stage 6 to 7
addEvolution(from: wargreymon, to: omnimon, isJogress: true, jogressAnotherDIM: true, jogressDIM: 13, jogressCharacterID: 13, minutes: evo3Hours)

// MARK: - Adventure Mode
addAdventureMode(stage : 1, steps: 500, digimon : agumon, dim : dim)
addAdventureMode(stage : 2, steps: 1000, digimon : argomon_champion, dim : dim)
addAdventureMode(stage : 3, steps: 1000, digimon : ogremon, dim : dim)
addAdventureMode(stage : 4, steps: 1000, digimon : coelamon, dim : dim)
addAdventureMode(stage : 5, steps: 1000, digimon : greymon, dim : dim)
addAdventureMode(stage : 6, steps: 1500, digimon : metaltyrannomon, dim : dim)
addAdventureMode(stage : 7, steps: 1500, digimon : mamemon, dim : dim)
addAdventureMode(stage : 8, steps: 1500, digimon : andromon, dim : dim)
addAdventureMode(stage : 9, steps: 1500, digimon : neodevimon, dim : dim)
addAdventureMode(stage : 10, steps: 1500, digimon : scorpiomon, dim : dim)
addAdventureMode(stage : 11, steps: 1500, digimon : metal_greymon, dim : dim)
addAdventureMode(stage : 12, steps: 2000, digimon : wargreymon, dim : dim)
addAdventureMode(stage : 13, steps: 2000, digimon : blitzgreymon, dim : dim)
addAdventureMode(stage : 14, steps: 2000, digimon : omnimon, dim : dim)
addAdventureMode(stage : 15, steps: 2500, digimon : donedevimon, unlock : true, dim : dim)
}
}