Example #1
0
        public new void Load(Data.Server _serverData, Tabs tabs)
        {
            this.serverData = _serverData;
            foreach (Tab t in tabs.tabs)
            {
                if (t.control is Console)
                {
                    Console c = (Console) t.control;
                    if (c.serverData == serverData)
                    {
                        tabs.SelectTab(t);
                        return;
                    }
                }
            }
            startButton_MouseLeave(null, null);
            stopButton_MouseLeave(null, null);
            restartButton_MouseLeave(null, null);
            killButton_MouseLeave(null, null);

            tabs.AddTab(serverData.ToString(), this);

            this.text.Clear();
            this.text.TextChanged += new EventHandler<TextChangedEventArgs>(FileEditor.Log.Parse);
        }
Example #2
0
        public new void Load(Data.Server _serverData, Tabs tabs)
        {
            this.serverData = _serverData;
            foreach (Tab t in tabs.tabs)
            {
                if (t.control is Console)
                {
                    Console c = (Console)t.control;
                    if (c.serverData == serverData)
                    {
                        tabs.SelectTab(t);
                        return;
                    }
                }
            }
            startButton_MouseLeave(null, null);
            stopButton_MouseLeave(null, null);
            restartButton_MouseLeave(null, null);
            killButton_MouseLeave(null, null);

            tabs.AddTab(serverData.ToString(), this);

            this.text.Clear();
            this.text.TextChanged += new EventHandler <TextChangedEventArgs>(Parsers.Log.Parse);
        }
Example #3
0
        public async Task Should_return_server_info_when_server_exists()
        {
            var server =
                new Data.Server
            {
                Endpoint  = "localhost",
                Name      = string.Empty,
                GameModes = new List <GameMode> {
                    new GameMode {
                        Name = "DM"
                    }, new GameMode {
                        Name = "TDM"
                    }
                }
            };

            _context.Servers.Add(server);
            _context.SaveChanges();

            var result = await _handler.Handle(new GetServerInfoQuery("LOCALhost"));

            Assert.NotNull(result);
            Assert.AreEqual(string.Empty, result.Name);
            Assert.AreEqual(2, result.GameModes.Count);
        }
 public ServerNode(ServersTreeView treeView, DirectoryInfo directoryInfo, Data.Server _serverData)
     : base(treeView, directoryInfo, _serverData.ToString())
 {
     this.serverData         = _serverData;
     this.directory          = directoryInfo;
     this.ImageIndex         = ServersTreeView.LocalServerIcon;
     this.SelectedImageIndex = this.ImageIndex;
 }
 public ServerNode(ServersTreeView treeView, DirectoryInfo directoryInfo, Data.Server _serverData)
     : base(treeView, directoryInfo, _serverData.ToString())
 {
     this.serverData = _serverData;
     this.directory = directoryInfo;
     this.ImageIndex = ServersTreeView.LocalServerIcon;
     this.SelectedImageIndex = this.ImageIndex;
 }
Example #6
0
        private void readyButton_Click(object sender, EventArgs e)
        {
            if (engineSelect.SelectedItem == null)
            {
                Error.Show("ErrorNoEngine");
                return;
            }
            if (this.versionSelect.SelectedItem == null)
            {
                Error.Show("ErrorNoVersion");
                return;
            }
            if (!eulaCheckBox.Checked)
            {
                Error.Show("ErrorNoEula");
                return;
            }
            if (serverName.Text == "")
            {
                Error.Show("ErrorNoServerName");
                return;
            }
            string engine = engineSelect.SelectedItem.ToString(), version = this.versionSelect.SelectedItem.ToString();

            ServerData         = new Data.Server();
            ServerData.name    = serverName.Text;
            ServerData.version = version;
            ServerData.engine  = engine;
            ServerDirectory    = ServerData.GetDirectory();
            if (Directory.Exists(ServerDirectory))
            {
                Error.Show("ErrorServerExists");
                return;
            }
            Directory.CreateDirectory(ServerDirectory);
            string engineDirectory = Main.EnginesDirectory + engine + Path.DirectorySeparatorChar;

            Directory.CreateDirectory(engineDirectory);
            EngineFile = engineDirectory + version + ".jar";
            if (File.Exists(EngineFile))
            {
                DownloadProgressCompleted(null, new AsyncCompletedEventArgs(null, false, null));
            }
            else
            {
                string url = "http://mcservermanager.tk/info/servers/" + engine.ToLower() + "-" + version + ".jar";
                if (engine == "Vanilla")
                {
                    url = "https://s3.amazonaws.com/Minecraft.Download/versions/" + version + "/minecraft_server." + version + ".jar";
                }
                Client = new WebClient();
                Client.DownloadProgressChanged += new DownloadProgressChangedEventHandler(DownloadProgressChanged);
                Client.DownloadFileCompleted   += new AsyncCompletedEventHandler(DownloadProgressCompleted);
                Client.DownloadFileAsync(new Uri(url), EngineFile);
            }

            this.Enabled = false;
        }
