import UIKit
import CoreData

class Import25thAnniversary: ImportProtocol {
var moc: NSManagedObjectContext

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

func importDIM() {
// MARK: - DIM
let dim = addDIM(name: "25th Anniversary", franchise: "Digimon", imageName: "25thAnniversary-Header", dimType: "Vital Bracelet BE", id: "124", eggImage: "25thAnniversary-Egg", dimImage: "25thAnniversary-DIM", adventureIcon: "25thAnniversary-Adventure")

// MARK: - Digimon
// MARK: - Stage 1
let dotbotamon = addDigimon(name: "Botamon", dim: dim, stage: 1, imageName: "dotbotamon", imageNameSplash: "botamon-splash", type: free, activityType: "Stotic", characterID: 0)
let dotdokimon = addDigimon(name: "Dokimon", dim: dim, stage: 1, imageName: "dotdokimon", imageNameSplash: "dokimon-splash", type: free, activityType: "Stotic", adventureMode: true, adventureStage: 3, characterID: 17)

// MARK: - Stage 2
let dotbibimon = addDigimon(name: "Bibimon", dim: dim, stage: 2, imageName: "dotbibimon", imageNameSplash: "bibimon-splash", type: free, activityType: "Stotic", adventureMode: true, adventureStage: 3, characterID: 18)
let dotkoromon = addDigimon(name: "Koromon", dim: dim, stage: 2, imageName: "dotkoromon", imageNameSplash: "koromon-splash", type: free, activityType: "Stotic", characterID: 1)

// MARK: - Stage 3
let dotagumon = addDigimon(name: "Agumon", dim: dim, stage: 3, imageName: "dotagumon", imageNameSplash: "agumon-splash", type: vaccine, activityType: "Active", characterID: 2)
let dotbetamon = addDigimon(name: "Betamon", dim: dim, stage: 3, imageName: "dotbetamon", imageNameSplash: "betamon-splash", type: virus, activityType: "Indoor", characterID: 3)
let dotpulsemon = addDigimon(name: "Pulsemon", dim: dim, stage: 3, imageName: "dotpulsemon", imageNameSplash: "pulsemon-splash", type: free, activityType: "Active", adventureMode: true, adventureStage: 3, characterID: 19)

// MARK: - Stage 4
let dotairdramon = addDigimon(name: "Airdramon", dim: dim, stage: 4, imageName: "dotairdramon", imageNameSplash: "airdramon-splash", type: vaccine, activityType: "Active", characterID: 5)
let dotbulkmon = addDigimon(name: "Bulkmon", dim: dim, stage: 4, imageName: "dotbulkmon", imageNameSplash: "bulkmon-splash", type: vaccine, activityType: "Active", adventureMode: true, adventureStage: 6, characterID: 20)
let dotdevimon = addDigimon(name: "Devimon", dim: dim, stage: 4, imageName: "dotdevimon", imageNameSplash: "devimon-splash", type: virus, activityType: "Indoor", characterID: 9)
let dotgreymon = addDigimon(name: "Greymon", dim: dim, stage: 4, imageName: "dotgreymon", imageNameSplash: "greymon-splash", type: vaccine, activityType: "Active", characterID: 4)
let dotmeramon = addDigimon(name: "Meramon", dim: dim, stage: 4, imageName: "dotmeramon", imageNameSplash: "meramon-splash", type: data, activityType: "Normal", characterID: 8)
let dotnumemon = addDigimon(name: "Numemon", dim: dim, stage: 4, imageName: "dotnumemon", imageNameSplash: "numemon-splash", type: free, activityType: "Lazy", characterID: 10)
let dotseadramon = addDigimon(name: "Seadramon", dim: dim, stage: 4, imageName: "dotseadramon", imageNameSplash: "seadramon-splash", type: data, activityType: "Normal", characterID: 7)
let dottyrannomon = addDigimon(name: "Tyrannomon", dim: dim, stage: 4, imageName: "dottyrannomon", imageNameSplash: "tyrannomon-splash", type: data, activityType: "Normal", characterID: 6)

// MARK: - Stage 5
let dotboutmon = addDigimon(name: "Boutmon", dim: dim, stage: 5, imageName: "dotboutmon", imageNameSplash: "boutmon-splash", type: vaccine, activityType: "Active", adventureMode: true, adventureStage: 9, characterID: 21)
let dotmamemon = addDigimon(name: "Mamemon", dim: dim, stage: 5, imageName: "dotmamemon", imageNameSplash: "mamemon-splash", type: data, activityType: "Normal", characterID: 12)
let dotmetalgreymon_virus = addDigimon(name: "MetalGreymon (Virus)", dim: dim, stage: 5, imageName: "dotmetalgreymon_virus", imageNameSplash: "metalgreymon_virus-splash", type: virus, activityType: "Indoor", characterID: 11)
let dotmonzaemon = addDigimon(name: "Monzaemon", dim: dim, stage: 5, imageName: "dotmonzaemon", imageNameSplash: "monzaemon-splash", type: vaccine, activityType: "Active", characterID: 13)

// MARK: - Stage 6
let dotbanchomamemon = addDigimon(name: "BanchoMamemon", dim: dim, stage: 6, imageName: "dotbanchomamemon", imageNameSplash: "banchomamemon-splash", type: data, activityType: "Normal", characterID: 15)
let dotblitzgreymon = addDigimon(name: "BlitzGreymon", dim: dim, stage: 6, imageName: "dotblitzgreymon", imageNameSplash: "blitzgreymon-splash", type: virus, activityType: "Indoor", characterID: 14)
let dotkazuchimon = addDigimon(name: "Kazuchimon", dim: dim, stage: 6, imageName: "dotkazuchimon", imageNameSplash: "kazuchimon-splash", type: vaccine, activityType: "Active", adventureMode: true, adventureStage: 12, characterID: 22)
let dotshinmonzaemon = addDigimon(name: "ShinMonzaemon", dim: dim, stage: 6, imageName: "dotshinmonzaemon", imageNameSplash: "shinmonzaemon-splash", type: vaccine, activityType: "Active", characterID: 16)

// MARK: - Evolutions
// MARK: - Stage 1 to 2
addEvolution(from: dotdokimon, to: dotbibimon, minutes: evo1Hour)
addEvolution(from: dotbotamon, to: dotkoromon, minutes: evo1Hour)

// MARK: - Stage 2 to 3
addEvolution(from: dotkoromon, to: dotagumon, trophies: 5, vitalValues: 500, minutes: evo3Hours)
addEvolution(from: dotkoromon, to: dotbetamon, minutes: evo3Hours)
addEvolution(from: dotbibimon, to: dotpulsemon, minutes: evo3Hours)

// MARK: - Stage 3 to 4
addEvolution(from: dotbetamon, to: dotairdramon, trophies: 5, vitalValues: 1500, battles: 10, minutes: evo12Hours)
addEvolution(from: dotpulsemon, to: dotbulkmon, trophies: 12, vitalValues: 1500, battles: 10, minutes: evo12Hours)
addEvolution(from: dotbetamon, to: dotdevimon, trophies: 8, vitalValues: 1000, battles: 5, minutes: evo12Hours)
addEvolution(from: dotagumon, to: dotdevimon, trophies: 8, vitalValues: 1000, battles: 5, minutes: evo12Hours)
addEvolution(from: dotagumon, to: dotgreymon, trophies: 12, vitalValues: 1500, battles: 10, minutes: evo12Hours)
addEvolution(from: dotbetamon, to: dotmeramon, trophies: 5, vitalValues: 500, battles: 3, minutes: evo12Hours)
addEvolution(from: dotagumon, to: dotmeramon, trophies: 5, vitalValues: 500, battles: 3, minutes: evo12Hours)
addEvolution(from: dotbetamon, to: dotnumemon, trophies: 5, vitalValues: 500, battles: 3, minutes: evo12Hours)
addEvolution(from: dotagumon, to: dotnumemon, minutes: evo12Hours)
addEvolution(from: dotbetamon, to: dotseadramon, trophies: 8, vitalValues: 1000, battles: 5, minutes: evo12Hours)
addEvolution(from: dotagumon, to: dottyrannomon, trophies: 10, vitalValues: 1000, battles: 8, minutes: evo12Hours)

// MARK: - Stage 4 to 5
addEvolution(from: dotbulkmon, to: dotboutmon, trophies: 12, vitalValues: 2500, battles: 10, winRatio: 40, minutes: evo24Hours)
addEvolution(from: dottyrannomon, to: dotmamemon, trophies: 5, vitalValues: 500, battles: 3, minutes: evo24Hours)
addEvolution(from: dotseadramon, to: dotmamemon, trophies: 5, vitalValues: 500, battles: 3, minutes: evo24Hours)
addEvolution(from: dotmeramon, to: dotmamemon, trophies: 5, vitalValues: 500, battles: 3, minutes: evo24Hours)
addEvolution(from: dotgreymon, to: dotmetalgreymon_virus, trophies: 12, vitalValues: 2500, battles: 15, winRatio: 50, minutes: evo24Hours)
addEvolution(from: dotairdramon, to: dotmetalgreymon_virus, trophies: 12, vitalValues: 2500, battles: 15, winRatio: 50, minutes: evo24Hours)
addEvolution(from: dotdevimon, to: dotmetalgreymon_virus, trophies: 12, vitalValues: 2500, battles: 15, winRatio: 50, minutes: evo24Hours)
addEvolution(from: dotnumemon, to: dotmonzaemon, trophies: 15, vitalValues: 3000, battles: 20, winRatio: 50, minutes: evo24Hours)

// MARK: - Stage 5 to 6
addEvolution(from: dotmamemon, to: dotbanchomamemon, trophies: 15, vitalValues: 3500, battles: 15, winRatio: 50, minutes: evo24Hours)
addEvolution(from: dotmetalgreymon_virus, to: dotblitzgreymon, trophies: 15, vitalValues: 3500, battles: 15, winRatio: 50, minutes: evo24Hours)
addEvolution(from: dotboutmon, to: dotkazuchimon, trophies: 20, vitalValues: 3500, battles: 20, winRatio: 50, minutes: evo24Hours)
addEvolution(from: dotmonzaemon, to: dotshinmonzaemon, trophies: 20, vitalValues: 4000, battles: 20, winRatio: 60, minutes: evo24Hours)

// MARK: - Adventure Mode
addAdventureMode(stage : 1, steps: 500, digimon : dotagumon, dim : dim)
addAdventureMode(stage : 2, steps: 500, digimon : dotbetamon, dim : dim)
addAdventureMode(stage : 3, steps: 500, digimon : dotpulsemon, unlock : true, dim : dim)
addAdventureMode(stage : 4, steps: 1000, digimon : dotnumemon, dim : dim)
addAdventureMode(stage : 5, steps: 1000, digimon : dottyrannomon, dim : dim)
addAdventureMode(stage : 6, steps: 1000, digimon : dotbulkmon, unlock : true, dim : dim)
addAdventureMode(stage : 7, steps: 1500, digimon : dotmetalgreymon_virus, dim : dim)
addAdventureMode(stage : 8, steps: 1500, digimon : dotmamemon, dim : dim)
addAdventureMode(stage : 9, steps: 1500, digimon : dotboutmon, unlock : true, dim : dim)
addAdventureMode(stage : 10, steps: 2000, digimon : dotblitzgreymon, dim : dim)
addAdventureMode(stage : 11, steps: 2000, digimon : dotshinmonzaemon, dim : dim)
addAdventureMode(stage : 12, steps: 2000, digimon : dotkazuchimon, unlock : true, dim : dim)
}
}