Example #1
0
        public ShipHullRessources(SSDirectory directory, VariantsRessources variantsResources)
        {
            Directory          = directory;
            VariantsRessources = variantsResources;

            RefreshRessource();
        }
Example #2
0
        public PortraitsRessources(SSDirectory directory)
        {
            Directory       = directory;
            ReferencedFiles = (from KeyValuePair <string, ISSGroup> kv in Directory.GroupedFiles
                               where kv.Value is SSFactionGroup
                               select kv.Value as SSFactionGroup).ToList();
            IEnumerable <JsonValue> ReferencedPortrait = ReferencedFiles.SelectMany(g =>
            {
                List <JsonToken> result = new List <JsonToken>();
                if (g.MalePortraits != null)
                {
                    result.AddRange(g.MalePortraits.GetOriginalContent());
                }
                if (g.FemalePortraits != null)
                {
                    result.AddRange(g.FemalePortraits.GetOriginalContent());
                }
                return(result);
            }).Distinct().Cast <JsonValue>();

            foreach (JsonValue referenced in ReferencedPortrait)
            {
                string    pathRelative = referenced.ToString().Replace('/', '\\');
                Portraits port         = this.FindBinaryFromDirectory(pathRelative);
                if (port != null)
                {
                    RessourceCorrespondance.Add(pathRelative, port);
                }
            }
        }
Example #3
0
        /// <summary>Constructor for an editor modifying faction files of the directory</summary>
        /// <param name="directory">list of all groups made by currents mods</param>
        /// <param name="receiver">Mod target where modification are stored</param>
        public FactionEditor(SSDirectory directory)
        {
            this.Directory = directory;
            this.GetFaction();
            this.PortraitsRessource = new PortraitsRessources(Directory);
            var VariantsRessources = new VariantsRessources(Directory);

            this.ShipHullRessources  = new ShipHullRessources(Directory, VariantsRessources);
            this.BPPackageRessources = new BPPackageRessources(directory, ShipHullRessources);
        }
Example #4
0
 public VariantsRessources(SSDirectory directory)
 {
     Directory    = directory;
     VariantFiles = (from KeyValuePair <string, ISSGroup> kv in Directory.GroupedFiles
                     where kv.Value is SSVariantGroup
                     select kv.Value).Select(g =>
     {
         SSVariantGroup f = (SSVariantGroup)g;
         if (f.MonitoredContent == null)
         {
             f.ExtractMonitoredContent();
         }
         return(g as SSVariantGroup);
     }).ToList();
 }
Example #5
0
        static void Main()
        {
            SSBaseUrl SSUrl   = new SSBaseUrl("E:\\SS\\Starsector");
            SSLinkUrl CoreUrl = new SSLinkUrl("starsector-core");
            //SSLinkUrl TahlanUrl = new SSLinkUrl("mods\\tahlan");
            SSLinkUrl     SWPUrl      = new SSLinkUrl("mods\\Ship and Weapon Pack");
            SSRelativeUrl shipdataUrl = new SSRelativeUrl("data\\hulls\\ship_data.csv");

            SSFullUrl  dataurl = SSUrl + SWPUrl + shipdataUrl;
            CSVContent content;

            using (StreamReader sr = File.OpenText(dataurl.ToString()))
            {
                content = CSVContent.ExtractFromText(sr);
            }

            dataurl = SSUrl + CoreUrl + shipdataUrl;
            CSVContent content2;

            using (StreamReader sr = File.OpenText(dataurl.ToString()))
            {
                content2 = CSVContent.ExtractFromText(sr);
            }

            CSVContent content3 = CSVContent.Merge(new[] { content, content2 });
            var        b        = content3.GetLineByColumnValue("id", "swp_archon")["tags"];
            //SSBaseUrl ModFolderPath = SSUrl + "mods";
            //DirectoryInfo ModsDirectory = new DirectoryInfo(ModFolderPath.ToString());
            //IEnumerable<DirectoryInfo> ModsEnumerable = ModsDirectory.EnumerateDirectories();

            SSDirectory directory = new SSDirectory();

            directory.InstallationUrl = SSUrl;
            directory.ReadMods();
            directory.PopulateMergedCollections();
            VariantsRessources  variant     = new VariantsRessources(directory);
            ShipHullRessources  ship        = new ShipHullRessources(directory, variant);
            BPPackageRessources BPRessource = new BPPackageRessources(directory, ship);
            //SSDirectory test = new SSDirectory(SSUrl);
            //SSModWritable target = new SSModWritable();
            //target.ModUrl = SSUrl + new SSLinkUrl("mods\\lepg");
            //test.ReadMods("lepg");
            //test.PopulateMergedCollections();

            //FactionEditor factionEditor = new FactionEditor(test);
            //List<SSFactionGroup> factions = factionEditor.GetFaction();
            //
        }
Example #6
0
 public ShipHull(SSShipHullGroup groupSource, SSDirectory directory)
 {
     GroupSource = groupSource;
     Directory   = directory;
 }
Example #7
0
 public FactionEditorFactory(SSDirectory directory)
 {
     Directory = directory;
 }
 public BPPackage(Dictionary <string, string> line, SSDirectory directory)
 {
     SpecialItemLine = line;
     Directory       = directory;
 }
 public BPPackageRessources(SSDirectory directory, ShipHullRessources shipHullRessources)
 {
     Directory          = directory;
     ShipHullRessources = shipHullRessources;
     RefreshRessource();
 }