package data.scripts.world;

import com.fs.starfarer.api.campaign.FactionAPI;
import com.fs.starfarer.api.campaign.RepLevel;
import com.fs.starfarer.api.campaign.SectorAPI;
import com.fs.starfarer.api.campaign.SectorGeneratorPlugin;
import com.fs.starfarer.api.impl.campaign.shared.SharedData;
import data.scripts.world.systems.Aesir;
import data.scripts.world.systems.PenelopeAddon;

@SuppressWarnings("unchecked")
public class NGOGen implements SectorGeneratorPlugin
{
    @Override
    public void generate (SectorAPI sector)
    {
        new Aesir().generate(sector);
        new PenelopeAddon().generate(sector);

        FactionAPI ngo = sector.getFaction("new_galactic_order");
        SharedData.getData().getPersonBountyEventData().addParticipatingFaction("new_galactic_order");

        FactionAPI hegemony = sector.getFaction("hegemony");
        FactionAPI tritachyon = sector.getFaction("tritachyon");
        FactionAPI pirates = sector.getFaction("pirates");
        FactionAPI independent = sector.getFaction("independent");
        FactionAPI kol = sector.getFaction("knights_of_ludd");
        FactionAPI church = sector.getFaction("luddic_church");
        FactionAPI path = sector.getFaction("luddic_path");
        FactionAPI persean = sector.getFaction("persean");

        ngo.setRelationship(hegemony.getId(), RepLevel.SUSPICIOUS);
        ngo.setRelationship(tritachyon.getId(), RepLevel.SUSPICIOUS);
        ngo.setRelationship(pirates.getId(), RepLevel.HOSTILE);
        ngo.setRelationship(independent.getId(), RepLevel.FRIENDLY);
        ngo.setRelationship(kol.getId(), RepLevel.SUSPICIOUS);
        ngo.setRelationship(church.getId(), RepLevel.SUSPICIOUS);
        ngo.setRelationship(path.getId(), RepLevel.VENGEFUL);
        ngo.setRelationship(persean.getId(), RepLevel.FRIENDLY);
        ngo.setRelationship("interstellarimperium", RepLevel.WELCOMING);
        ngo.setRelationship("tiandong", RepLevel.WELCOMING);
        ngo.setRelationship("mayorate", RepLevel.WELCOMING);
        ngo.setRelationship("SCY", RepLevel.SUSPICIOUS);
        ngo.setRelationship("diableavionics", RepLevel.SUSPICIOUS);
        ngo.setRelationship("sylphon", RepLevel.SUSPICIOUS);
        ngo.setRelationship("dassault_mikoyan", RepLevel.SUSPICIOUS);
    }
}
