示例#1
0
        private Style ReadStyle(XElement style)
        {
            XElement images = style.XPathSelectElement("images");

            Style result = new Style
            {
                LauncherTitle               = XElementExtender.ReadName(style),
                LauncherVersion             = XElementExtender.ReadString(style, "version"),
                LauncherWidth               = XElementExtender.ReadInteger(style, "width"),
                LauncherHeight              = XElementExtender.ReadInteger(style, "height"),
                FontColor                   = XElementExtender.ReadColor(style, "fontColor"),
                DialogBackgroundColor       = XElementExtender.ReadColor(style, "dialogBackgroundColor"),
                DialogFontColor             = XElementExtender.ReadColor(style, "dialogFontColor"),
                LauncherBackgroundImage     = XElementExtender.ReadImage(images, "background") ?? Properties.Resources.filenotfound,
                LauncherOverlayImage        = XElementExtender.ReadImage(images, "overlay") ?? Properties.Resources.filenotfound,
                ServerOnlineImage           = XElementExtender.ReadImage(images, "serverOnline") ?? Properties.Resources.filenotfound,
                ServerOfflineImage          = XElementExtender.ReadImage(images, "serverOffline") ?? Properties.Resources.filenotfound,
                ServerPlayButtonImage       = XElementExtender.ReadImage(images, "buttonPlay") ?? Properties.Resources.filenotfound,
                ServerInstallButtonImage    = XElementExtender.ReadImage(images, "buttonInstall") ?? Properties.Resources.filenotfound,
                ServerUninstallButtonImage  = XElementExtender.ReadImage(images, "buttonUninstall") ?? Properties.Resources.filenotfound,
                ServerUpdateButtonImage     = XElementExtender.ReadImage(images, "buttonUpdate") ?? Properties.Resources.filenotfound,
                SettingsButtonImage         = XElementExtender.ReadImage(images, "buttonSettings") ?? Properties.Resources.filenotfound,
                RefreshButtonImage          = XElementExtender.ReadImage(images, "buttonRefresh") ?? Properties.Resources.filenotfound,
                ServerPatchNotesButtonImage = XElementExtender.ReadImage(images, "buttonPatchnotes") ?? Properties.Resources.filenotfound
            };

            result.ServerUninstallButtonGrayScaledImage = ImageManipulation.CreateGrayScaledImage(result.ServerUninstallButtonImage as Bitmap);


            OutputConsole.PrintVerbose(result, 3);
            return(result);
        }
示例#2
0
        private Server ReadServer(XElement server)
        {
            XElement images          = server.XPathSelectElement("style/images");
            XElement launcherProfile = server.XPathSelectElement("launcherProfile");
            XElement options         = server.XPathSelectElement("options");

            Server result = new Server
            {
                Name                = XElementExtender.ReadName(server),
                Version             = XElementExtender.ReadString(server, "version"),
                Ip                  = XElementExtender.ReadString(server, "server/url"),
                State               = XElementExtender.ReadString(server, "state"),
                StatusUri           = XElementExtender.ReadUri(server, "status"),
                PatchNotesUri       = XElementExtender.ReadUri(server, "patchnotesUrl"),
                PatchFilesUri       = XElementExtender.ReadUri(server, "patchUrl"),
                Image               = XElementExtender.ReadImage(images, "background") ?? Properties.Resources.filenotfound,
                LauncherProfileData = ReadLauncherProfileData(launcherProfile),
                Options             = ReadOptions(options)
            };

            result.GrayScaledImage = ImageManipulation.CreateGrayScaledImage(result.Image as Bitmap);

            OutputConsole.PrintVerbose(result, 1);
            return(result);
        }
示例#3
0
        private LauncherProfileData ReadLauncherProfileData(XElement launcherProfile)
        {
            LauncherProfileData result = new LauncherProfileData
            {
                Name          = XElementExtender.ReadName(launcherProfile),
                Type          = XElementExtender.ReadString(launcherProfile, "type"),
                Icon          = XElementExtender.ReadString(launcherProfile, "icon"),
                LastVersionId = XElementExtender.ReadString(launcherProfile, "lastVersionId"),
                JavaArgs      = XElementExtender.ReadString(launcherProfile, "javaArgs"),
                GameDirectory = XElementExtender.ReadString(launcherProfile, "gameDir")
            };

            OutputConsole.PrintVerbose(result, 1);
            return(result);
        }
示例#4
0
        public Serverstatus Read(XDocument document)
        {
            XElement root = document.XPathSelectElement("root");

            Serverstatus result = new Serverstatus
            {
                Online          = XElementExtender.ReadBoolean(root, "online"),
                MessageOfTheDay = XElementExtender.ReadString(root, "motd"),
                GameMode        = XElementExtender.ReadString(root, "gameType"),
                MaxPlayers      = XElementExtender.ReadInteger(root, "playerMax"),
                CurrentPlayers  = XElementExtender.ReadInteger(root, "playerOnline"),
                Players         = new PlayerReader().Read(document)
            };

            OutputConsole.PrintVerbose(result, 2);
            return(result);
        }
示例#5
0
        public static string ReadRelativePath(XElement item)
        {
            string relPath = XElementExtender.ReadString(item, "relPath");

            return(relPath.Replace(@"/", "\\"));
        }