Exemple #1
0
        internal void GetReplayData()
        {
            DataNetRequest dnr = new DataNetRequest("http://osu.ppy.sh/web/osu-getreplay.php?c=" + onlineId);

            dnr.onFinish += dnr_onFinish;
            NetManager.AddRequest(dnr);
        }
Exemple #2
0
        private void uploadFiles_do(object sender, DoWorkEventArgs e)
        {
            uploadError = false;
            updateStatus("Ready to upload " + osuUploadTickets.Count + " files.");
            for (int i = 0; i < osuUploadTickets.Count; i++)
            {
                UploadTicket sp = osuUploadTickets[i];
                updateStatus(String.Format("Uploading {0}...", Path.GetFileName(sp.Filename)));

                string url =
                    string.Format("http://peppy.chigau.com/upload.php?u={0}&p={1}&c={2}&of={3}&oc={4}&r={5}",
                                  ConfigManager.sUsername, ConfigManager.sPassword, sp.Ticket,
                                  GeneralHelper.UrlEncode(oszFilename), oszTicket, (i == 0 ? 1 : 0));
                FileStream f    = File.OpenRead(sp.Filename);
                byte[]     file = new byte[f.Length];
                f.Read(file, 0, (int)f.Length);
                f.Close();
                try
                {
                    fileUpload           = new FileUploadNetRequest(url, file, Path.GetFileName(sp.Filename), "osu");
                    fileUpload.onUpdate += up_onUpdate;
                    string error = fileUpload.BlockingPerform();
                    Console.WriteLine(error);
                    fileUpload.onUpdate -= up_onUpdate;
                }
                catch (Exception)
                {
                    uploadError = true;
                }
                progress = (int)((float)(i + 1) / osuUploadTickets.Count * 100);
            }

            if (oszFilename != null)
            {
                File.Delete(oszFilename);
            }

            if (hasVideo)
            {
                updateStatus("Creating no-video file...");
                string url = string.Format("http://peppy.chigau.com/novideo.php?file={0}",
                                           GeneralHelper.UrlEncode(oszFilename));
                DataNetRequest r = new DataNetRequest(url);
                r.onFinish += r_onFinish;
                NetManager.AddRequest(r);
                while (!noVideoFinished)
                {
                    Thread.Sleep(100);
                }
            }
        }
Exemple #3
0
        public override void Initialize()
        {
            mb             = new MenuBackground();
            mb.DrawDepth   = 0.1f;
            mb.Position    = new Vector2(440, -230);
            mb.ScaleScalar = 0.5f;

            osuLogo             = new pSprite(TextureManager.Load(OsuTexture.menu_osu), FieldTypes.StandardSnapCentre, OriginTypes.Centre, ClockTypes.Mode, new Vector2(0, 0), 0.9f, true, Color4.White);
            osuLogo.ScaleScalar = 0.7f;
            mb.Add(osuLogo);

            //gloss
            osuLogoGloss             = new pSprite(TextureManager.Load(OsuTexture.menu_gloss), FieldTypes.StandardSnapCentre, OriginTypes.Centre, ClockTypes.Mode, new Vector2(0, 0), 0.91f, true, Color4.White);
            osuLogoGloss.Additive    = true;
            osuLogoGloss.ScaleScalar = 0.7f;
            mb.Add(osuLogoGloss);

            if (DownloadLink != null)
            {
                downloadRequest           = new DataNetRequest(DownloadLink);
                downloadRequest.onUpdate += dnr_onUpdate;
                downloadRequest.onFinish += dnr_onFinish;

                NetManager.AddRequest(downloadRequest);
            }
            else
            {
                ShowMetadata();
            }

            GameBase.ShowLoadingOverlay = true;

            loadingBackground          = new pRectangle(Vector2.Zero, new Vector2(GameBase.BaseSize.X + 1, 0), true, 0, new Color4(0, 97, 115, 180));
            loadingBackground.Additive = true;
            loadingBackground.Field    = FieldTypes.StandardSnapBottomLeft;
            loadingBackground.Origin   = OriginTypes.BottomLeft;

            spriteManager.Add(loadingBackground);

            spriteManager.Add(new BackButton(delegate { Director.ChangeMode(OsuMode.Store); }, false));
        }
        public override void Update(GameTime gameTime)
        {
            if (IsDisplayed && pendingOnlineScores && OnlineRetrival)
            {
                if (score.onlineRank > 0)
                {
                    onlineRanking.Text = "Congratulations - you achieved rank #" + score.onlineRank +
                                         " online for this beatmap!";
                    onlineRanking.TextColour = Color.YellowGreen;
                }
                else
                {
                    onlineRanking.Text = "You have previously set a higher online record.";
                }

                GameBase.User.Refresh();

                if (GameBase.User.NextRank != 0)
                {
                    onlineRanking2.Text = string.Format("You need another {0:0,0} points to reach the next rank!",
                                                        GameBase.User.NextRank);
                }

                if (GameBase.User.AchievementImages != null)
                {
                    GameBase.ShowMessageMassive("Loading new achievements...", 1000);
                    for (int i = 0; i < GameBase.User.AchievementImages.Length; i++)
                    {
                        if (GameBase.User.AchievementImages[i].Length == 0)
                        {
                            continue;
                        }
                        DataNetRequest dnr =
                            new DataNetRequest("http://osu.ppy.sh/images/achievements/" + GameBase.User.AchievementImages[i]);
                        int locali = i;
                        dnr.onFinish += delegate(byte[] data, Exception e)
                        {
                            if (e != null)
                            {
                                return;
                            }
                            MemoryStream stream = new MemoryStream(data);
                            stream.Position = 0;
                            pSprite p =
                                new pSprite(
                                    Texture2D.FromFile(GameBase.graphics.GraphicsDevice, stream),
                                    new Vector2(
                                        320 - (GameBase.User.AchievementImages.Length * 84) / 2f + locali * 84,
                                        vspacing), 0.95f + locali * 0.001f, true, Color.White);
                            p.FadeInFromZero(500);
                            spriteManager.Add(p);
                            SpriteCollection.Add(p);
                        };

                        NetManager.AddRequest(dnr);
                    }
                }

                pendingOnlineScores = false;
            }

            if (acceptRating)
            {
                int found = -1;
                for (int i = 0; i < 10; i++)
                {
                    if (star[i].Hovering)
                    {
                        found = i;
                    }
                }
                for (int i = 0; i < 10; i++)
                {
                    star[i].FadeColour((i <= found ? Color.White : new Color(161, 73, 127, 255)), 100);
                }
            }
        }