Example #7
0
        public BodyStatus(AccountModel account, Boolean typeStation)
        {
            #region controls Declaration

            #endregion
            //Adding something to the collection otherwise the listview doesn't like to display
            var b = new BodyStatusModel();
            b.Name = "loading bodies";
            bodyList.Add(b);

            bodies.ItemsSource     = bodyList;
            bodies.ItemTemplate    = new DataTemplate(typeof(ViewCells.PlanetStatusViewCell));
            bodies.BackgroundColor = Color.FromRgb(0, 0, 128);


            var mainLayout = new StackLayout
            {
                BackgroundColor = Color.FromRgb(0, 0, 128),
                Children        =
                {
                    bodies,
                    notifyAllianceOfStations
                }
            };

            Content = mainLayout;
            if (Device.OS == TargetPlatform.iOS)
            {
                mainLayout.Padding = new Thickness(0, 20, 0, 0);
            }

            this.Appearing += async(sender, e) =>
            {
                await LoadPage(typeStation);
            };

            notifyAllianceOfStations.IsVisible = false;
            notifyAllianceOfStations.Clicked  += async(sender, e) => {
                var bodyString = "The following stations have warning indicators: ";
                foreach (var station in warningStations)
                {
                    bodyString += station + ", \n";
                }
                var json     = Inbox.SendMessage(1, account.SessionID, "@ally", "Stations in trouble", bodyString);
                var server   = new Data.Server();
                var response = await server.GetHttpResultStringAsyncAsString(account.Server, Inbox.url, json);

                var s = response;
            };
            bodies.ItemTapped += async(sender, e) =>
            {
                await Navigation.PushModalAsync(new BodyStatusDetail((bodies.SelectedItem as BodyStatusModel).response,
                                                                     (bodies.SelectedItem as BodyStatusModel).Name));

                bodies.SelectedItem = null;
            };
        }
 public static Server Deserialize(string filename)
 {
     Data.Server serverData = new Data.Server();
     XmlSerializer serializer = new XmlSerializer(typeof(Data.Server));
     StreamReader reader = new StreamReader(filename);
     serverData = (Data.Server)serializer.Deserialize(reader);
     reader.Close();
     return serverData;
 }
 public ServerNode(ServersTreeView treeView, DirectoryInfo directoryInfo, Data.Server _serverData)
     : base(treeView, directoryInfo, _serverData.ToString())
 {
     IgnoredFiles.Add("ServerManagerData.xml");
     IgnoredFiles.Add("eula.txt");
     IgnoredFiles.Add("server.jar");
     serverData = _serverData;
     directory = directoryInfo;
     ImageIndex = ServersTreeView.LocalServerIcon;
     SelectedImageIndex = ImageIndex;
 }
		public BodyStatus(AccountModel account, Boolean typeStation)
		{
            #region controls Declaration

            #endregion
            //Adding something to the collection otherwise the listview doesn't like to display
            var b = new BodyStatusModel();
			b.Name = "loading bodies";
			bodyList.Add(b);

			bodies.ItemsSource = bodyList;
			bodies.ItemTemplate = new DataTemplate(typeof(ViewCells.PlanetStatusViewCell));
			bodies.BackgroundColor = Color.FromRgb (0, 0, 128);


			var mainLayout = new StackLayout
            {
				BackgroundColor = Color.FromRgb (0, 0, 128),
				Children = {
					bodies, 
                    notifyAllianceOfStations
				}
			};

			Content = mainLayout;
			if (Device.OS == TargetPlatform.iOS)
			{
				mainLayout.Padding = new Thickness (0, 20, 0, 0);
			}

			this.Appearing += async (sender, e) =>
			{
				await LoadPage(typeStation);
				
			};

            notifyAllianceOfStations.IsVisible = false;
            notifyAllianceOfStations.Clicked += async (sender, e) =>{
                var bodyString = "The following stations have warning indicators: ";
                foreach (var station in warningStations)
                    bodyString += station + ", \n";
                var json = Inbox.SendMessage(1, account.SessionID, "@ally", "Stations in trouble", bodyString);
                var server = new Data.Server();
                var response = await server.GetHttpResultStringAsyncAsString(account.Server, Inbox.url, json);
                var s = response;
            };
			bodies.ItemTapped += async (sender, e) =>
			{
				await Navigation.PushModalAsync(new BodyStatusDetail((bodies.SelectedItem as BodyStatusModel).response,
					(bodies.SelectedItem as BodyStatusModel).Name));
				bodies.SelectedItem = null;
			};
		}
        public void FullRefresh()
        {
            _systemIcons.Clear();
            _imageList.Images.Clear();
            Nodes.Clear();

            _imageList.Images.Add(Properties.Resources.FolderOpenIcon);
            _systemIcons.Add(FolderOpenIcon, 0);
            _imageList.Images.Add(Properties.Resources.FolderCloseIcon);
            _systemIcons.Add(FolderCloseIcon, 0);
            _imageList.Images.Add(Properties.Resources.LocalIcon);
            _systemIcons.Add(LocalServerIcon, 0);
            _imageList.Images.Add(Properties.Resources.RemoteIcon);
            _systemIcons.Add(RemoteServerIcon, 0);
            _imageList.Images.Add(Properties.Resources.ConsoleIcon);
            _systemIcons.Add(ConsoleIcon, 0);
            _imageList.Images.Add(Properties.Resources.MenuSettings);

            foreach (string server in Directory.GetDirectories(Utils.Main.ServersDirectory))
            {
                if (File.Exists(server + Path.DirectorySeparatorChar + "ServerCreatorData.xml")) //old file name
                {
                    File.Move(server + Path.DirectorySeparatorChar + "ServerCreatorData.xml", server + Path.DirectorySeparatorChar + "ServerManagerData.xml");
                }
                if (File.Exists(server + Path.DirectorySeparatorChar + "ServerManagerData.xml"))
                {
                    Data.Server serverData = Data.Server.Deserialize(server + Path.DirectorySeparatorChar + "ServerManagerData.xml");

                    ServerNode node = new ServerNode(this, new DirectoryInfo(server), serverData);

                    node.Expand();
                }
            }
            foreach (string importedServer in Directory.GetFiles(Utils.Main.ImportDirectory))
            {
                Data.Server serverData = Data.Server.Deserialize(importedServer);

                ServerNode node = new ServerNode(this, new DirectoryInfo(serverData.path), serverData);
                node.Expand();
            }

            foreach (string remoteServer in Directory.GetDirectories(Utils.Main.RemoteDirectory))
            {
                if (File.Exists(remoteServer + Path.DirectorySeparatorChar + "MainData.xml"))
                {
                    Data.RemoteServer serverData = Data.RemoteServer.Deserialize(remoteServer + Path.DirectorySeparatorChar + "MainData.xml");

                    RemoteServerNode node = new RemoteServerNode(this, serverData);
                }
            }
        }
Example #12
0
        private void next_Click(object sender, EventArgs e)
        {
            #region validation
            if (serverName.Text == "")
            {
                Dialogs.Error.Show("ErrorNoServerName");
                return;
            }
            if (engineSelect.SelectedItem == null)
            {
                Dialogs.Error.Show("ErrorNoEngine");
                return;
            }
            if (this.versionSelect.SelectedItem == null)
            {
                Dialogs.Error.Show("ErrorNoVersion");
                return;
            }
            if (selectDirectory.SelectedPath == "")
            {
                Dialogs.Error.Show("ErrorNoDirectory");
                return;
            }
            if (selectJar.FileName == "")
            {
                Dialogs.Error.Show("ErrorNoJar");
                return;
            }
            #endregion

            Data.Server data = new Data.Server();
            data.engine     = engineSelect.SelectedItem.ToString();
            data.name       = serverName.Text;
            data.version    = versionSelect.SelectedItem.ToString();
            data.path       = selectDirectory.SelectedPath;
            data.jarPath    = selectJar.FileName;
            data.isImported = true;

            if (File.Exists(data.GetFile()))
            {
                Dialogs.Error.Show("ErrorServerExists");
                return;
            }

            data.Save();

            this.Enabled = false;

            tabs.mainWindow.serversTree.FullRefresh();
        }
