Ejemplo n.º 1
0
        internal Instance(Context context, string gameFolder, InstanceDescription description)
        {
            Context = context;
            GameFolder = gameFolder;
            AssetsFolder = context.AssetsFolder;
            VersionsFolder = context.VersionsFolder;
            LibraryFolder = context.LibraryFolder;
            Description = description;
            MinecraftVersion = description.Version;
            ModsStoreFolder = context.ModsStoreFolder;

            string descriptionFile = Path.Combine (gameFolder, "craftalyst-instance.json");
            if (File.Exists (descriptionFile)) {
                using (var sr = new StreamReader(descriptionFile))
                    Description = InstanceDescription.Parse (sr.ReadToEnd ());
            } else {
                Description = new InstanceDescription() {
                    Name = "Minecraft",
                    Description = "A game about blocks",
                    SyncUrl = "",
                    Version = MinecraftVersion,
                    Mods = new List<ModDescription>()
                };
            }
        }
Ejemplo n.º 2
0
        public DedicatedLauncher(string instanceName, InstanceDescription defaultInstanceDescription)
            : this()
        {
            var instance = Craft.GetInstance (instanceName);

            if (instance == null)
                instance = Craft.CreateInstance(instanceName, defaultInstanceDescription);
        }
Ejemplo n.º 3
0
        public Instance GetOrCreateInstance(string name, InstanceDescription description)
        {
            var instance = GetInstance(name);

            if (instance == null)
                instance = CreateInstance(name, description);
            else
                instance.Sync();

            return instance;
        }
Ejemplo n.º 4
0
        public Instance CreateInstance(string name, InstanceDescription description)
        {
            var instance = new Instance(this, Path.Combine (InstancesFolder, name), description);
            instance.Description = description;
            instance.IsNewInstance = true;

            return instance;
        }