Exemplo n.º 1
0
        public void Draw(Vector2 basePosition, float alpha)
        {
            Vector2 pos = Position + new Vector2(leftTexture.Width + (IsModeS ? 2 : 10), 0);

            CacheManager.Draw(IsModeS ? @"Content\Textures\Resources\Start\NumberSetS-Bottom" : @"Content\Textures\Resources\Start\NumberSet-Bottom", new Rectangle(Convert.ToInt32(pos.X + basePosition.X), Convert.ToInt32(pos.Y + basePosition.Y), groundTextureWidth + Widthchange, groundTextureHeight + Heightchange), null, Color.White * alpha, 0f, Vector2.Zero, SpriteEffects.None, 0f);
            if (NowNumber == null)
            {
                NowNumber = 0;
            }
            int width = 0;

            if (MaxNumber != 0)
            {
                width = Convert.ToInt32(NowNumber * (groundTextureWidth + Widthchange) / MaxNumber);
            }
            else
            {
                width = 0;
            }

            //CacheManager.Draw(IsModeS ? @"Content\Textures\Resources\Start\NumberSetS-Fill" : @"Content\Textures\Resources\Start\NumberSet-Fill", new Vector2(Convert.ToInt32(pos.X + basePosition.X) + 2, Convert.ToInt32(pos.Y + basePosition.Y) + 3), new Rectangle(0, 0, width, fillTextureHeight + Heightchange - 3), Color.Orange * alpha);
            CacheManager.Draw(IsModeS ? @"Content\Textures\Resources\Start\NumberSetS-Fill" : @"Content\Textures\Resources\Start\NumberSet-Fill", new Rectangle(Convert.ToInt32(pos.X + basePosition.X) + 2, Convert.ToInt32(pos.Y + basePosition.Y), width - 4, fillTextureHeight + Heightchange), null, Color.White * alpha, 0f, Vector2.Zero, SpriteEffects.None, 0f);

            rightTexture.Draw(new Vector2(basePosition.X + Widthchange, basePosition.Y), Color.White * alpha);
            leftTexture.Draw(basePosition, Color.White * alpha);

            if (DisNumber)
            {
                CacheManager.DrawString(Session.Current.Font, MinNumber.ToString(), leftTexture.Position + basePosition + new Vector2(0, 50), NumColor * alpha);
                CacheManager.DrawString(Session.Current.Font, NowNumber.ToString(), leftTexture.Position + basePosition + new Vector2(64, 50), NumColor * alpha);
                CacheManager.DrawString(Session.Current.Font, MaxNumber.ToString(), leftTexture.Position + basePosition + new Vector2(64 + groundTextureWidth + Widthchange, 50), NumColor * alpha);
            }
            else
            {
                CacheManager.DrawString(Session.Current.Font, DisNumberText ? ViewText + NowNumber.ToString() : NowNumber.ToString(), new Vector2((leftTexture.Position + basePosition + (IsModeS ? new Vector2(55, 3) : new Vector2(156, 8))).X, (leftTexture.Position + basePosition + (IsModeS ? new Vector2(55, 3) : new Vector2(156, 8))).Y + Heightchange), Color.White * alpha, 0f, Vector2.Zero, ((float)leftTexture.Height + Heightchange) / leftTexture.Height, SpriteEffects.None, 0f);
            }
        }
Exemplo n.º 2
0
        public void Draw(Vector2 basePosition, float alpha)
        {
            Vector2 pos = Position + new Vector2(leftTexture.Width + (IsModeS ? 2 : 10), 0);

            CacheManager.Draw(IsModeS ? @"Content\Textures\Resources\Start\NumberSetS-Bottom" : @"Content\Textures\Resources\Start\NumberSet-Bottom", pos + basePosition, Color.White * alpha);
            if (NowNumber == null)
            {
                NowNumber = 0;
            }
            int width = 0;

            if (MaxNumber != 0)
            {
                width = (int)NowNumber * fillTextureWidth / MaxNumber;
            }
            else
            {
                width = 0;
            }

            CacheManager.Draw(IsModeS ? @"Content\Textures\Resources\Start\NumberSetS-Fill" : @"Content\Textures\Resources\Start\NumberSet-Fill", new Vector2(Convert.ToInt32(pos.X + basePosition.X) + 2, Convert.ToInt32(pos.Y + basePosition.Y) + 2), new Rectangle(0, 0, width, fillTextureHeight), Color.Orange * alpha);

            rightTexture.Draw(basePosition, Color.White * alpha);
            leftTexture.Draw(basePosition, Color.White * alpha);

            if (DisNumber)
            {
                CacheManager.DrawString(Session.Current.Font, MinNumber.ToString(), leftTexture.Position + basePosition + new Vector2(0, 50), NumColor * alpha);
                CacheManager.DrawString(Session.Current.Font, NowNumber.ToString(), leftTexture.Position + basePosition + new Vector2(64, 50), NumColor * alpha);
                CacheManager.DrawString(Session.Current.Font, MaxNumber.ToString(), leftTexture.Position + basePosition + new Vector2(64 + groundTextureWidth, 50), NumColor * alpha);
            }
            else
            {
                CacheManager.DrawString(Session.Current.Font, DisNumberText ? ViewText + NowNumber.ToString() : NowNumber.ToString(), leftTexture.Position + basePosition + (IsModeS ? new Vector2(55, 3) : new Vector2(156, 8)), Color.Black * alpha);
            }
        }