Example #13
0
 public bool Test()
 {
     try
     {
         var a = new Data.Server(this.Connection());
         a.Test();
     }
     catch (Exception Ex)
     {
         throw Ex;
     }
     finally {
     }
     return(true);
 }
        public async static Task <List <Prisoner> > GetPrisoners(AccountModel account, string SecurityMinstryID)
        {
            var server   = new Data.Server();
            var json     = Security.ViewPrisoners(account.SessionID, SecurityMinstryID, "");
            var response = await server.GetHttpResultAsync(account.Server, Security.URL, json);

            if (response != null)
            {
                return(response.result.prisoners);
            }
            else
            {
                return(new List <Prisoner>());
            }
        }
        public async static void ExecutePrisonersOnPlanet(AccountModel account, string SecurityMinstryID, List <Prisoner> prisonerList)
        {
            List <ThrottledServerRequest> requests = new List <ThrottledServerRequest>();

            foreach (var prisoner in prisonerList)
            {
                var json = Security.ExecutePrisoner(account.SessionID, SecurityMinstryID, prisoner.id);
                requests.Add(new ThrottledServerRequest(account.Server, Security.URL, json));
            }
            if (requests.Count > 0)
            {
                var server = new Data.Server();
                server.ThrottledServer(requests);
            }
        }
Example #16
0
        /// <summary>
        ///
        /// </summary>
        public void Load()
        {
            DataTable dt = new DataTable();

            dServer = new Data.Server();
            dt      = dServer.GetServer(this.ServerID);
            Server c = dt.toList <Server>(new DataFieldMappings()
                                          .Add(Tz.Global.TzAccount.Server.ServerID.Name, "ServerID", true)
                                          .Add(Tz.Global.TzAccount.Server.ServerName.Name, "ServerName")
                                          .Add(Tz.Global.TzAccount.Server.Host.Name, "Host")
                                          .Add(Tz.Global.TzAccount.Server.UserID.Name, "UserName")
                                          .Add(Tz.Global.TzAccount.Server.Password.Name, "Password")
                                          .Add(Tz.Global.TzAccount.Server.Port.Name, "Port")
                                          .Add(Tz.Global.TzAccount.Server.DB.Name, "DBName")
                                          , null, null).FirstOrDefault();

            this.Merge <Server>(c);
        }
Example #17
0
        public static List <Server> GetServer()
        {
            DataTable dt = new DataTable();

            Data.Server dServer = new Data.Server();
            dt = dServer.GetServer();
            if (dt.Rows.Count > 0)
            {
                return(dt.toList <Server>(new DataFieldMappings()
                                          .Add(Tz.Global.TzAccount.Server.ServerID.Name, "ServerID", true)
                                          .Add(Tz.Global.TzAccount.Server.ServerName.Name, "ServerName")
                                          .Add(Tz.Global.TzAccount.Server.Host.Name, "Host")
                                          .Add(Tz.Global.TzAccount.Server.UserID.Name, "UserName")
                                          .Add(Tz.Global.TzAccount.Server.Password.Name, "Password")
                                          .Add(Tz.Global.TzAccount.Server.Port.Name, "Port")
                                          .Add(Tz.Global.TzAccount.Server.DB.Name, "DBName")
                                          , null, null).ToList());
            }
            else
            {
                return(new List <Server>());
            }
        }
Example #18
0
 public bool Save()
 {
     dServer = new Data.Server();
     if (_serverID == "")
     {
         _serverID = dServer.Save(Host,
                                  DBName,
                                  UserName,
                                  Password,
                                  Port, ServerName);
         if (_serverID != "")
         {
             Tz.Deployment.Setup s = new Tz.Deployment.Setup();
             s.ExecuteClientSetup(Connection());
             return(true);
         }
         else
         {
             return(false);
         }
     }
     else
     {
         if (dServer.Update(ServerID, Host,
                            DBName,
                            UserName,
                            Password,
                            Port, ServerName))
         {
             return(true);
         }
         else
         {
             return(false);
         }
     }
 }
Example #19
0
        public void Listen()
        {
            Console.WriteLine("Starting...");
            socket = new TcpListener(ServerAddress, ServerPort);
            socket.Start();

            var server = new Data.Server
            {
                IP           = ServerAddress.ToString(),
                CurrentUsers = 0,
                MaxUsers     = MaxConnections,
                Enabled      = true,
            };

            UnitOfWork.Servers.Add(server);
            UnitOfWork.SaveChanges();

            Console.WriteLine("Server is listening for new connections");

            while (!cancelTokenSource.IsCancellationRequested)
            {
                Thread.Sleep(200);
                if (socket.Pending())
                {
                    var tcpClient = socket.AcceptTcpClient();
                    Task.Factory.StartNew(AcceptClient, tcpClient, TaskCreationOptions.LongRunning);
                }
            }

            server = UnitOfWork.Servers.Find(ServerAddress.ToString());
            UnitOfWork.Servers.Remove(server);
            UnitOfWork.SaveChanges();

            Console.WriteLine("Server has received a request to shut down");
            socket.Stop();
            Clients.ForEach(c => Network.Disconnect(c.Client));
        }
Example #20
0
        public async Task Should_return_list_of_servers_when_any_server_exists()
        {
            var server =
                new Data.Server
            {
                Endpoint  = string.Empty,
                Name      = string.Empty,
                GameModes = new List <GameMode> {
                    new GameMode {
                        Name = "DM"
                    }, new GameMode {
                        Name = "TDM"
                    }
                }
            };

            _context.Servers.Add(server);
            _context.SaveChanges();

            var result = await _handler.Handle(new GetAllServersQuery());

            Assert.NotNull(result);
            Assert.AreEqual(1, result.Count);
        }
Example #21
0
        public async Task Should_update_existing_server()
        {
            var server =
                new Data.Server
            {
                Endpoint  = "localhost",
                Name      = string.Empty,
                GameModes = new List <GameMode>()
            };

            _context.Servers.Add(server);
            _context.SaveChanges();
            var serverInfo = new ServerInfoDto {
                Name = "new name", GameModes = new List <string> {
                    "DM"
                }
            };

            await _handler.Handle(new PutServerInfoCommand("LOCALhost", serverInfo));

            Assert.AreEqual(1, _context.Servers.Count());
            Assert.AreEqual("new name", _context.Servers.First().Name);
            Assert.AreEqual(1, _context.Servers.First().GameModes.Count);
        }
Example #22
0
        public SpiesMain(AccountModel account, string selectedPlanet)
        {
            buttonScroll.Content = buttonHolder;
            buttonHolder.Children.Add(trainSpiesBtn);
            buttonHolder.Children.Add(runSweepsBtn);
            buttonHolder.Children.Add(viewSpiesBtn);
            buttonHolder.Children.Add(executePrisonersBtn);
            buttonHolder.Children.Add(removeSpiesFromPolicalPropaganda);
            buttonHolder.Children.Add(sendSpies);
            this.account = account;
            var mainLayout = new StackLayout
            {
                //BackgroundColor = Color.FromRgb (0, 0, 128),
                Style    = (Style)Styles.Styles.StyleDictionary[Styles.Styles.StyleName.MainLayout.ToString()],
                Children =
                {
                    planetNameLabel,
                    totalSpies,
                    spiesOnCounter,
                    spiesOnIntelTraining,
                    spiesOnPoliticsTraining,
                    spiesOnMayhemTraining,
                    spiesOnTheftTraining,
                    spiesOnPropaganda,
                    spiesIdle,
                    foreignSpies,
                    prisoners,
                    buttonScroll
                }
            };

            Content = mainLayout;
            if (Device.OS == TargetPlatform.iOS)
            {
                mainLayout.Padding = new Thickness(0, 20, 0, 0);
            }

            this.Appearing += async(sender, e) =>
            {
                if (!AccountManager.CaptchaStillValid(account))
                {
                    await Navigation.PushModalAsync(new CaptchaPage.CaptchaPage(account));
                }
                planetName = selectedPlanet;
                planetID   = (from b in account.Colonies
                              where b.Value.Equals(selectedPlanet)
                              select b.Key).First();
                planetNameLabel.Text      = selectedPlanet + " " + planetID;
                planetNameLabel.TextColor = Color.White;
                LoadSpyInfo(planetID);
            };
            sendSpies.Clicked += async(sender, e) =>
            {
                await Navigation.PushAsync(new SendSpies(account, intelMinID, planetID));
            };
            removeSpiesFromPolicalPropaganda.Clicked += async(sender, e) =>
            {
                List <LacunaExpanseAPIWrapper.ResponseModels.Spies> spiesOnPoliticalProp = await SpyScripts.FilterSpiesByAssignment(planetSpies, "Political Propaganda");

                SpyScripts.BatchAssignSpies(account, spiesOnPoliticalProp, "Idle", intelMinID);
                if (spiesOnPoliticalProp.Count > 30)
                {
                    await DisplayAlert("Notice", "This may take a couple of minutes to complete", "OK");
                }
            };
            executePrisonersBtn.Clicked += async(sender, e) =>
            {
                var prisoners = await SpyScripts.GetPrisoners(account, secMinID);

                SpyScripts.ExecutePrisonersOnPlanet(account, secMinID, prisoners);
            };
            trainSpiesBtn.Clicked += (sender, e) =>
            {
                if (intelMinID != null)
                {
                    SpyScripts.TrainSpies(planetSpies, account, intelMinID, intelMinistry, intelTrain, mayhemTrain, theftTrain, politicalTrain, selectedPlanet, 6);
                }
            };
            runSweepsBtn.Clicked += async(sender, e) =>
            {
                await DisplayAlert("Performance", "This script will run a series of up to 6 sweeps using idle spies", "Ok");

                if (intelMinID != null)
                {
                    var idleSpies        = SpyScripts.GetIdleSpiesFromList(planetSpies);
                    var orderedIdleSpies = idleSpies.OrderByDescending(x => x.level);
                    var spiesToUse       = new List <LacunaExpanseAPIWrapper.ResponseModels.Spies>();
                    int i = 0;
                    foreach (var spy in orderedIdleSpies)
                    {
                        spiesToUse.Add(spy);
                        i++;
                        if (i == 6)
                        {
                            break;
                        }
                    }
                    foreach (var spy in spiesToUse)
                    {
                        var server   = new Data.Server();
                        var json     = Intelligence.AssignSpy(account.SessionID, intelMinID, spy.id, "Security Sweep");
                        var response = await server.GetHttpResultStringAsyncAsString(account.Server, Intelligence.URL, json);

                        if (response != null)
                        {
                        }
                    }
                }
            };
        }
        private void readyButton_Click(object sender, EventArgs e)
        {
            if (engineSelect.SelectedItem == null)
            {
                MessageBox.Show("Wybierz silnik!", "BÅ‚Ä…d", MessageBoxButtons.OK, MessageBoxIcon.Error);
                return;
            }
            if (this.versionSelect.SelectedItem == null)
            {
                MessageBox.Show("Wybierz wersjÄ™!", "BÅ‚Ä…d", MessageBoxButtons.OK, MessageBoxIcon.Error);
                return;
            }
            if (!eulaCheckBox.Checked)
            {
                MessageBox.Show("Musisz zaakceptować postanowienia Mojang EULA!", "Błąd", MessageBoxButtons.OK, MessageBoxIcon.Error);
                return;
            }
            if (serverName.Text == "")
            {
                MessageBox.Show("Podaj nazwÄ™ serwera!", "BÅ‚Ä…d", MessageBoxButtons.OK, MessageBoxIcon.Error);
                return;
            }
            string engine = engineSelect.SelectedItem.ToString(), version = this.versionSelect.SelectedItem.ToString();
            ServerData = new Data.Server();
            ServerData.name = serverName.Text;
            ServerData.version = version;
            ServerData.engine = engine;
            ServerDirectory = ServerData.GetDirectory();
            if (Directory.Exists(ServerDirectory))
            {
                MessageBox.Show("Serwer o takiej nazwie już istnieje!", "Błąd", MessageBoxButtons.OK, MessageBoxIcon.Error);
                return;
            }
            Directory.CreateDirectory(ServerDirectory);
            string engineDirectory = Utils.Main.EnginesDirectory + engine + Path.DirectorySeparatorChar;
            Directory.CreateDirectory(engineDirectory);
            EngineFile = engineDirectory + version + ".jar";
            if (File.Exists(EngineFile))
            {
                DownloadProgressCompleted(null, new AsyncCompletedEventArgs(null, false, null));
            }
            else
            {
                string url = "http://mcservermanager.tk/info/servers/" + engine.ToLower() + "-" + Utils.Main.EngineVersions + ".jar";
                if (engine == "Vanilla")
                    url = "https://s3.amazonaws.com/Minecraft.Download/versions/" + version + "/minecraft_server." + version + ".jar";
                Client = new WebClient();
                Client.DownloadProgressChanged += new DownloadProgressChangedEventHandler(DownloadProgressChanged);
                Client.DownloadFileCompleted += new AsyncCompletedEventHandler(DownloadProgressCompleted);
                Client.DownloadFileAsync(new Uri(url), EngineFile);
            }

            this.Enabled = false;
        }
        public SendSpies(AccountModel account, string intelMinID, string bodyID)
        {
            spies.ItemsSource  = SpyList;
            spies.ItemTemplate = new DataTemplate(typeof(SpySelectionViewCell));

            shipSelector.ItemsSource  = ShipSelectionList;
            shipSelector.ItemTemplate = new DataTemplate(typeof(ShipsForSpiesViewCell));

            Content = new StackLayout
            {
                Children =
                {
                    toBodyID, getShips, sendSpies, spies
                }
            };

            this.Appearing += async(sender, e) =>
            {
                var json     = LacunaExpanseAPIWrapper.Body.GetBuildings(1, account.SessionID, bodyID);
                var server   = new LacunaExpress.Data.Server();
                var response = await server.GetHttpResultAsync(account.Server, LacunaExpanseAPIWrapper.Body.url, json);

                if (response.result != null)
                {
                    spaceportID = (from s in response.result.buildings
                                   where s.Value.url.Contains("paceport") && Convert.ToInt64(s.Value.efficiency) == 100
                                   select s.Key).First();
                }
                ;
                json     = LacunaExpanseAPIWrapper.Intelligence.ViewAllSpies(account.SessionID, intelMinID);
                response = await server.GetHttpResultAsync(account.Server, LacunaExpanseAPIWrapper.Intelligence.URL, json);

                if (response.result != null)
                {
                    foreach (var s in response.result.spies)
                    {
                        var spy = new SpyViewCellModel
                        {
                            SpyName   = s.name,
                            SpyLevel  = s.level,
                            SpyID     = s.id,
                            Intel     = s.intel,
                            Mayhem    = s.mayhem,
                            Political = s.politics,
                            Theft     = s.theft,
                        };
                        SpyList.Add(spy);
                    }
                }
            };
            getShips.Clicked += async(sender, e) =>
            {
                var json     = LacunaExpanseAPIWrapper.Spaceport.PrepareSendSpies(account.SessionID, bodyID, toBodyID.Text);
                var server   = new Data.Server();
                var response = await server.GetHttpResultAsync(account.Server, LacunaExpanseAPIWrapper.Spaceport.URL, json);

                if (response.result != null)
                {
                    foreach (var s in response.result.spies)
                    {
                        var spy = new SpyViewCellModel
                        {
                            SpyName   = s.name,
                            SpyLevel  = s.level,
                            SpyID     = s.id,
                            Intel     = s.intel,
                            Mayhem    = s.mayhem,
                            Political = s.politics,
                            Theft     = s.theft,
                        };
                        SpyList.Add(spy);
                    }
                    //var ships = from s in response.result.ships
                    //			select s.type.
                }
            };
            sendSpies.Clicked += async(sender, e) =>
            {
                //var json = LacunaExpanseAPIWrapper.Spaceport.SendSpies(account.SessionID, bodyID, toBodyID.Text, shipID, spyIDs);
            };
        }