Exemplo n.º 3
0
        public void Draw()
        {
            if (Visible)
            {
                if (TextBoxStyle == TextBoxStyle.Wide)
                {
                    CacheManager.Draw(@"Content\Textures\Resources\Start\TextBox-Wide", Position, Color.White * tranAlpha);
                    int    resultRow   = 0;
                    int    resultWidth = 0;
                    string result      = ViewText.SplitLineString(Convert.ToInt32(15f / TextScale) - 1, TextScale < 1f ? 4 : 3, ref resultRow, ref resultWidth, 2);
                    if (resultRow == 0)
                    {
                        resultRow = 1;
                    }
                    result = CacheManager.CheckTextCache(Session.Current.Font, result, true, true);
                    CacheManager.DrawString(Session.Current.Font, result, Position + new Vector2(2, 7), Color.Black * tranAlpha, 0f, Vector2.Zero, TextScale, Microsoft.Xna.Framework.Graphics.SpriteEffects.None, 0f);

                    if (Selected)
                    {
                        if (resultRow >= 5 && resultWidth >= 28 * 15 * TextScale)
                        {
                            CanAdd = false;
                        }
                        else
                        {
                            CanAdd = true;
                        }

                        if (Selected && tranAlpha > 0.5f)
                        {
                            CacheManager.Draw(@"Content\Textures\Resources\Start\Input-Cursor-Big", Position + new Vector2(resultWidth * TextScale, (resultRow - 1) * 32) + new Vector2(5, 7), Color.White * tranAlpha);
                        }
                    }
                }
                else
                {
                    btTexture.Alpha = tranAlpha;
                    btTexture.Draw();
                    if (TextBoxMode != GamePanels.TextBoxMode.Password)
                    {
                        Vector2 pos   = new Vector2(5, 6);
                        float   scale = 1f;
                        if (TextBoxStyle == GamePanels.TextBoxStyle.Big)
                        {
                            if (TextScale < 1f)
                            {
                                pos = new Vector2(5, 9);
                            }
                        }
                        else if (TextBoxStyle == GamePanels.TextBoxStyle.Medium)
                        {
                            scale = 0.9f;
                        }
                        else if (TextBoxStyle == GamePanels.TextBoxStyle.Small)
                        {
                            scale = 0.7f;
                        }
                        else if (TextBoxStyle == GamePanels.TextBoxStyle.Tiny)
                        {
                            scale = 0.7f;
                        }
                        else if (TextBoxStyle == TextBoxStyle.Plus)
                        {
                            //scale = 0.7f;
                            pos = new Vector2(5, 20);
                        }
                        CacheManager.DrawString(Session.Current.Font, ViewText, Position + pos, (Selected ? Color.OrangeRed : Color.Black) * tranAlpha, 0f, Vector2.Zero, scale * TextScale, Microsoft.Xna.Framework.Graphics.SpriteEffects.None, 0, true, true);
                    }
                    else
                    {
                        string pass = "";
                        if (!String.IsNullOrEmpty(Text))
                        {
                            for (int i = 0; i < Text.Length; i++)
                            {
                                pass += "*";
                            }
                        }
                        else if (DisplayStarWhenEmpty && !Selected)
                        {
                            pass = "******";
                        }
                        CacheManager.DrawString(Session.Current.Font, pass, Position + new Vector2(5, 6), Color.Black * tranAlpha);
                    }
                    if (Selected && displaycursor && Enable)
                    {
                        string  curs = Cursor.Replace("Tiny", "Small").Replace("Medium", "Small").Replace("Wide", "Big").Replace("Plus", "Big");
                        Vector2 pos  = new Vector2(5, 3);
                        if (TextBoxStyle == TextBoxStyle.Plus)
                        {
                            pos = new Vector2(5, 15);
                        }
                        CacheManager.Draw(@"Content\Textures\Resources\Start\Input-Cursor-" + curs, Position + TextPosition + pos, Color.White * tranAlpha);
                    }
                }
            }
        }