Example #25
0
        protected override void Seed(ApplicationDbContext context)
        {
            base.Seed(context);
            context.Database.Log = null;
            var gameModes = new List <GameMode>
            {
                new GameMode {
                    Name = "DM"
                },
                new GameMode {
                    Name = "TDM"
                }
            };
            var maps = new List <Map>
            {
                new Map {
                    Name = "Map 1"
                },
                new Map {
                    Name = "Map 2"
                }
            };
            var players = new List <Player>
            {
                new Player {
                    Name = "Player 1"
                },
                new Player {
                    Name = "Player 2"
                },
                new Player {
                    Name = "Player 3"
                },
                new Player {
                    Name = "Player 4"
                },
                new Player {
                    Name = "Player 5"
                },
                new Player {
                    Name = "Player 6"
                },
                new Player {
                    Name = "Player 7"
                }
            };
            var server1 = new Data.Server {
                Endpoint = "localhost-1337"
            };
            var server2 = new Data.Server {
                Endpoint = "localhost-1448"
            };
            var server3 = new Data.Server {
                Endpoint = "localhost-2017"
            };
            var match1 = new Match
            {
                Timestamp  = DateTime.Parse("2017-03-17T15:00:00Z").ToUniversalTime(),
                Map        = maps[1],
                GameMode   = gameModes[0],
                ScoreBoard =
                    new HashSet <Score>
                {
                    new Score {
                        Frags = 20, Kills = 20, Deaths = 2, ScoreboardPercent = 100, Player = players[0]
                    },
                    new Score {
                        Frags = 2, Kills = 2, Deaths = 20, ScoreboardPercent = 0, Player = players[1]
                    }
                }
            };
            var match2 = new Match
            {
                Timestamp  = DateTime.Parse("2017-03-17T16:25:00Z").ToUniversalTime(),
                Map        = maps[1],
                GameMode   = gameModes[0],
                ScoreBoard =
                    new HashSet <Score>
                {
                    new Score {
                        Frags = 20, Kills = 20, Deaths = 0, ScoreboardPercent = 100, Player = players[3]
                    },
                    new Score {
                        Frags = 15, Kills = 15, Deaths = 5, ScoreboardPercent = 50, Player = players[0]
                    },
                    new Score {
                        Frags = 0, Kills = 0, Deaths = 30, ScoreboardPercent = 0, Player = players[2]
                    }
                }
            };
            var match3 = new Match
            {
                Timestamp  = DateTime.Parse("2017-03-16T00:25:00Z").ToUniversalTime(),
                Map        = maps[0],
                GameMode   = gameModes[1],
                ScoreBoard =
                    new HashSet <Score>
                {
                    new Score {
                        Frags = 20, Kills = 20, Deaths = 5, ScoreboardPercent = 100, Player = players[1]
                    },
                    new Score {
                        Frags = 15, Kills = 15, Deaths = 12, ScoreboardPercent = 50, Player = players[0]
                    },
                    new Score {
                        Frags = 5, Kills = 5, Deaths = 23, ScoreboardPercent = 0, Player = players[2]
                    }
                }
            };
            var match4 = new Match
            {
                Timestamp  = DateTime.Parse("2017-03-15T15:00:00Z").ToUniversalTime(),
                Map        = maps[1],
                GameMode   = gameModes[0],
                ScoreBoard =
                    new HashSet <Score>
                {
                    new Score {
                        Frags = 20, Kills = 21, Deaths = 3, ScoreboardPercent = 100, Player = players[0]
                    },
                    new Score {
                        Frags = 2, Kills = 2, Deaths = 21, ScoreboardPercent = 0, Player = players[1]
                    }
                }
            };
            var match5 = new Match
            {
                Timestamp  = DateTime.Parse("2017-03-18T16:25:00Z").ToUniversalTime(),
                Map        = maps[1],
                GameMode   = gameModes[0],
                ScoreBoard =
                    new HashSet <Score>
                {
                    new Score {
                        Frags = 20, Kills = 20, Deaths = 0, ScoreboardPercent = 100, Player = players[3]
                    },
                    new Score {
                        Frags = 15, Kills = 15, Deaths = 5, ScoreboardPercent = 50, Player = players[0]
                    },
                    new Score {
                        Frags = 0, Kills = 0, Deaths = 30, ScoreboardPercent = 0, Player = players[2]
                    }
                }
            };

            for (int i = 0; i < 12; i++)
            {
                server3.Matches.Add(new Match
                {
                    Timestamp  = DateTime.Parse($"2017-03-18T{i:D2}:25:00Z").ToUniversalTime(),
                    Map        = maps[1],
                    GameMode   = gameModes[0],
                    ScoreBoard =
                        new HashSet <Score>
                    {
                        new Score {
                            Frags = 20, Kills = 20, Deaths = 0, ScoreboardPercent = 100, Player = players[4]
                        },
                        new Score {
                            Frags = 15, Kills = 15, Deaths = 5, ScoreboardPercent = 50, Player = players[5]
                        },
                        new Score {
                            Frags = 0, Kills = 0, Deaths = 30, ScoreboardPercent = 0, Player = players[6]
                        }
                    }
                });
            }
            server1.Matches.Add(match1);
            server1.Matches.Add(match2);
            server1.Matches.Add(match3);
            server2.Matches.Add(match4);
            server2.Matches.Add(match5);
            context.Servers.Add(server1);
            context.Servers.Add(server2);
            context.Servers.Add(server3);
            context.SaveChanges();
        }
		public async static void ExecutePrisonersOnPlanet(AccountModel account, string SecurityMinstryID, List<Prisoner> prisonerList)
		{
			List<ThrottledServerRequest> requests = new List<ThrottledServerRequest>();
			foreach (var prisoner in prisonerList)
			{
				var json = Security.ExecutePrisoner(account.SessionID, SecurityMinstryID, prisoner.id);
				requests.Add(new ThrottledServerRequest(account.Server, Security.URL, json));
			}
			if (requests.Count > 0)
			{
				var server = new Data.Server();
				server.ThrottledServer(requests);
			}
		}
		public async static  Task<List<Prisoner>> GetPrisoners(AccountModel account, string SecurityMinstryID)
		{
			var server = new Data.Server();
			var json = Security.ViewPrisoners(account.SessionID, SecurityMinstryID, "");
			var response = await server.GetHttpResultAsync(account.Server, Security.URL, json);
			if (response != null)
			{
				return response.result.prisoners;
			}
			else
				return new List<Prisoner>();
		}
Example #28
0
        public PlanetMap(AccountModel account, string planetName)
        {
            OuterBuilding.Children.Add(tempBuildingImage);
            OuterBuilding.Children.Add(InnerBuilding);
            InnerBuilding.Children.Add(tempPlanetBuildingName);
            InnerBuilding.Children.Add(tempPlanetBuildingLevel);
            OuterBuilding.Children.Add(submitArrangement);

            planetlbl.Text = planetName;
            ScrollView scrollMap = new ScrollView
            {
                HorizontalOptions = LayoutOptions.Fill,
                Orientation       = ScrollOrientation.Horizontal,

                Content = new StackLayout
                {
                    Orientation = StackOrientation.Horizontal,
                    Children    =
                    {
                        grid
                    },
                }
            };
            int left     = 0;
            int top      = 1;
            int xcounter = -5;
            int ycounter = 5;

            for (int i = 0; i <= 120; i++)
            {
                var b = new BuildingImage {
                    PLOTNUMBER = i, x = Convert.ToString(xcounter), y = Convert.ToString(ycounter), Source = ImageSource.FromResource("LacunaExpress.Images.Demolish.png")
                };
                xcounter++;
                if (xcounter > 5)
                {
                    xcounter = -5;
                    ycounter--;
                }
                //b.buildingImage.Source = ImageSource.FromResource("LacunaExpress.Images.Demolish.png");
                b.GestureRecognizers.Add((new TapGestureRecognizer
                {
                    Command = new Command(o =>
                    {
                        var index = b.PLOTNUMBER;
                        if (index != 60) //that's the center building of the map and it's not allowed to move
                        {
                            if (selectedBuilding.name.Length > 0)
                            {
                                tempHolding.id = selectedBuilding.id;
                                tempHolding.imageString = selectedBuilding.imageString;
                                tempHolding.level = selectedBuilding.level;
                                tempHolding.name = selectedBuilding.name;

                                selectedBuilding.id = "";
                                selectedBuilding.imageString = "";
                                selectedBuilding.level = "";
                                selectedBuilding.name = "";

                                tempPlanetBuildingName.Text = "No Building Selected";
                                tempPlanetBuildingLevel.Text = "0";
                                tempBuildingImage.Source = null;
                                tempBuildingImage.Source = ImageSource.FromResource("LacunaExpress.Images.Demolish.png");
                            }
                            if (buildingImages[index].name.Length > 0)
                            {
                                selectedBuilding.id = buildingImages[index].id;
                                selectedBuilding.imageString = buildingImages[index].imageString;
                                selectedBuilding.level = buildingImages[index].level;
                                selectedBuilding.name = buildingImages[index].name;

                                buildingImages[index].Source = null;
                                buildingImages[index].Source = ImageSource.FromResource("LacunaExpress.Images.Demolish.png");
                                buildingImages[index].name = "";
                                buildingImages[index].level = "";
                                buildingImages[index].imageString = "";
                                buildingImages[index].id = "";

                                tempPlanetBuildingName.Text = selectedBuilding.name;
                                tempPlanetBuildingLevel.Text = selectedBuilding.level;
                                tempBuildingImage.Source = ImageSource.FromResource(selectedBuilding.imageString);
                            }

                            if (tempHolding.name.Length > 0)
                            {
                                buildingImages[index].level = tempHolding.level;
                                buildingImages[index].name = tempHolding.name;
                                buildingImages[index].id = tempHolding.id;
                                buildingImages[index].imageString = tempHolding.imageString;
                                buildingImages[index].Source = ImageSource.FromResource(tempHolding.imageString);

                                tempHolding.id = "";
                                tempHolding.imageString = "";
                                tempHolding.level = "";
                                tempHolding.x = "";
                                tempHolding.y = "";
                                tempHolding.name = "";
                            }
                        }
                        //SwapBuildings(b.PLOTNUMBER);
                    })
                }));
                buildingImages.Add(b);
                grid.Children.Add(b, left, top);
                left++;

                if (left == 11)
                {
                    left = 0;
                    top++;
                }
            }

            var mainLayout = new StackLayout
            {
                Children =
                {
                    planetlbl,
                    scrollMap,
                    OuterBuilding
                }
            };

            Content = mainLayout;
            if (Device.OS == TargetPlatform.iOS)
            {
                mainLayout.Padding = new Thickness(0, 20, 0, 0);
            }

            this.Appearing += (sender, e) =>
            {
                planetID = (from b in account.Colonies
                            where b.Value.Equals(planetName)
                            select b.Key).First();
                LoadBuildingsAsync(account, planetID);
            };
            submitArrangement.Clicked += async(sender, e) =>
            {
                List <BuildingArrangement> movedBuildings = new List <BuildingArrangement>();
                foreach (var b in buildingImages)
                {
                    if (b.name.Length > 0)
                    {
                        movedBuildings.Add(new BuildingArrangement(b.x, b.y, b.id));
                    }
                }
                string json     = Body.RearrangeBuildings(1, account.SessionID, planetID, movedBuildings);
                var    server   = new Data.Server();
                string response = await server.GetHttpResultStringAsyncAsString(account.Server, Body.url, json);

                string s = response;
            };
        }
		public SpiesMain(AccountModel account, string selectedPlanet)
		{
            buttonScroll.Content = buttonHolder;
            buttonHolder.Children.Add(trainSpiesBtn);
            buttonHolder.Children.Add(runSweepsBtn);
            buttonHolder.Children.Add(viewSpiesBtn);
            buttonHolder.Children.Add(executePrisonersBtn);
            buttonHolder.Children.Add(removeSpiesFromPolicalPropaganda);
            buttonHolder.Children.Add(sendSpies);
            this.account = account;
			var mainLayout = new StackLayout
			{
				//BackgroundColor = Color.FromRgb (0, 0, 128),
				Style = (Style)Styles.Styles.StyleDictionary[Styles.Styles.StyleName.MainLayout.ToString()],
                Children = {
					planetNameLabel,
					totalSpies,
					spiesOnCounter,
					spiesOnIntelTraining,
					spiesOnPoliticsTraining,
					spiesOnMayhemTraining,
					spiesOnTheftTraining,
					spiesOnPropaganda,
					spiesIdle,
					foreignSpies,
					prisoners,
                    buttonScroll

				}

			};

			Content = mainLayout;
			if (Device.OS == TargetPlatform.iOS)
			{
				mainLayout.Padding = new Thickness (0, 20, 0, 0);
			}

			this.Appearing += async (sender, e) =>
			{
                if (!AccountManager.CaptchaStillValid(account))
                {
                    await Navigation.PushModalAsync(new CaptchaPage.CaptchaPage(account));
                }
				planetName = selectedPlanet;			
				planetID = (from b in account.Colonies
								where b.Value.Equals(selectedPlanet)
								select b.Key).First();
				planetNameLabel.Text = selectedPlanet + " " + planetID;
				planetNameLabel.TextColor = Color.White;
				LoadSpyInfo(planetID);
			};
			sendSpies.Clicked += async (sender, e) =>
			{
				await Navigation.PushAsync(new SendSpies(account, intelMinID, planetID));
			};
            removeSpiesFromPolicalPropaganda.Clicked += async (sender, e) =>
            {
                List<LacunaExpanseAPIWrapper.ResponseModels.Spies> spiesOnPoliticalProp = await SpyScripts.FilterSpiesByAssignment(planetSpies, "Political Propaganda");
                SpyScripts.BatchAssignSpies(account, spiesOnPoliticalProp, "Idle", intelMinID);
                if (spiesOnPoliticalProp.Count > 30)
                    await DisplayAlert("Notice", "This may take a couple of minutes to complete", "OK");
            };
			executePrisonersBtn.Clicked += async (sender, e) =>
			{
				var prisoners = await SpyScripts.GetPrisoners(account, secMinID);
				SpyScripts.ExecutePrisonersOnPlanet(account, secMinID, prisoners);
			};
			trainSpiesBtn.Clicked += (sender, e) =>
			{
				if (intelMinID != null)
				{
					SpyScripts.TrainSpies(planetSpies, account, intelMinID, intelMinistry, intelTrain, mayhemTrain, theftTrain, politicalTrain, selectedPlanet, 6);
				}
			};
			runSweepsBtn.Clicked += async (sender, e) =>
			{
                await DisplayAlert("Performance", "This script will run a series of up to 6 sweeps using idle spies", "Ok");
				
				if (intelMinID != null)
				{
					var idleSpies = SpyScripts.GetIdleSpiesFromList(planetSpies);
					var orderedIdleSpies = idleSpies.OrderByDescending(x => x.level);
					var spiesToUse = new List<LacunaExpanseAPIWrapper.ResponseModels.Spies>();
					int i = 0;
					foreach (var spy in orderedIdleSpies)
					{
						spiesToUse.Add(spy);
						i++;
						if (i == 6)
							break;
					}
					foreach (var spy in spiesToUse)
					{
						var server = new Data.Server();
						var json = Intelligence.AssignSpy(account.SessionID, intelMinID, spy.id, "Security Sweep");
						var response = await server.GetHttpResultStringAsyncAsString(account.Server, Intelligence.URL, json);
						if (response != null)
						{

						}
					}
					
				}
			};

		}
        public PlanetMap(AccountModel account, string planetName)
        {
            OuterBuilding.Children.Add(tempBuildingImage);
            OuterBuilding.Children.Add(InnerBuilding);
            InnerBuilding.Children.Add(tempPlanetBuildingName);
            InnerBuilding.Children.Add(tempPlanetBuildingLevel);
            OuterBuilding.Children.Add(submitArrangement);

            planetlbl.Text = planetName;
            ScrollView scrollMap = new ScrollView
            {
                HorizontalOptions = LayoutOptions.Fill,
                Orientation = ScrollOrientation.Horizontal,

                Content = new StackLayout
                {
                    Orientation = StackOrientation.Horizontal,
                    Children = {
                                     grid
                                },                    
                }
            };
            int left = 0;
            int top = 1;
            int xcounter = -5;
            int ycounter = 5;
            for (int i = 0; i <= 120; i++)
            {
                var b = new BuildingImage { PLOTNUMBER = i, x = Convert.ToString(xcounter), y = Convert.ToString(ycounter), Source = ImageSource.FromResource("LacunaExpress.Images.Demolish.png") };
                xcounter++;
                if(xcounter > 5)
                {
                    xcounter = -5;
                    ycounter--;
                }
                //b.buildingImage.Source = ImageSource.FromResource("LacunaExpress.Images.Demolish.png");
                b.GestureRecognizers.Add((new TapGestureRecognizer
                {
                    Command = new Command(o =>
                    {
                        
                        var index = b.PLOTNUMBER;
                        if(index != 60) //that's the center building of the map and it's not allowed to move
                        {
                            if (selectedBuilding.name.Length > 0)
                            {
                                tempHolding.id = selectedBuilding.id;
                                tempHolding.imageString = selectedBuilding.imageString;
                                tempHolding.level = selectedBuilding.level;
                                tempHolding.name = selectedBuilding.name;

                                selectedBuilding.id = "";
                                selectedBuilding.imageString = "";
                                selectedBuilding.level = "";
                                selectedBuilding.name = "";

                                tempPlanetBuildingName.Text = "No Building Selected";
                                tempPlanetBuildingLevel.Text = "0";
                                tempBuildingImage.Source = null;
                                tempBuildingImage.Source = ImageSource.FromResource("LacunaExpress.Images.Demolish.png");
                            }
                            if (buildingImages[index].name.Length > 0)
                            {
                                selectedBuilding.id = buildingImages[index].id;
                                selectedBuilding.imageString = buildingImages[index].imageString;
                                selectedBuilding.level = buildingImages[index].level;
                                selectedBuilding.name = buildingImages[index].name;

                                buildingImages[index].Source = null;
                                buildingImages[index].Source = ImageSource.FromResource("LacunaExpress.Images.Demolish.png");
                                buildingImages[index].name = "";
                                buildingImages[index].level = "";
                                buildingImages[index].imageString = "";
                                buildingImages[index].id = "";

                                tempPlanetBuildingName.Text = selectedBuilding.name;
                                tempPlanetBuildingLevel.Text = selectedBuilding.level;
                                tempBuildingImage.Source = ImageSource.FromResource(selectedBuilding.imageString);
                            }

                            if (tempHolding.name.Length > 0)
                            {
                                buildingImages[index].level = tempHolding.level;
                                buildingImages[index].name = tempHolding.name;
                                buildingImages[index].id = tempHolding.id;
                                buildingImages[index].imageString = tempHolding.imageString;
                                buildingImages[index].Source = ImageSource.FromResource(tempHolding.imageString);

                                tempHolding.id = "";
                                tempHolding.imageString = "";
                                tempHolding.level = "";
                                tempHolding.x = "";
                                tempHolding.y = "";
                                tempHolding.name = "";
                            }
                        }
                        //SwapBuildings(b.PLOTNUMBER);
                        

                    })
                }));
                buildingImages.Add(b);
                grid.Children.Add(b, left, top);
                left++;
                
                if (left == 11)
                {
                    left = 0;
                    top++;
                }
            }

			var mainLayout = new StackLayout
            {
                Children = {
                    planetlbl,
                    scrollMap,
                    OuterBuilding
                }

            };

			Content = mainLayout;
			if (Device.OS == TargetPlatform.iOS)
			{
				mainLayout.Padding = new Thickness (0, 20, 0, 0);
			}

            this.Appearing += (sender, e) =>
            {

                planetID = (from b in account.Colonies
                            where b.Value.Equals(planetName)
                            select b.Key).First();
                LoadBuildingsAsync(account, planetID);
            };
            submitArrangement.Clicked += async (sender, e) =>
            {
                List<BuildingArrangement> movedBuildings = new List<BuildingArrangement>();
                foreach(var b in buildingImages)
                {
                    if(b.name.Length > 0)
                    {
                        movedBuildings.Add(new BuildingArrangement(b.x, b.y, b.id));
                        
                    }
                }
                string json = Body.RearrangeBuildings(1, account.SessionID, planetID, movedBuildings);
                var server = new Data.Server();
                string response = await server.GetHttpResultStringAsyncAsString(account.Server, Body.url, json);
                string s = response;
            };

        }
        private void readyButton_Click(object sender, EventArgs e)
        {
            if (engineSelect.SelectedItem == null)
            {
                Error.Show("ErrorNoEngine");
                return;
            }
            if (this.versionSelect.SelectedItem == null)
            {
                Error.Show("ErrorNoVersion");
                return;
            }
            if (!eulaCheckBox.Checked)
            {
                Error.Show("ErrorNoEula");
                return;
            }
            if (serverName.Text == "")
            {
                Error.Show("ErrorNoServerName");
                return;
            }
            string engine = engineSelect.SelectedItem.ToString(), version = this.versionSelect.SelectedItem.ToString();
            ServerData = new Data.Server();
            ServerData.name = serverName.Text;
            ServerData.version = version;
            ServerData.engine = engine;
            ServerDirectory = ServerData.GetDirectory();
            if (Directory.Exists(ServerDirectory))
            {
                Error.Show("ErrorServerExists");
                return;
            }
            Directory.CreateDirectory(ServerDirectory);
            string engineDirectory = Main.EnginesDirectory + engine + Path.DirectorySeparatorChar;
            Directory.CreateDirectory(engineDirectory);
            EngineFile = engineDirectory + version + ".jar";
            if (File.Exists(EngineFile))
            {
                DownloadProgressCompleted(null, new AsyncCompletedEventArgs(null, false, null));
            }
            else
            {
                string url = "http://mcservermanager.tk/info/servers/" + engine.ToLower() + "-" + version + ".jar";
                if (engine == "Vanilla")
                    url = "https://s3.amazonaws.com/Minecraft.Download/versions/" + version + "/minecraft_server." + version + ".jar";
                Client = new WebClient();
                Client.DownloadProgressChanged += new DownloadProgressChangedEventHandler(DownloadProgressChanged);
                Client.DownloadFileCompleted += new AsyncCompletedEventHandler(DownloadProgressCompleted);
                Client.DownloadFileAsync(new Uri(url), EngineFile);
            }

            this.Enabled = false;
        }
Example #32
0
 public bool Remove()
 {
     dServer = new Data.Server();
     return(dServer.Remove(ServerID));
 }