FromArgb() public static method

public static FromArgb ( int argb ) : Color
argb int
return Color
コード例 #1
0
        private void btn_equalization_Click(object sender, RoutedEventArgs e)
        {
            if (_primeBitmap == null)
            {
                MessageBox.Show("请选择图片");
                return;
            }
            var numPixel = new int[256];

            for (var i = 0; i < _primeBitmap.Height; i++)
            {
                for (var j = 0; j < _primeBitmap.Width; j++)
                {
                    int x = _primeBitmap.GetPixel(j, i).R;
                    numPixel[x]++;
                }
            }
            for (var i = 0; i < 256; i++)
            {
                Console.WriteLine(numPixel[i]);
            }
            var probPixel = new double[256];

            for (var i = 0; i < 256; i++)
            {
                probPixel[i] = numPixel[i] / (_primeBitmap.Height * _primeBitmap.Width * 1.0);
            }
            var cumuPixel = new double[256];

            for (var i = 0; i < 256; i++)
            {
                if (i == 0)
                {
                    cumuPixel[i] = probPixel[i];
                }
                else
                {
                    cumuPixel[i] = cumuPixel[i - 1] + probPixel[i];
                }
            }
            for (var i = 0; i < 256; i++)
            {
                cumuPixel[i] = cumuPixel[i] * 256 + 0.5;
                Console.WriteLine(@"pixel is :" + cumuPixel[i]);
            }
            for (var i = 0; i < _primeBitmap.Height; i++)
            {
                for (var j = 0; j < _primeBitmap.Width; j++)
                {
                    int x     = _primeBitmap.GetPixel(j, i).R;
                    var value = (int)cumuPixel[x];
                    if (value > 255)
                    {
                        value = 255;
                    }
                    var color = Color.FromArgb(value, value, value);
                    _primeBitmap.SetPixel(j, i, color);
                }
            }
            //for (int i = 0; i < prime_bitmap.Height; i++)
            //{
            //    for (int j = 0; j < prime_bitmap.Width; j++)
            //    {
            //        System.Drawing.Color color = prime_bitmap.GetPixel(j, i);
            //        MessageBox.Show(color.ToString());
            //    }
            //}
            show_pic();
        }
コード例 #2
0
ファイル: MainWindow.xaml.cs プロジェクト: rdancer/SpaceSim
        /// <summary>
        /// Draws all the physics bodies and UI elements.
        /// </summary>
        private unsafe void DrawFrame(TimeStep timeStep, FpsManager frameTimer)
        {
            var font  = new Font("Verdana Bold", 14);
            var brush = new SolidBrush(Color.White);

            RectangleD cameraBounds = _camera.GetBounds();

            IGravitationalBody target = _gravitationalBodies[_targetIndex];
            var targetSpaceCraft      = target as ISpaceCraft;

            // If openCL is supported render all cl bodies
            if (_renderingType == RenderingType.OpenCLHardware ||
                _renderingType == RenderingType.OpenCLSoftware)
            {
                _gpuClear.RenderCl(_clProxy);

                foreach (MassiveBodyBase renderable in _massiveBodies)
                {
                    if (renderable.Visibility(cameraBounds) > 0)
                    {
                        renderable.RenderCl(_clProxy, cameraBounds, _sun);
                    }
                }

                int[] frameData = _clProxy.ReadIntBuffer("image", RenderUtils.ScreenArea);

                var rect = new Rectangle(0, 0, _imageBitmap.Width, _imageBitmap.Height);

                BitmapData bmpData = _imageBitmap.LockBits(rect, ImageLockMode.WriteOnly,
                                                           PixelFormat.Format32bppArgb);

                Marshal.Copy(frameData, 0, bmpData.Scan0, RenderUtils.ScreenArea);

                var ptr = (byte *)bmpData.Scan0;

                // Hack to force full alpha for now
                for (int i = 0; i < RenderUtils.ScreenArea; i++)
                {
                    ptr[i * 4 + 3] = 255;
                }

                _imageBitmap.UnlockBits(bmpData);
            }
            else
            {
                // Fall back to gdi for cl renderables
                using (var graphics = Graphics.FromImage(_imageBitmap))
                {
                    graphics.Clear(Color.Black);

                    foreach (MassiveBodyBase renderable in _massiveBodies)
                    {
                        if (renderable.Visibility(cameraBounds) > 0)
                        {
                            renderable.RenderGdiFallback(graphics, cameraBounds, _sun);
                        }
                    }
                }
            }

            // Draw all orbit traces, spacecrafts, and GDI objects
            using (var graphics = Graphics.FromImage(_imageBitmap))
            {
                graphics.SmoothingMode      = SmoothingMode.HighSpeed;
                graphics.PixelOffsetMode    = PixelOffsetMode.HighSpeed;
                graphics.CompositingQuality = CompositingQuality.HighSpeed;
                graphics.InterpolationMode  = InterpolationMode.NearestNeighbor;

                RenderUtils.DrawLine(graphics, cameraBounds, new DVector2(0, -10e12), new DVector2(0, 10e12), Color.FromArgb(40, 255, 255, 255));
                RenderUtils.DrawLine(graphics, cameraBounds, new DVector2(-10e12, 0), new DVector2(10e12, 0), Color.FromArgb(40, 255, 255, 255));

                double apogee  = 0;
                double perigee = 0;

                // Draw orbit traces
                foreach (MassiveBodyBase massiveBody in _massiveBodies)
                {
                    if (massiveBody is Sun)
                    {
                        continue;
                    }

                    OrbitTrace trace = OrbitHelper.TraceMassiveBody(massiveBody);

                    if (target == massiveBody)
                    {
                        apogee  = trace.Apogee;
                        perigee = trace.Perigee;
                    }

                    trace.Draw(graphics, cameraBounds, massiveBody);
                }

                // Draw structures
                foreach (StructureBase structure in _structures)
                {
                    structure.RenderGdi(graphics, cameraBounds);
                }

                // Draw spacecraft
                foreach (SpaceCraftBase spaceCraft in _spaceCrafts)
                {
                    if (spaceCraft.Visibility(cameraBounds) > 0)
                    {
                        RectangleD bounds = spaceCraft.ComputeBoundingBox();

                        // In range for render
                        if (cameraBounds.IntersectsWith(bounds))
                        {
                            spaceCraft.RenderGdi(graphics, cameraBounds);
                        }
                    }

                    if (spaceCraft.Parent != null)
                    {
                        continue;
                    }

                    OrbitTrace trace = OrbitHelper.TraceSpaceCraft(spaceCraft);

                    if (target == spaceCraft)
                    {
                        apogee  = trace.Apogee;
                        perigee = trace.Perigee;
                    }

                    trace.Draw(graphics, cameraBounds, spaceCraft);
                }

                var elapsedTime = TimeSpan.FromSeconds(_totalElapsedSeconds);

                int elapsedYears = elapsedTime.Days / 365;
                int elapsedDays  = elapsedTime.Days % 365;

                graphics.DrawString("Elapsed Time: " + string.Format("Y: {0} D: {1} H: {2} M: {3} S: {4}", elapsedYears, elapsedDays, elapsedTime.Hours, elapsedTime.Minutes, elapsedTime.Seconds), font, brush, 5, 5);
                graphics.DrawString("Update Speed: " + timeStep.Multiplier + " X", font, brush, 5, 35);

                double altitude = target.GetRelativeAltitude();

                graphics.DrawString("Altitude: " + UnitDisplay.Distance(altitude), font, brush, 5, 100);

                graphics.DrawString(string.Format("Target: {0}", target), font, brush, RenderUtils.ScreenWidth / 2 - 35, 5);

                graphics.DrawString("Relative Speed: " + UnitDisplay.Speed(target.GetRelativeVelocity().Length()), font, brush, 5, 225);
                graphics.DrawString("Relative Acceleration: " + UnitDisplay.Acceleration(target.GetRelativeAcceleration().Length()), font, brush, 5, 255);

                graphics.DrawString("Apogee: " + UnitDisplay.Distance(apogee), font, brush, 5, 320);
                graphics.DrawString("Perigee: " + UnitDisplay.Distance(perigee), font, brush, 5, 350);

                graphics.DrawString("Mass: " + UnitDisplay.Mass(target.Mass), font, brush, 5, 410);

                if (targetSpaceCraft != null)
                {
                    graphics.DrawString("Thrust: " + UnitDisplay.Force(targetSpaceCraft.Thrust), font, brush, 5, 440);

                    double downrangeDistance = targetSpaceCraft.GetDownrangeDistance(_strongback.Position);

                    graphics.DrawString("Downrange: " + UnitDisplay.Distance(downrangeDistance), font, brush, 5, 130);

                    double density = targetSpaceCraft.GravitationalParent.GetAtmosphericDensity(altitude);

                    graphics.DrawString("Air Density: " + UnitDisplay.Density(density), font, brush, 5, 160);
                }

                graphics.DrawString("FPS: " + frameTimer.CurrentFps, font, brush, RenderUtils.ScreenWidth - 80, 5);
            }

            // Draw all GUI elements (higher quality)
            using (var graphics = Graphics.FromImage(_imageBitmap))
            {
                graphics.SmoothingMode = SmoothingMode.HighQuality;

                double throttle = 0;

                if (targetSpaceCraft != null)
                {
                    var throttleValues = new List <double>();

                    targetSpaceCraft.SumTotalThrottle(throttleValues);

                    if (throttleValues.Count > 0)
                    {
                        throttle = throttleValues.Average();
                    }
                }

                foreach (IGauge gauge in _gauges)
                {
                    if (targetSpaceCraft != null)
                    {
                        gauge.Update(_gravitationalBodies[_targetIndex].Rotation, throttle / 100.0);
                    }

                    gauge.Render(graphics, cameraBounds);
                }
            }
        }
コード例 #3
0
        /// <include file='doc\ColorConverter.uex' path='docs/doc[@for="ColorConverter.ConvertFrom"]/*' />
        /// <devdoc>
        ///      Converts the given object to the converter's native type.
        /// </devdoc>
        public override object ConvertFrom(ITypeDescriptorContext context, CultureInfo culture, object value)
        {
            string strValue = value as string;

            if (strValue != null)
            {
                object obj  = null;
                string text = strValue.Trim();

                if (text.Length == 0)
                {
                    obj = Color.Empty;
                }
                else
                {
                    // First, check to see if this is a standard name.
                    //
                    obj = GetNamedColor(text);

                    if (obj == null)
                    {
                        if (culture == null)
                        {
                            culture = CultureInfo.CurrentCulture;
                        }

                        char sep = culture.TextInfo.ListSeparator[0];
                        bool tryMappingToKnownColor = true;

                        TypeConverter intConverter = TypeDescriptor.GetConverter(typeof(int));

                        // If the value is a 6 digit hex number only, then
                        // we want to treat the Alpha as 255, not 0
                        //
                        if (text.IndexOf(sep) == -1)
                        {
                            // text can be '' (empty quoted string)
                            if (text.Length >= 2 && (text[0] == '\'' || text[0] == '"') && text[0] == text[text.Length - 1])
                            {
                                // In quotes means a named value
                                string colorName = text.Substring(1, text.Length - 2);
                                obj = Color.FromName(colorName);
                                tryMappingToKnownColor = false;
                            }
                            else if ((text.Length == 7 && text[0] == '#') ||
                                     (text.Length == 8 && (text.StartsWith("0x") || text.StartsWith("0X"))) ||
                                     (text.Length == 8 && (text.StartsWith("&h") || text.StartsWith("&H"))))
                            {
                                // Note: ConvertFromString will raise exception if value cannot be converted.
                                obj = Color.FromArgb(unchecked ((int)(0xFF000000 | (uint)(int)intConverter.ConvertFromString(context, culture, text))));
                            }
                        }

                        // Nope.  Parse the RGBA from the text.
                        //
                        if (obj == null)
                        {
                            string[] tokens = text.Split(sep);
                            int[]    values = new int[tokens.Length];
                            for (int i = 0; i < values.Length; i++)
                            {
                                values[i] = unchecked ((int)intConverter.ConvertFromString(context, culture, tokens[i]));
                            }

                            // We should now have a number of parsed integer values.
                            // We support 1, 3, or 4 arguments:
                            //
                            // 1 -- full ARGB encoded
                            // 3 -- RGB
                            // 4 -- ARGB
                            //
                            switch (values.Length)
                            {
                            case 1:
                                obj = Color.FromArgb(values[0]);
                                break;

                            case 3:
                                obj = Color.FromArgb(values[0], values[1], values[2]);
                                break;

                            case 4:
                                obj = Color.FromArgb(values[0], values[1], values[2], values[3]);
                                break;
                            }
                            tryMappingToKnownColor = true;
                        }

                        if ((obj != null) && tryMappingToKnownColor)
                        {
                            // Now check to see if this color matches one of our known colors.
                            // If it does, then substitute it.  We can only do this for "Colors"
                            // because system colors morph with user settings.
                            //
                            int targetARGB = ((Color)obj).ToArgb();

                            foreach (Color c in Colors.Values)
                            {
                                if (c.ToArgb() == targetARGB)
                                {
                                    obj = c;
                                    break;
                                }
                            }
                        }
                    }

                    if (obj == null)
                    {
                        throw new ArgumentException(SR.Format(SR.InvalidColor, text));
                    }
                }
                return(obj);
            }
            return(base.ConvertFrom(context, culture, value));
        }
コード例 #4
0
        public void DrawBitmap(Classes.Rendering.TextureExt image, int x, int y, int rect_x, int rect_y, int width, int height, bool selected, int Transparency, bool fliph = false, bool flipv = false, int rotation = 0, Color?color = null)
        {
            var LastTransform = sprite.Transform;

            Rectangle screen = _parent.GetScreen();
            double    zoom   = _parent.GetZoom();

            sprite.Transform = Matrix.Scaling((float)zoom, (float)zoom, 1f);

            Rectangle boundBox = new Rectangle(rect_x, rect_y, width, height);
            Vector3   position = new Vector3(x - (int)(screen.X / zoom), y - (int)(screen.Y / zoom), 0);
            Vector3   center   = new Vector3(new float[] { 0, 0, 0 });

            if (fliph || flipv || rotation != 0)
            {
                float negatedZoom = -(float)zoom;
                float normalZoom  = (float)zoom;
                if (rotation != 0)
                {
                    float center_x   = (fliph ? (float)(width / 2) : (float)(width / 2));
                    float center_y   = (flipv ? (float)(height / 2) : (float)(height / 2));
                    float position_x = (fliph ? position.X : position.X);
                    float position_y = (flipv ? position.Y : position.Y);

                    var scalingCenter   = new Vector2(0, 0);
                    var scalingRotation = 1f;
                    var scaling         = new Vector2(1f, 1f);
                    var rotationCenter  = new Vector2(center_x, center_y);
                    var Rotation        = (float)(rotation * (Math.PI / 180.0));
                    var translation     = new Vector2(position_x, position_y);
                    sprite.Transform = Matrix.Transformation2D(scalingCenter, scalingRotation, scaling, rotationCenter, Rotation, translation);
                    position         = Vector3.Zero;
                    center           = Vector3.Zero;
                    //sprite.Transform *= Matrix.Scaling((fliph ? negatedZoom : normalZoom), (flipv ? negatedZoom : normalZoom), 1f);
                    sprite.Transform *= Matrix.Scaling(normalZoom, normalZoom, 1f);
                }
                else
                {
                    if (fliph)
                    {
                        position.X = -position.X;
                    }
                    if (flipv)
                    {
                        position.Y = -position.Y;
                    }

                    if (fliph)
                    {
                        center.X = boundBox.Width;
                    }
                    if (flipv)
                    {
                        center.Y = boundBox.Height;
                    }
                    sprite.Transform = Matrix.Scaling((fliph ? negatedZoom : normalZoom), (flipv ? negatedZoom : normalZoom), 1f);
                }
            }

            if (color != null)
            {
                DrawTexture(image, boundBox, center, position, Color.FromArgb(Transparency, color.Value));
            }
            else
            {
                DrawTexture(image, boundBox, center, position, (selected) ? Color.BlueViolet : Color.FromArgb(Transparency, Color.White));
            }

            sprite.Transform = LastTransform;
        }
コード例 #5
0
ファイル: Program.cs プロジェクト: Ox29A/LeagueSharp-1
        private static void Drawing_OnDraw_PassiveTimes(EventArgs args)
        {
            var passiveBuffs =
                (from b in ObjectManager.Player.Buffs
                 join b1 in CommonBuffManager.PassiveBuffs on b.DisplayName equals b1.BuffName
                 select new { b, b1 }).Distinct();

            foreach (var buffName in passiveBuffs)
            {
                //Game.PrintChat(buffName.b1.BuffName);
                for (int i = 0; i < passiveBuffs.Count(); i++)
                {
                    if (buffName.b.EndTime >= Game.Time)
                    {
                        CommonGeometry.DrawBox(new Vector2(ObjectManager.Player.HPBarPosition.X + 10, (i * 8) + ObjectManager.Player.HPBarPosition.Y + 32), 130, 6, Color.FromArgb(100, 255, 200, 37), 1, Color.Black);

                        var buffTime = buffName.b.EndTime - buffName.b.StartTime;
                        CommonGeometry.DrawBox(new Vector2(ObjectManager.Player.HPBarPosition.X + 11, (i * 8) + ObjectManager.Player.HPBarPosition.Y + 33), (130 / buffTime) * (buffName.b.EndTime - Game.Time), 4, buffName.b1.Color, 1, buffName.b1.Color);

                        TimeSpan timeSpan = TimeSpan.FromSeconds(buffName.b.EndTime - Game.Time);
                        var      timer    = $"{timeSpan.Minutes:D2}:{timeSpan.Seconds:D2}";
                        CommonGeometry.DrawText(CommonGeometry.TextPassive, timer, ObjectManager.Player.HPBarPosition.X + 142, (i * 8) + ObjectManager.Player.HPBarPosition.Y + 29, SharpDX.Color.Wheat);
                    }
                }
            }

            foreach (var hero in HeroManager.AllHeroes)
            {
                var jungleBuffs = (from b in hero.Buffs join b1 in CommonBuffManager.JungleBuffs on b.DisplayName equals b1.BuffName select new { b, b1 }).Distinct();

                foreach (var buffName in jungleBuffs.ToList())
                {
                    var nDiff1  = buffName.b.EndTime - buffName.b.StartTime < 10 ? (Game.Time - buffName.b.StartTime) * 10 : Game.Time - buffName.b.StartTime;
                    var nDiff2  = buffName.b.EndTime - buffName.b.StartTime < 10 ? (buffName.b.EndTime - buffName.b.StartTime) * 10 : buffName.b.EndTime - buffName.b.StartTime;
                    var circle1 = new CommonGeometry.Circle2(new Vector2(hero.Position.X + 3, hero.Position.Y - 3), 140 + (buffName.b1.Number * 20), nDiff1, nDiff2).ToPolygon();
                    circle1.Draw(Color.Black, 3);

                    var circle = new CommonGeometry.Circle2(hero.Position.To2D(), 140 + (buffName.b1.Number * 20), nDiff1, nDiff2).ToPolygon(); circle.Draw(buffName.b1.Color, 3);
                }
            }
        }
コード例 #6
0
ファイル: Program.cs プロジェクト: juggernault/Leaguesharp-3
        private static void Game_OnGameLoad(EventArgs args)
        {
            Player = ObjectManager.Player;
            if (Player.BaseSkinName != ChampionName)
            {
                return;
            }
            Q = new Spell(SpellSlot.Q, 700);
            W = new Spell(SpellSlot.W, 0);
            E = new Spell(SpellSlot.E, 450);
            R = new Spell(SpellSlot.R, 0);

            SpellList.Add(Q);
            SpellList.Add(W);
            SpellList.Add(E);
            SpellList.Add(R);
            //menu
            Config = new Menu(ChampionName, ChampionName, true);
            //orbwalker
            Config.AddSubMenu(new Menu("Orbwalking", "Orbwalking"));
            Orbwalker = new Orbwalking.Orbwalker(Config.SubMenu("Orbwalking"));
            //ts
            var targetSelectorMenu = new Menu("Target Selector", "Target Selector");

            SimpleTs.AddToMenu(targetSelectorMenu);
            Config.AddSubMenu(targetSelectorMenu);

            //combo menu

            Config.AddSubMenu(new Menu("Combo", "Combo"));
            Config.SubMenu("Combo").AddItem(new MenuItem("useQ", "Use Q").SetValue(true));
            Config.SubMenu("Combo").AddItem(new MenuItem("useW", "Use W").SetValue(true));
            Config.SubMenu("Combo").AddItem(new MenuItem("useE", "Use E").SetValue(true));
            Config.SubMenu("Combo").AddItem(new MenuItem("useR", "Use R").SetValue(true));
            Config.SubMenu("Combo").AddItem(new MenuItem("combo", "Combo").SetValue(new KeyBind(32, KeyBindType.Press)));

            //Extras

            //Config.AddSubMenu(new Menu("Extras", "Extras"));
            //Config.SubMenu("Extras").AddItem(new MenuItem("escape", "Ward Jump With Q").SetValue(new KeyBind("Z".ToCharArray()[0], KeyBindType.Press))); //needs to be done.

            //drawing
            Config.SubMenu("Drawings").AddItem(new MenuItem("QRange", "Q Range").SetValue(new Circle(true, Color.FromArgb(150, Color.DodgerBlue))));
            Config.SubMenu("Drawings").AddItem(new MenuItem("ERange", "E Range").SetValue(new Circle(true, Color.FromArgb(150, Color.Azure))));
        }
コード例 #7
0
ファイル: Form1.cs プロジェクト: ShenYhan/ShadowWinform
        /// <summary>
        /// 初始化速度曲线
        /// </summary>
        private void CreateVelocityChart()
        {
            //Create new _chartTemp

            _chartVelocity = new LightningChartUltimate();
            //Disable rendering, strongly recommended before updating chart properties
            _chartVelocity.BeginUpdate();

            //Reduce memory usage and increase performance. Destroys out-scrolled data.
            _chartVelocity.ViewXY.DropOldSeriesData = true;

            _chartVelocity.Parent      = lightningChartUltimate3;
            _chartVelocity.Name        = "Si prediction";
            _chartVelocity.Title.Text  = "铁水实时流速曲线";
            _chartVelocity.Title.Color = PublicColor.FromArgb(255, Color.Yellow);
            _chartVelocity.Title.Font  = new Font("黑体", 10, FontStyle.Bold);
            _chartVelocity.Dock        = DockStyle.Fill;

            // Setup custom style.
            //ExampleUtils.SetStandardFlatStyle(_chartSi);
            _chartVelocity.Background.Color        = PublicColor.FromArgb(255, Color.Gray);
            _chartVelocity.Background.GradientFill = GradientFill.Solid;
            //Configure x-axis
            AxisX xAxis = _chartVelocity.ViewXY.XAxes[0];

            xAxis.ValueType        = AxisValueType.DateTime;
            xAxis.Title.Text       = "Time";
            xAxis.AutoFormatLabels = false;
            //xAxis.LabelsTimeFormat = "dd/MM/yyyy\nHH:mm.ss";
            xAxis.LabelsTimeFormat = "HH:mm.ss";
            xAxis.LabelsAngle      = 0;
            xAxis.ScrollMode       = XAxisScrollMode.Scrolling;
            xAxis.LabelsFont       = new Font("黑体", 6);
            xAxis.LabelsColor      = PublicColor.FromArgb(255, Color.Yellow);
            xAxis.Visible          = false;
            xAxis.Title.Visible    = false;

            //Convert DateTime values to axis values
            DateTime now  = DateTime.Now;
            double   minX = xAxis.DateTimeToAxisValue(now);
            double   maxX = xAxis.DateTimeToAxisValue(now) + 200;

            xAxis.SetRange(minX, maxX);

            //Configure y-axis
            AxisY yAxis = _chartVelocity.ViewXY.YAxes[0];

            yAxis.Title.Text = "Si Predition";
            yAxis.SetRange(4.5, 8);
            yAxis.LabelsFont    = new Font("黑体", 6);
            yAxis.LabelsColor   = PublicColor.FromArgb(255, Color.Yellow);
            yAxis.Title.Visible = false;

            //Configure and add series to the chart
            PointLineSeries series = new PointLineSeries(_chartVelocity.ViewXY, xAxis, yAxis);

            series.LineStyle.Color  = Color.Yellow;
            series.MouseInteraction = false;
            _chartVelocity.ViewXY.PointLineSeries.Add(series);

            //Don't show legendbox
            _chartVelocity.ViewXY.LegendBoxes[0].Visible = false;

            //Allow chart rendering
            _chartVelocity.EndUpdate();
        }
コード例 #8
0
ファイル: CommonBuffManager.cs プロジェクト: wade1990/PortAIO
        void InitPassiveBuffs()
        {
            #region Teleport
            PassiveBuffs.Add(
                new PassiveBuffs
            {
                ChampionName = "Teleport",
                BuffName     = "Teleport",
                Color        = Color.Bisque
            });
            #endregion Zhonya

            #region Zhonya
            PassiveBuffs.Add(
                new PassiveBuffs
            {
                ChampionName = "Zhonya",
                BuffName     = "Zhonyas Ring",
                Color        = Color.Bisque
            });
            #endregion Zhonya

            #region Aatrox
            PassiveBuffs.Add(
                new PassiveBuffs
            {
                ChampionName = "Aatrox",
                BuffName     = "AatroxWONHLifeBuff",
                Color        = Color.FromArgb(85, 4, 144)
            });

            PassiveBuffs.Add(
                new PassiveBuffs
            {
                ChampionName = "Aatrox",
                BuffName     = "AatroxPassiveActivate",
                Color        = Color.FromArgb(85, 4, 144)
            });
            #endregion Aatrox

            #region Anivia
            PassiveBuffs.Add(
                new PassiveBuffs
            {
                ChampionName = "Anivia Passive",
                BuffName     = "Rebirth",
                Color        = Color.FromArgb(85, 4, 144)
            });

            PassiveBuffs.Add(
                new PassiveBuffs
            {
                ChampionName = "Anivia",
                BuffName     = "RebirthCooldown",
                Color        = Color.FromArgb(85, 4, 144)
            });
            #endregion Anivia

            #region Volibear

            PassiveBuffs.Add(
                new PassiveBuffs
            {
                ChampionName = "Volibear",
                BuffName     = "VolibearPassiveCD",
                Color        = Color.Red
            });
            #endregion Volibear

            #region Zac
            PassiveBuffs.Add(
                new PassiveBuffs
            {
                ChampionName = "Zac",
                BuffName     = "ZacRebirthCooldown",
                Color        = Color.FromArgb(85, 4, 144)
            });

            PassiveBuffs.Add(
                new PassiveBuffs
            {
                ChampionName = "Zac",
                BuffName     = "zacrebirthstart",
                Color        = Color.FromArgb(85, 4, 144)
            });
            #endregion Anivia
        }
コード例 #9
0
 private Color GenerateRandomColor()
 {
     return(Color.FromArgb(_rand.Next(256), _rand.Next(256), _rand.Next(256)));
 }
コード例 #10
0
        public CONExplorer(Color ButtonBackColor, Color ButtonTextColor, bool runningshortcut = false)
        {
            CheckForIllegalCrossThreadCalls = true;
            InitializeComponent();
            mMenuBackground            = contextMenuStrip1.BackColor;
            contextMenuStrip1.Renderer = new DarkRenderer();

            picContent.AllowDrop = true;
            picPackage.AllowDrop = true;
            btnDTA.AllowDrop     = true;
            btnMIDI.AllowDrop    = true;
            btnMOGG.AllowDrop    = true;
            btnPNG.AllowDrop     = true;

            Tools             = new NemoTools();
            Parser            = new DTAParser();
            isRunningShortcut = runningshortcut;

            var formButtons = new List <Button> {
                btnExtract, btnSave, btnVisualize
            };

            foreach (var button in formButtons)
            {
                button.BackColor = ButtonBackColor;
                button.ForeColor = ButtonTextColor;
                button.FlatAppearance.MouseOverBackColor = button.BackColor == Color.Transparent ? Color.FromArgb(127, Color.AliceBlue.R, Color.AliceBlue.G, Color.AliceBlue.B) : Tools.LightenColor(button.BackColor);
            }

            toolTip1.SetToolTip(picContent, "Click here to select the Content Image (visible in here)");
            toolTip1.SetToolTip(picPackage, "Click here to select the Package Image (visible in the Xbox dashboard)");
            toolTip1.SetToolTip(radioCON, "Click to save as CON when rebuilding");
            toolTip1.SetToolTip(radioLIVE, "Click to save as LIVE when rebuilding");
            toolTip1.SetToolTip(btnExtract, "Click to extract the whole CON file");
            toolTip1.SetToolTip(btnSave, "Click to sign and rebuild CON file");
            toolTip1.SetToolTip(txtTitle, "Package Title (optional)");
            toolTip1.SetToolTip(txtDescription, "Package Description (optional)");
            toolTip1.SetToolTip(btnVisualize, "Click to open in Visualizer");
        }
コード例 #11
0
ファイル: CommonBuffManager.cs プロジェクト: wade1990/PortAIO
        private void DrawingOnOnDraw(EventArgs args)
        {
            if (!Modes.ModeDraw.MenuLocal.Item("Draw.Enable").GetValue <bool>())
            {
                return;
            }

            foreach (var hero in HeroManager.AllHeroes)
            {
                var passiveBuffs = (from b in hero.Buffs join b1 in PassiveBuffs on b.DisplayName equals b1.BuffName select new { b, b1 }).Distinct();
                foreach (var buffName in passiveBuffs)
                {
                    for (int i = 0; i < passiveBuffs.Count(); i++)
                    {
                        if (buffName.b.EndTime >= Game.Time)
                        {
                            CommonGeometry.DrawBox(new Vector2(hero.HPBarPosition.X + 10, (i * 8) + hero.HPBarPosition.Y + 32), 130, 6, Color.FromArgb(100, 255, 200, 37), 1, Color.Black);

                            var buffTime = buffName.b.EndTime - buffName.b.StartTime;
                            CommonGeometry.DrawBox(new Vector2(hero.HPBarPosition.X + 11, (i * 8) + hero.HPBarPosition.Y + 33), (130 / buffTime) * (buffName.b.EndTime - Game.Time), 4, buffName.b1.Color, 1, buffName.b1.Color);

                            TimeSpan timeSpan = TimeSpan.FromSeconds(buffName.b.EndTime - Game.Time);
                            var      timer    = $"{timeSpan.Minutes:D2}:{timeSpan.Seconds:D2}";
                            CommonGeometry.DrawText(CommonGeometry.TextPassive, timer, hero.HPBarPosition.X + 142, (i * 8) + hero.HPBarPosition.Y + 29, SharpDX.Color.Wheat);
                        }
                    }
                }

                var jungleBuffs = (from b in hero.Buffs join b1 in JungleBuffs on b.DisplayName equals b1.BuffName select new { b, b1 }).Distinct();
                foreach (var buffName in jungleBuffs.ToList())
                {
                    var circle1 = new CommonGeometry.Circle2(new Vector2(hero.Position.X + 3, hero.Position.Y - 3), 140 + (buffName.b1.Number * 20), Game.Time - buffName.b.StartTime, buffName.b.EndTime - buffName.b.StartTime).ToPolygon();
                    circle1.Draw(Color.Black, 3);

                    var circle = new CommonGeometry.Circle2(hero.Position.To2D(), 140 + (buffName.b1.Number * 20), Game.Time - buffName.b.StartTime, buffName.b.EndTime - buffName.b.StartTime).ToPolygon();
                    circle.Draw(buffName.b1.Color, 3);
                }
            }
        }
コード例 #12
0
        public void Init()
        {
            MenuLocal = new Menu("Drawings", "Drawings");
            {
                MenuLocal.AddItem(new MenuItem("Draw.Enable", "Enable/Disable Drawings:").SetValue(true)).SetFontStyle(FontStyle.Bold, SharpDX.Color.GreenYellow);
                MenuLocal.AddItem(new MenuItem("DrawPc.Mode", "Adjust settings to your own computer:").SetValue(new StringList(new[] { "New Computer", "Old Computer" }, 0)).SetFontStyle(FontStyle.Regular, SharpDX.Color.Coral)).ValueChanged +=
                    (sender, args) =>
                {
                    InitRefreshMenuItems();
                };

                SubMenuManaBarIndicator = new Menu("Mana Bar Combo Indicator", "ManaBarIndicator");
                {
                    for (int i = 0; i < 2; i++)
                    {
                        SubMenuManaBarIndicator.AddItem(new MenuItem(pcMode[i] + "DrawManaBar.Q", "Q:").SetValue(true).SetFontStyle(FontStyle.Regular, Q.MenuColor()));
                        SubMenuManaBarIndicator.AddItem(new MenuItem(pcMode[i] + "DrawManaBar.W", "W:").SetValue(true).SetFontStyle(FontStyle.Regular, W.MenuColor()));
                        SubMenuManaBarIndicator.AddItem(new MenuItem(pcMode[i] + "DrawManaBar.E", "E:").SetValue(true).SetFontStyle(FontStyle.Regular, E.MenuColor()));
                    }
                    MenuLocal.AddSubMenu(SubMenuManaBarIndicator);
                }


                SubMenuSpells = new Menu("Spell Ranges", "DrawSpellRanges");
                {
                    for (int i = 0; i < 2; i++)
                    {
                        SubMenuSpells.AddItem(new MenuItem(pcMode[i] + "Draw.Q", "Q:").SetValue(new Circle(false, Color.FromArgb(255, 255, 255, 255))).SetFontStyle(FontStyle.Regular, Q.MenuColor()));
                        SubMenuSpells.AddItem(new MenuItem(pcMode[i] + "Draw.W", "W:").SetValue(new Circle(false, Color.FromArgb(255, 255, 255, 255))).SetFontStyle(FontStyle.Regular, W.MenuColor()));
                        SubMenuSpells.AddItem(new MenuItem(pcMode[i] + "Draw.E", "E:").SetValue(new Circle(false, Color.FromArgb(255, 255, 255, 255))).SetFontStyle(FontStyle.Regular, E.MenuColor()));
                        SubMenuSpells.AddItem(new MenuItem(pcMode[i] + "Draw.R", "R:").SetValue(new Circle(false, Color.FromArgb(255, 255, 255, 255))).SetFontStyle(FontStyle.Regular, R.MenuColor()));
                    }
                    MenuLocal.AddSubMenu(SubMenuSpells);
                }

                SubMenuBuffs = new Menu("Buff Times", "DrawBuffTimes");
                {
                    for (int i = 0; i < 2; i++)
                    {
                        SubMenuBuffs.AddItem(new MenuItem(pcMode[i] + "DrawBuffs", "Show Red/Blue/Baron Time Circle").SetValue(true));
                    }
                    MenuLocal.AddSubMenu(SubMenuBuffs);
                }

                SubMenuTimers = new Menu("W-R Objects", "DrawSpellTimes");
                {
                    for (int i = 0; i < 2; i++)
                    {
                        SubMenuTimers.AddItem(new MenuItem(pcMode[i] + "Draw.W.BuffTime", "W: Show Time Circle").SetValue(new StringList(new[] { "Off", "On" }, 1)).SetFontStyle(FontStyle.Regular, R.MenuColor()));
                        SubMenuTimers.AddItem(new MenuItem(pcMode[i] + "Draw.R.BuffTime", "R: Show Time Circle").SetValue(new StringList(new[] { "Off", "On" }, 1)).SetFontStyle(FontStyle.Regular, E.MenuColor()));
                    }
                    MenuLocal.AddSubMenu(SubMenuTimers);
                }

                for (int i = 0; i < 2; i++)
                {
                    MenuLocal.AddItem(new MenuItem(pcMode[i] + "DrawKillableEnemy", "Killable Enemy Notification").SetValue(true));
                    MenuLocal.AddItem(new MenuItem(pcMode[i] + "DrawKillableEnemyMini", "Killable Enemy [Mini Map]").SetValue(new Circle(true, Color.GreenYellow)));
                }

                for (int i = 0; i < 2; i++)
                {
                    MenuLocal.AddItem(new MenuItem(pcMode[i] + "Draw.MinionLastHit", "Draw Minion Last Hit").SetValue(new StringList(new [] { "Off", "Auto Attack", "Q Damage" }, 2)));
                }


                for (int i = 0; i < 2; i++)
                {
                    var dmgAfterComboItem = new MenuItem(pcMode[i] + "DrawDamageAfterCombo", "Combo Damage").SetValue(true);
                    {
                        MenuLocal.AddItem(dmgAfterComboItem);

                        //LeagueSharp.Common.Utility.HpBarDamageIndicator.DamageToUnit = Common.CommonMath.GetComboDamage;
                        LeagueSharp.Common.Utility.HpBarDamageIndicator.DamageToUnit = Modes.ModeCombo.GetComboDamage;
                        LeagueSharp.Common.Utility.HpBarDamageIndicator.Enabled      = dmgAfterComboItem.GetValue <bool>();
                        dmgAfterComboItem.ValueChanged += delegate(object sender, OnValueChangeEventArgs eventArgs)
                        {
                            LeagueSharp.Common.Utility.HpBarDamageIndicator.Enabled = eventArgs.GetNewValue <bool>();
                        };
                    }
                }

                CommonManaBar.Init(MenuLocal);
            }
            ModeConfig.MenuConfig.AddSubMenu(MenuLocal);
            InitRefreshMenuItems();


            Game.OnUpdate += GameOnOnUpdate;

            Drawing.OnDraw     += Drawing_OnDraw;
            Drawing.OnEndScene += DrawingOnOnEndScene;
        }
コード例 #13
0
        private static void Drawing_OnDraw(EventArgs args)
        {
            if (!MenuLocal.Item("Draw.Enable").GetValue <bool>())
            {
                return;
            }

            if (MenuLocal.Item(GetPcModeStringValue + "DrawBuffs").GetValue <bool>())
            {
                var passiveBuffs =
                    (from b in ObjectManager.Player.Buffs
                     join b1 in CommonBuffManager.BuffDatabase on b.Name equals b1.BuffName
                     select new { b, b1 }).Distinct();

                var i = 0;
                foreach (var buffName in passiveBuffs)
                {
                    if (buffName.b.EndTime >= Game.Time)
                    {
                        CommonGeometry.DrawBox(
                            new Vector2(ObjectManager.Player.HPBarPosition.X + 10,
                                        (i * 8) + ObjectManager.Player.HPBarPosition.Y + 32), 130, 6,
                            Color.FromArgb(100, 255, 200, 37), 1, Color.Black);

                        var buffTime = buffName.b.EndTime - buffName.b.StartTime;
                        CommonGeometry.DrawBox(
                            new Vector2(ObjectManager.Player.HPBarPosition.X + 11,
                                        (i * 8) + ObjectManager.Player.HPBarPosition.Y + 33),
                            (130 / buffTime) * (buffName.b.EndTime - Game.Time), 4, buffName.b1.Color, 1, buffName.b1.Color);

                        TimeSpan timeSpan = TimeSpan.FromSeconds(buffName.b.EndTime - Game.Time);
                        var      timer    = $"{timeSpan.Minutes:D2}:{timeSpan.Seconds:D2}";
                        CommonGeometry.DrawText(CommonGeometry.TextPassive, timer,
                                                ObjectManager.Player.HPBarPosition.X + 142,
                                                (i * 8) + ObjectManager.Player.HPBarPosition.Y + 29,
                                                SharpDX.Color.Wheat);
                        CommonGeometry.TextPassive.DrawTextLeft(buffName.b1.Caption,
                                                                (int)ObjectManager.Player.HPBarPosition.X + 8,
                                                                (int)((i * 8) + ObjectManager.Player.HPBarPosition.Y + 35), SharpDX.Color.Wheat);
                    }
                    i += 1;
                }
            }

            DrawSpells();
            DrawMinionLastHit();
            //KillableEnemy();
            DrawBuffs();

            //Render.Circle.DrawCircle(ObjectManager.Player.Position, W.Range, System.Drawing.Color.Red);

            return;

            var t = TargetSelector.GetTarget(W.Range * 3, TargetSelector.DamageType.Magical);

            if (t == null)
            {
                return;
            }

            if (t.IsValidTarget(W.Range))
            {
                return;
            }


            List <Vector2> xList = new List <Vector2>();

            var nLocation = ObjectManager.Player.Position.To2D() + Vector2.Normalize(t.Position.To2D() - ObjectManager.Player.Position.To2D()) * W.Range;


            //if (CommonGeometry.IsWallBetween(nEvadePoint.To3D(), location.To3D()))
            //{
            //    Chat.Print("Wall");
            //}
            //else
            //{
            //    Chat.Print("Not Wall");
            //}



            Vector2 wCastPosition = nLocation;

            //Render.Circle.DrawCircle(wCastPosition.To3D(), 105f, System.Drawing.Color.Red);


            if (!wCastPosition.IsWall())
            {
                xList.Add(wCastPosition);
            }

            if (wCastPosition.IsWall())
            {
                for (int j = 20; j < 80; j += 20)
                {
                    Vector2 wcPositive = ObjectManager.Player.Position.To2D() + Vector2.Normalize(t.Position.To2D() - ObjectManager.Player.Position.To2D()).Rotated(j * (float)Math.PI / 180) * W.Range;
                    if (!wcPositive.IsWall())
                    {
                        xList.Add(wcPositive);
                    }

                    Vector2 wcNegative = ObjectManager.Player.Position.To2D() + Vector2.Normalize(t.Position.To2D() - ObjectManager.Player.Position.To2D()).Rotated(-j * (float)Math.PI / 180) * W.Range;
                    if (!wcNegative.IsWall())
                    {
                        xList.Add(wcNegative);
                    }
                }

                float xDiff = ObjectManager.Player.Position.X - t.Position.X;
                float yDiff = ObjectManager.Player.Position.Y - t.Position.Y;
                int   angle = (int)(Math.Atan2(yDiff, xDiff) * 180.0 / Math.PI);
            }

            //foreach (var aa in xList)
            //{
            //    Render.Circle.DrawCircle(aa.To3D2(), 105f, System.Drawing.Color.White);
            //}
            var nJumpPoint = xList.OrderBy(al => al.Distance(t.Position)).First();

            var color = System.Drawing.Color.DarkRed;
            var width = 4;

            var startpos = ObjectManager.Player.Position;
            var endpos   = nJumpPoint.To3D();

            if (startpos.Distance(endpos) > 100)
            {
                var endpos1 = nJumpPoint.To3D() + (startpos - endpos).To2D().Normalized().Rotated(25 * (float)Math.PI / 180).To3D() * 75;
                var endpos2 = nJumpPoint.To3D() + (startpos - endpos).To2D().Normalized().Rotated(-25 * (float)Math.PI / 180).To3D() * 75;

                var x1 = new LeagueSharp.Common.Geometry.Polygon.Line(startpos, endpos);
                x1.Draw(color, width - 2);
                var y1 = new LeagueSharp.Common.Geometry.Polygon.Line(endpos, endpos1);
                y1.Draw(color, width - 2);
                var z1 = new LeagueSharp.Common.Geometry.Polygon.Line(endpos, endpos2);
                z1.Draw(color, width - 2);

                Geometry.Polygon.Circle x2 = new LeagueSharp.Common.Geometry.Polygon.Circle(endpos, W.Width / 2);

                if (CommonGeometry.IsWallBetween(ObjectManager.Player.Position, endpos))
                {
                    x2.Draw(Color.Red, width - 2);
                }
                else
                {
                    x2.Draw(Color.Wheat, width - 2);
                }
            }

            if (!t.IsValidTarget(W.Range + Q.Range - 60))
            {
                return;
            }

            if (t.IsValidTarget(W.Range))
            {
                return;
            }

            var canJump = false;

            if (Modes.ModeCombo.ComboMode == ComboMode.Mode2xQ)
            {
                if ((t.Health < ModeCombo.GetComboDamage(t) - W.GetDamage(t) && Q.IsReady() && R.IsReady()) || (t.Health < Q.GetDamage(t) && Q.IsReady()))
                {
                    canJump = true;
                }
            }

            var nPoint = nJumpPoint.Extend(ObjectManager.Player.Position.To2D(), +ObjectManager.Player.BoundingRadius * 3);

            Render.Circle.DrawCircle(nPoint.To3D(), 50f, Color.GreenYellow);

            if (CommonGeometry.IsWallBetween(nPoint.To3D(), nJumpPoint.To3D()))
            {
                canJump = false;
            }

            if (canJump && W.IsReady() && !W.StillJumped())
            {
                if (Modes.ModeConfig.Orbwalker.ActiveMode == Orbwalking.OrbwalkingMode.Combo)
                {
                    W.Cast(nJumpPoint);
                }
                return;
            }
        }
コード例 #14
0
        private void Plant_binary_OnClick(object sender, RoutedEventArgs e)
        {
            const int n = 256;
            var       plantPixelCount = new int[n];

            for (var i = 0; i < _bitmapLicence.Width; i++)
            {
                for (var j = 0; j < _bitmapLicence.Height; j++)
                {
                    var x = _bitmapLicence.GetPixel(i, j).R;
                    plantPixelCount[x]++;
                }
            }

            var totalValue = plantPixelCount.Select((t, i) => i * t).Sum();

            //MessageBox.Show("totalValue is :" + totalValue+Environment.NewLine);

            PositioningLicence.WriteToFile("totalValue is :" + totalValue + Environment.NewLine);
            double sum0    = 0;
            var    w0      = 0;
            double maximun = 0;
            var    total   = _bitmapLicence.Width * _bitmapLicence.Height;
            byte   level   = 0;

            for (byte i = 0; i < plantPixelCount.Length; i++)
            {
                w0 += plantPixelCount[i];
                if (w0 == 0)
                {
                    continue;
                }
                var w1 = total - w0;
                if (w1 == 0)
                {
                    break;
                }
                sum0 += i * plantPixelCount[i];
                var m0  = sum0 / w0;
                var m1  = (totalValue - sum0) / w1;
                var icv = w0 * w1 * (m0 - m1) * (m0 - m1);
                if (!(icv >= maximun))
                {
                    continue;
                }
                level   = i;
                maximun = icv;
                //PositioningLicence.WriteToFile(m0+" "+m1+" "+icv+" "+Environment.NewLine);
            }

            //MessageBox.Show(@"level is: "+level);
            PositioningLicence.WriteToFile(@"level is: " + level + Environment.NewLine);
            for (var i = 0; i < _bitmapLicence.Width; i++)
            {
                for (var j = 0; j < _bitmapLicence.Height; j++)
                {
                    int x     = _bitmapLicence.GetPixel(i, j).R;
                    var value = x > level ? 255 : 0;
                    _bitmapLicence.SetPixel(i, j, Color.FromArgb(value, value, value));
                }
            }
            t_show_pic(_bitmapLicence);

            /*var cnt = 0;
             * var str = "";
             * foreach (var b in plantPixelCount)
             * {
             *  Console.Write(b+@" ");
             *  str += b + " ";
             *  if (cnt++ % 20 ==0 &&cnt-1!=0)
             *      str += Environment.NewLine;
             *
             * }
             * PositioningLicence.WriteToFile(str);*/
        }
コード例 #15
0
        public override Brush GetBrush(SvgVisualElement renderingElement, ISvgRenderer renderer, float opacity, bool forStroke = false)
        {
            LoadStops(renderingElement);

            try
            {
                if (this.GradientUnits == SvgCoordinateUnits.ObjectBoundingBox)
                {
                    renderer.SetBoundable(renderingElement);
                }

                // Calculate the path and transform it appropriately
                var center = new PointF(NormalizeUnit(CenterX).ToDeviceValue(renderer, UnitRenderingType.Horizontal, this),
                                        NormalizeUnit(CenterY).ToDeviceValue(renderer, UnitRenderingType.Vertical, this));
                var focals = new PointF[] { new PointF(NormalizeUnit(FocalX).ToDeviceValue(renderer, UnitRenderingType.Horizontal, this),
                                                       NormalizeUnit(FocalY).ToDeviceValue(renderer, UnitRenderingType.Vertical, this)) };
                var specifiedRadius = NormalizeUnit(Radius).ToDeviceValue(renderer, UnitRenderingType.Other, this);
                var path            = new GraphicsPath();
                path.AddEllipse(
                    center.X - specifiedRadius, center.Y - specifiedRadius,
                    specifiedRadius * 2, specifiedRadius * 2
                    );

                using (var transform = EffectiveGradientTransform)
                {
                    var bounds = renderer.GetBoundable().Bounds;
                    transform.Translate(bounds.X, bounds.Y, MatrixOrder.Prepend);
                    if (this.GradientUnits == SvgCoordinateUnits.ObjectBoundingBox)
                    {
                        transform.Scale(bounds.Width, bounds.Height, MatrixOrder.Prepend);
                    }
                    path.Transform(transform);
                    transform.TransformPoints(focals);
                }


                // Calculate any required scaling
                var scaleBounds = RectangleF.Inflate(renderingElement.Bounds, renderingElement.StrokeWidth, renderingElement.StrokeWidth);
                var scale       = CalcScale(scaleBounds, path);

                // Not ideal, but this makes sure that the rest of the shape gets properly filled or drawn
                if (scale > 1.0f && SpreadMethod == SvgGradientSpreadMethod.Pad)
                {
                    var stop        = Stops.Last();
                    var origColor   = stop.GetColor(renderingElement);
                    var renderColor = SystemColor.FromArgb((int)Math.Round(opacity * stop.Opacity * 255), origColor);

                    var origClip = renderer.GetClip();
                    try
                    {
                        using (var solidBrush = new SolidBrush(renderColor))
                        {
                            var newClip = origClip.Clone();
                            newClip.Exclude(path);
                            renderer.SetClip(newClip);

                            var renderPath = (GraphicsPath)renderingElement.Path(renderer);
                            if (forStroke)
                            {
                                using (var pen = new Pen(solidBrush, renderingElement.StrokeWidth.ToDeviceValue(renderer, UnitRenderingType.Other, renderingElement)))
                                {
                                    renderer.DrawPath(pen, renderPath);
                                }
                            }
                            else
                            {
                                renderer.FillPath(solidBrush, renderPath);
                            }
                        }
                    }
                    finally
                    {
                        renderer.SetClip(origClip);
                    }
                }

                // Get the color blend and any tweak to the scaling
                var blend = CalculateColorBlend(renderer, opacity, scale, out scale);

                // Transform the path based on the scaling
                var gradBounds  = path.GetBounds();
                var transCenter = new PointF(gradBounds.Left + gradBounds.Width / 2, gradBounds.Top + gradBounds.Height / 2);
                using (var scaleMat = new Matrix())
                {
                    scaleMat.Translate(-1 * transCenter.X, -1 * transCenter.Y, MatrixOrder.Append);
                    scaleMat.Scale(scale, scale, MatrixOrder.Append);
                    scaleMat.Translate(transCenter.X, transCenter.Y, MatrixOrder.Append);
                    path.Transform(scaleMat);
                }

                // calculate the brush
                var brush = new PathGradientBrush(path);
                brush.CenterPoint         = focals[0];
                brush.InterpolationColors = blend;

                return(brush);
            }
            finally
            {
                if (this.GradientUnits == SvgCoordinateUnits.ObjectBoundingBox)
                {
                    renderer.PopBoundable();
                }
            }
        }
コード例 #16
0
ファイル: ColorSlider.cs プロジェクト: elosupport/EB-Addons
 public Color GetSystemColor()
 {
     return(Color.FromArgb(GetValue(ColorBytes.Alpha), GetValue(ColorBytes.Red), GetValue(ColorBytes.Green), GetValue(ColorBytes.Blue)));
 }
コード例 #17
0
ファイル: Extensions.cs プロジェクト: Pownylover/PxCT
        public static Color ToGrayScale(this Color color)
        {
            var gamma = (int)((color.R * 0.2126) + (color.G * 0.7152) + (color.B * 0.0722));

            return(Color.FromArgb(gamma, gamma, gamma));
        }
コード例 #18
0
ファイル: Program.cs プロジェクト: xujiao1987/LeagueSharp
        private static void Game_OnGameLoad(EventArgs args)
        {
            Player = ObjectManager.Player;
            if (Player.BaseSkinName != ChampionName)
            {
                return;
            }
            Game.PrintChat(WelcomeMsg);

            //Create the spells
            #region
            Q = new Spell(SpellSlot.Q, 500f);
            W = new Spell(SpellSlot.W, 0);
            E = new Spell(SpellSlot.E, 225f);
            R = new Spell(SpellSlot.R, 650f);
            R.SetSkillshot(0.25f, 250f, float.MaxValue, false, SkillshotType.SkillshotCircle);

            SpellList.Add(Q);
            SpellList.Add(W);
            SpellList.Add(E);
            SpellList.Add(R);

            IgniteSlot = Player.GetSpellSlot("SummonerDot");
            #endregion

            //Create the items
            #region
            DFG         = new Items.Item(3128, 750f);
            BotRK       = new Items.Item(3153, 450f);
            HexGunBlade = new Items.Item(3146, 700f);
            QuickS      = new Items.Item(3140, 0f);
            Cutlass     = new Items.Item(3144, 450f);
            Scimitar    = new Items.Item(3139, 0f);
            #endregion

            //Create the menu
            #region
            Menu = new Menu(ChampionName, ChampionName, true);

            var targetSelectorMenu = new Menu("目标选择", "Target Selector");
            SimpleTs.AddToMenu(targetSelectorMenu);
            Menu.AddSubMenu(targetSelectorMenu);

            Menu.AddSubMenu(new Menu("走砍", "Orbwalker Menu"));
            Orbwalker = new Orbwalking.Orbwalker(Menu.SubMenu("Orbwalker Menu"));
            #endregion

            //Add Combo SubMenu
            #region
            Menu.AddSubMenu(new Menu("连招", "Combo"));
            Menu.SubMenu("Combo").AddItem(new MenuItem("UseQCombo", "使用 Q").SetValue(true));
            //Menu.SubMenu("Combo").AddItem(new MenuItem("UseWCombo", "使用 W").SetValue(true));
            Menu.SubMenu("Combo").AddItem(new MenuItem("UseECombo", "使用 E").SetValue(true));
            Menu.SubMenu("Combo").AddItem(new MenuItem("UseRCombo", "使用 R").SetValue(true));
            Menu.SubMenu("Combo").AddItem(new MenuItem("UseItemsCombo", "使用选项").SetValue(true));
            Menu.SubMenu("Combo").AddItem(new MenuItem("UseIgniteCombo", "使用点燃").SetValue(true));
            Menu.SubMenu("Combo").AddItem(new MenuItem("ComboActive", "连招").SetValue(new KeyBind(32, KeyBindType.Press)));
            #endregion

            //Add LaneClear SubMenu
            #region
            Menu.AddSubMenu(new Menu("清线", "LaneClear"));
            Menu.SubMenu("LaneClear").AddItem(new MenuItem("UseQLaneClear", "使用 Q").SetValue(true));
            Menu.SubMenu("LaneClear").AddItem(new MenuItem("UseELaneClear", "使用 E").SetValue(false));
            Menu.SubMenu("LaneClear").AddItem(new MenuItem("LaneClearActive", "清线").SetValue(new KeyBind("V".ToArray()[0], KeyBindType.Press)));
            #endregion

            //Add JungleFarm SubMenu
            #region
            Menu.AddSubMenu(new Menu("清野", "JungleFarm"));
            Menu.SubMenu("JungleFarm").AddItem(new MenuItem("UseQJungleFarm", "使用 Q").SetValue(true));
            Menu.SubMenu("JungleFarm").AddItem(new MenuItem("UseEJungleFarm", "使用 E").SetValue(true));
            Menu.SubMenu("JungleFarm").AddItem(new MenuItem("JungleFarmActive", "清野").SetValue(new KeyBind("V".ToArray()[0], KeyBindType.Press)));
            #endregion

            //Add Items SubMenu
            #region
            Menu.AddSubMenu(new Menu("自动物品选项默认即可", "Items"));
            Menu.SubMenu("Items").AddItem(new MenuItem("UseDFGItems", "Use DFG").SetValue(true));
            Menu.SubMenu("Items").AddItem(new MenuItem("UseBotRKItems", "Use BotRK").SetValue(true));
            Menu.SubMenu("Items").AddItem(new MenuItem("UseHexGunBladeItems", "Use Hextech Gunblade").SetValue(true));
            //Menu.SubMenu("Items").AddItem(new MenuItem("UseQuickSItems", "Use Quicksilver Sash").SetValue(true));
            Menu.SubMenu("Items").AddItem(new MenuItem("UseCutlassItems", "Use Bilgewater cutlass").SetValue(true));
            #endregion

            //Add Drawing SubMenu
            #region
            Menu.AddSubMenu(new Menu("技能范围选项", "Drawings"));
            Menu.SubMenu("Drawings").AddItem(new MenuItem("DrawQ", "Q范围").SetValue(new Circle(true, Color.FromArgb(255, 0, 255, 0))));
            Menu.SubMenu("Drawings").AddItem(new MenuItem("DrawE", "E范围").SetValue(new Circle(true, Color.FromArgb(255, 0, 255, 0))));
            Menu.SubMenu("Drawings").AddItem(new MenuItem("DrawR", "R范围").SetValue(new Circle(true, Color.FromArgb(255, 0, 255, 0))));
            #endregion

            //Add Misc SubMenu
            #region
            Menu.AddSubMenu(new Menu("杂项", "Misc"));
            Menu.SubMenu("Misc").AddItem(new MenuItem("UsePackets", "使用封包").SetValue(true));
            Menu.SubMenu("Misc").AddItem(new MenuItem("SmartW", "智能W").SetValue(true));
            Menu.SubMenu("Misc").AddSubMenu(new Menu("Smart Quicksilver Sash", "SQS"));
            Menu.SubMenu("Misc").SubMenu("SQS").AddItem(new MenuItem("ActiveQSS", "Active").SetValue(true));
            Menu.SubMenu("Misc").SubMenu("SQS").AddItem(new MenuItem("Quick%Poison", "On % HP when poisoned").SetValue(new Slider(10, 1, 100)));
            //Menu.SubMenu("SmartQuickS1").AddItem(new MenuItem("Quick%Poison", "On % HP when poisoned").SetValue(10));
            #endregion
            Menu.AddItem(new MenuItem("by Da'ath.", "by Da'ath"));

            //Make visable
            Menu.AddToMainMenu();

            //Events
            Game.OnGameUpdate += Game_OnGameUpdate;
            Drawing.OnDraw    += Drawing_OnDraw;
        }
コード例 #19
0
ファイル: Form1.cs プロジェクト: ShenYhan/ShadowWinform
        /// <summary>
        /// 初始化温度曲线
        /// </summary>
        private void CreateTempChart()
        {
            //Create new _chartTemp
            _chartTemp = new LightningChartUltimate();
            _chartTemp.BeginUpdate();
            _chartTemp.ViewXY.DropOldSeriesData = true;

            _chartTemp.Parent = lightningChartUltimate1;
            _chartTemp.Name   = "出铁口铁水温度曲线";
            //_chartTemp.Title.Font.;
            _chartTemp.Title.Text  = "出铁口铁水温度曲线";
            _chartTemp.Title.Color = PublicColor.FromArgb(255, Color.Yellow);
            _chartTemp.Title.Font  = new Font("黑体", 10, FontStyle.Bold);
            //_chartTemp.Title.Visible = false;
            _chartTemp.Dock                    = DockStyle.Fill;
            _chartTemp.Background.Color        = PublicColor.FromArgb(255, Color.Gray);
            _chartTemp.Background.GradientFill = GradientFill.Solid;

            AxisX xAxis = _chartTemp.ViewXY.XAxes[0];

            xAxis.ValueType        = AxisValueType.DateTime;
            xAxis.Title.Text       = "Time";
            xAxis.AutoFormatLabels = false;

            //xAxis.LabelsTimeFormat = "dd/MM/yyyy\nHH:mm.ss";
            xAxis.LabelsTimeFormat = "HH:mm.ss";
            xAxis.LabelsAngle      = 0;
            xAxis.ScrollMode       = XAxisScrollMode.Scrolling;
            xAxis.Title.Visible    = false;
            xAxis.Visible          = false;

            //Convert DateTime values to axis values
            DateTime now  = DateTime.Now;
            double   minX = xAxis.DateTimeToAxisValue(now);
            double   maxX = xAxis.DateTimeToAxisValue(now) + 100;

            xAxis.SetRange(minX, maxX);

            //Configure y-axis
            AxisY yAxis = _chartTemp.ViewXY.YAxes[0];

            yAxis.Title.Text    = "Temperature / °C";
            yAxis.Title.Visible = false;
            yAxis.SetRange(1500, 1600);
            yAxis.LabelsFont  = new Font("黑体", 6);
            yAxis.LabelsColor = PublicColor.FromArgb(255, Color.Yellow);

            //Configure and add series to the chart
            PointLineSeries series = new PointLineSeries(_chartTemp.ViewXY, xAxis, yAxis);

            series.LineStyle.Color  = Color.Yellow;
            series.MouseInteraction = false;

            _chartTemp.ViewXY.PointLineSeries.Add(series);

            //Don't show legendbox
            _chartTemp.ViewXY.LegendBoxes[0].Visible = false;

            //Allow chart rendering
            _chartTemp.EndUpdate();
        }
コード例 #20
0
        public override void Drawing_OnDraw(EventArgs args)
        {
            foreach (var enemy in HeroManager.Enemies.Where(enemy => R.IsReady() && enemy.LSIsValidTarget() && R.GetDamage(enemy) > enemy.Health))
            {
                Marksman.Common.CommonGeometry.DrawBox(new Vector2(Drawing.Width * 0.43f, Drawing.Height * 0.80f), 185, 18, Color.FromArgb(242, 255, 236, 6), 1, System.Drawing.Color.Black);
                Marksman.Common.CommonGeometry.DrawText(Marksman.Common.CommonGeometry.Text, "Killable enemy with ultimate: " + enemy.ChampionName, Drawing.Width * 0.435f, Drawing.Height * 0.803f, SharpDX.Color.Black);
            }

            LeagueSharp.Common.Spell[] spellList = { Q, W };
            foreach (var spell in spellList)
            {
                var menuItem = Program.marksmanDrawings["Draw" + spell.Slot].Cast <CheckBox>().CurrentValue;
                if (menuItem)
                {
                    Render.Circle.DrawCircle(ObjectManager.Player.Position, spell.Range, Color.FromArgb(100, 255, 0, 255));
                }
            }

            var drawRMin = Program.combo["DrawRMin"].Cast <CheckBox>().CurrentValue;

            if (drawRMin)
            {
                var minRRange = Program.combo["UseRCMinRange"].Cast <Slider>().CurrentValue;
                Render.Circle.DrawCircle(ObjectManager.Player.Position, minRRange, Color.DarkRed, 2);
            }

            var drawRMax = Program.combo["DrawRMax"].Cast <CheckBox>().CurrentValue;

            if (drawRMax)
            {
                var maxRRange = Program.combo["UseRCMaxRange"].Cast <Slider>().CurrentValue;
                Render.Circle.DrawCircle(ObjectManager.Player.Position, maxRRange, Color.DarkMagenta, 2);
            }
        }
コード例 #21
0
        static void Drawing_OnDraw(EventArgs args)
        {
            if (Player.IsDead || !Player.IsValid)
            {
                return;
            }

            foreach (
                var unit in ObjectManager.Get <Obj_AI_Minion>().Where(x => x.IsValidTarget(900) && x.PassiveRooted()))
            {
                var b = unit.GetBuff("NidaleePassiveMonsterRoot");
                if (b.Caster.IsMe && b.EndTime - Game.Time > 0)
                {
                    var tpos = Drawing.WorldToScreen(unit.Position);
                    Drawing.DrawText(tpos[0], tpos[1], Color.DeepPink,
                                     "ROOTED " + (b.EndTime - Game.Time).ToString("F"));
                }
            }

            if (Root.Item("dti").GetValue <bool>())
            {
                var pos = Drawing.WorldToScreen(Player.Position);

                Drawing.DrawText(pos[0] + 100, pos[1] - 135, Color.White,
                                 "Q: " + KL.SpellTimer["Javelin"].ToString("F"));
            }

            if (Root.Item("dt").GetValue <bool>() && Target != null)
            {
                if (Root.Item("pstyle").GetValue <StringList>().SelectedIndex == 0)
                {
                    Render.Circle.DrawCircle(Target.Position, Target.BoundingRadius, Color.DeepPink, 6);
                }
            }

            if (Root.Item("dp").GetValue <bool>() && !KL.CatForm())
            {
                Render.Circle.DrawCircle(KL.Player.Position, KL.Spells["Javelin"].Range, Color.FromArgb(155, Color.DeepPink), 4);
            }

            if (Root.Item("dz").GetValue <bool>() && KL.CatForm())
            {
                Render.Circle.DrawCircle(KL.Player.Position, KL.Spells["ExPounce"].Range, Color.FromArgb(155, Color.DeepPink), 4);
            }
        }
コード例 #22
0
ファイル: HealthTracker.cs プロジェクト: memsenpai/ElBundle-1
        /// <summary>
        ///     Fired when the scene is completely rendered.
        /// </summary>
        /// <param name="args">The <see cref="EventArgs" /> instance containing the event data.</param>
        private void Drawing_OnEndScene(EventArgs args)
        {
            if (!this.Menu.Item("DrawHealth_").GetValue <bool>() || Drawing.Direct3DDevice.IsDisposed || Font.IsDisposed)
            {
                return;
            }

            float i = 0;

            foreach (var hero in HeroManager.Enemies.Where(x => !x.IsDead))
            {
                var champion = hero.ChampionName;
                if (champion.Length > 12)
                {
                    champion = champion.Remove(7) + "...";
                }

                var championInfo = this.Menu.Item("DrawHealth_percent").IsActive()
                                       ? $"{champion} ({(int)hero.HealthPercent}%)"
                                       : champion;

                if (this.Menu.Item("DrawHealth_ultimate").IsActive())
                {
                    var timeR   = hero.Spellbook.GetSpell(SpellSlot.R).CooldownExpires - Game.Time;
                    var ultText = timeR <= 0
                                      ? "READY"
                                      : (timeR < 10 ? timeR.ToString("N1") : ((int)timeR).ToString()) + "s";

                    if (hero.Spellbook.GetSpell(SpellSlot.R).Level == 0)
                    {
                        ultText = "N/A";
                    }

                    championInfo += $" - R: {ultText}";
                }

                if (this.Menu.Item("Health.Version").GetValue <StringList>().SelectedIndex == 1)
                {
                    const int Height = 25;

                    // Draws the rectangle
                    DrawRect(
                        Drawing.Width - this.HudOffsetRight,
                        this.HudOffsetTop + i,
                        200,
                        Height,
                        1,
                        Color.FromArgb(175, 51, 55, 51));

                    DrawRect(
                        Drawing.Width - this.HudOffsetRight + 2,
                        this.HudOffsetTop + i - -2,
                        hero.HealthPercent <= 0 ? 100 : (int)hero.HealthPercent * 2 - 4,
                        Height - 4,
                        1,
                        hero.HealthPercent < 30 && hero.HealthPercent > 0
                            ? Color.FromArgb(255, 250, 0, 23)
                            : hero.HealthPercent < 50
                                ? Color.FromArgb(255, 230, 169, 14)
                                : Color.FromArgb(255, 2, 157, 10));

                    // Draws the championnames
                    Font.DrawText(
                        null,
                        championInfo,
                        (int)(Drawing.Width - this.HudOffsetRight - Font.MeasureText(null, championInfo).Width / 2f)
                        + 200 / 2,
                        (int)(this.HudOffsetTop + i + 13 - Font.MeasureText(null, championInfo).Height / 2f),
                        new ColorBGRA(255, 255, 255, 175));
                }
                else
                {
                    // Draws the championnames
                    Font.DrawText(
                        null,
                        championInfo,
                        Drawing.Width - this.HudOffsetRight - this.HudOffsetText
                        - Font.MeasureText(null, championInfo).Width,
                        (int)(this.HudOffsetTop + i + 4 - Font.MeasureText(null, championInfo).Height / 2f),
                        hero.HealthPercent > 0 ? new ColorBGRA(255, 255, 255, 255) : new ColorBGRA(244, 8, 8, 255));

                    // Draws the rectangle
                    DrawRect(
                        Drawing.Width - this.HudOffsetRight,
                        this.HudOffsetTop + i,
                        100,
                        this.BarHeight,
                        1,
                        Color.FromArgb(255, 51, 55, 51));

                    // Fils the rectangle
                    DrawRect(
                        Drawing.Width - this.HudOffsetRight,
                        this.HudOffsetTop + i,
                        hero.HealthPercent <= 0 ? 100 : (int)hero.HealthPercent,
                        this.BarHeight,
                        1,
                        hero.HealthPercent < 30 && hero.HealthPercent > 0
                            ? Color.FromArgb(255, 250, 0, 23)
                            : hero.HealthPercent < 50
                                ? Color.FromArgb(255, 230, 169, 14)
                                : Color.FromArgb(255, 2, 157, 10));
                }

                i += 20f
                     + (this.Menu.Item("Health.Version").GetValue <StringList>().SelectedIndex == 1 ? 5 : this.HudSpacing);
            }
        }
コード例 #23
0
        public override CommandFeedback Execute(string[] args)
        {
            string strIP = args[1];

            bmpScreen      = new Bitmap(1920, 1080);
            bmpScreenSmall = new Bitmap(240, 135, PixelFormat.Format24bppRgb);
            Graphics   g      = Graphics.FromImage(bmpScreen);
            Graphics   gSmall = Graphics.FromImage(bmpScreenSmall);
            LockBitmap locker = new LockBitmap(bmpScreenSmall);

            Device device = new Device(strIP);

            AsyncHelpers.RunSync(device.Connect);

            device.SetBrightness(100);

            ColorThief colorThief = new ColorThief();

            Color lastColor      = new Color();
            int   counter        = 0;
            int   lastBrightness = -1;
            int   lastRGB        = -1;

            for (; ;)
            {
                Thread.Sleep(TimeSpan.FromMilliseconds(512));
                //Thread.Sleep(TimeSpan.FromMilliseconds(5000));
                Console.WriteLine($"Tick {counter++}");

                // snapshot display and copy to bitmap
                //g.CopyFromScreen(-1920, 0, 0, 0, new Size(1920, 1080));
                g.CopyFromScreen(0, 0, 0, 0, new Size(1920, 1080));
                // scale bitmap down 8x
                gSmall.DrawImage(bmpScreen, new Rectangle(0, 0, bmpScreenSmall.Width, bmpScreenSmall.Height));
                bmpScreenSmall.Save($"F:\\Nuke\\img{counter}.png");


                // lock bits
                //locker.LockBits();
                //int brightness;
                //Color color = GetDominantColor(locker.Pixels, out brightness);
                //Color color = GetAverageColor(locker.Pixels, out brightness);
                //locker.UnlockBits();

                int brightness = 0;

                QuantizedColor qColor = colorThief.GetColor(bmpScreenSmall);
                Color          color  = Color.FromArgb(qColor.Color.R, qColor.Color.G, qColor.Color.B);

                int red   = color.R;
                int green = color.G;
                int blue  = color.B;
                int num2  = red << 16 | green << 8 | blue;

                if (brightness != lastBrightness)
                {
                    int deltaBright = Math.Abs(brightness - lastBrightness);

                    if (deltaBright > 7)
                    {
                        lastBrightness = brightness;

                        //device.SetBrightness(brightness);
                        Console.WriteLine($"New brightness: {brightness}");
                    }
                }

                if (num2 != lastRGB)
                {
                    lastRGB = num2;

                    int deltaR = Math.Abs(red - lastColor.R);
                    int deltaG = Math.Abs(green - lastColor.G);
                    int deltaB = Math.Abs(blue - lastColor.B);

                    if (deltaR > 25 ||
                        deltaG > 25 ||
                        deltaB > 25)
                    {
                        //if (deltaR > 5 ||
                        //   deltaG > 5 ||
                        //   deltaB > 5) {
                        lastColor = color;
                        // dont change if the delta is too small

                        AsyncHelpers.RunSync(() => {
                            return(device.SetRGBColor(red, green, blue));
                        });
                        Console.WriteLine($"New color: {red}, {green}, {blue}");
                    }
                }
                //string strRepeat = StringUtil.RepeatCharacter('■', peakValueBars);
                //Console.WriteLine($"({peakValueCent}) {strRepeat}");
            }

            device.Disconnect();

            return(CommandFeedback.Success);
        }
コード例 #24
0
        public ActivityViewer()
        {
            InitializeComponent();
            WindowState = WindowState.Maximized;

            Thread UIThr = new Thread(() =>
            {
                int idgb = 0;
                while (true)
                {
                    //  try
                    {
                        Dispatcher.Invoke((() =>
                        {
                            chunkMap = new Bitmap((int)ChunkMap.Width, (int)ChunkMap.Width);
                            chunkMapG = Graphics.FromImage(chunkMap);
                            chunkViewG = Graphics.FromImage(chunkView);

                            ThreadList.Items.Clear();
                            ThreadStateList.Items.Clear();
                            ProcessThreadCollection currentThreads = Process.GetCurrentProcess().Threads;

                            for (int i = 0; i < DataStore.Threads.Count; i++)
                            {
                                try
                                {
                                    Thread thread = DataStore.Threads[i];
                                    ThreadStateList.Items.Add($"{thread.ThreadState}");
                                    ThreadList.Items.Add($"{thread.Name} ({thread.ManagedThreadId})");
                                }
                                catch (NullReferenceException)
                                {
                                    ThreadStateList.Items.Add($"?");
                                    ThreadList.Items.Add($"?");
                                }
                            }
                            ThreadLabel.Content = $"Active threads: {ThreadList.Items.Count} ({currentThreads.Count})";
                        }));
                        if (MainWindow.world.Dimensions[DataStore.Player.DimensionId].Chunks.Count > 1)
                        {
                            List <Chunk> chunks = MainWindow.world.Dimensions[DataStore.Player.DimensionId].Chunks.Values.ToList();
                            Player plr          = DataStore.Player;
                            (int X, int Y)cpos  = Util.PlayerPosToChunkPos(plr.pos),
                            tcpos = TranslateCoordinate(chunkMap, cpos.X, cpos.Y);
                            if (chunks.Count > 2)
                            {
                                for (int i = 0; i < chunks.Count; i++)
                                {
                                    Chunk ch          = chunks[i];
                                    (int X, int Y)pos = TranslateCoordinate(chunkMap, ch.X, ch.Z);
                                    chunkMapG.DrawRectangle(new Pen(Color.FromArgb(255, 0, 128, 0), 1), pos.X, pos.Y, 1, 1);
                                    chunkMapG.DrawRectangle(new Pen(Color.FromArgb(255, 255, 0, 0), 1), tcpos.X, tcpos.Y, 1, 1);
                                }
                                try
                                {
                                    if (MainWindow.world.Dimensions[DataStore.Player.DimensionId].Chunks.ContainsKey(cpos))
                                    {
                                        Chunk cch           = MainWindow.world.Dimensions[DataStore.Player.DimensionId].Chunks[cpos];
                                        List <Block> blocks = cch.Blocks.Values.ToList();
                                        for (int i = 0; i < blocks.Count; i++)
                                        {
                                            Block bl = blocks[i];
                                            chunkViewG.DrawRectangle(new Pen(Color.FromArgb(255, 0, Math.Min(16 * bl.Y, 255), 0), 1), bl.X, bl.Z, 1, 1);
                                        }
                                    }
                                }
                                catch { }
                                //catch { /*MainWindow.world.Dimensions[DataStore.Player.WorldID].Chunks.Add(cpos, */TerrainGen.GetChunk(cpos.X, cpos.Y);/*);*/ throw; }
                            }
                            Dispatcher.Invoke(() => CurrentChunk.Content = $"Current chunk: {cpos.X}/{cpos.Y} ({MainWindow.world.Dimensions[DataStore.Player.DimensionId].Chunks.ContainsKey(cpos)})");
                            Dispatcher.Invoke(() => ChunkMap.Source      = BitmapToImageSource(chunkMap));
                            Dispatcher.Invoke(() => ChunkView.Source     = BitmapToImageSource(chunkView));
                        }
                        Dispatcher.Invoke(() => Title = "MC Clone Activity Viewer | " + idgb++);
                    }
                    //catch (Exception) { throw; }
                    Thread.Sleep(1000);
                }
            });

            new Thread(() => { while (true)
                               {
                                   if (!UIThr.IsAlive)
                                   {
                                       UIThr.Start();
                                   }
                               }
                       }).Start();
        }
コード例 #25
0
ファイル: Program.cs プロジェクト: Ox29A/LeagueSharp-1
        private static void Game_OnGameLoad(EventArgs args)
        {
            if (ObjectManager.Player.ChampionName != "TwistedFate")
            {
                return;
            }
            Player = ObjectManager.Player;
            Q      = new Spell(SpellSlot.Q, 1450);
            Q.SetSkillshot(0.25f, 40f, 1000f, false, SkillshotType.SkillshotLine);

            //Make the menu
            Config = new Menu("Twisted Fate", "TwistedFate", true);

            MenuTools = new Menu("Tools", "Tools");
            Config.AddSubMenu(MenuTools);


            var SowMenu = new Menu("Orbwalking", "Orbwalking");

            SOW = new Orbwalking.Orbwalker(SowMenu);
            MenuTools.AddSubMenu(SowMenu);

            /* Q */
            var q = new Menu("Q - Wildcards", "Q");
            {
                q.AddItem(new MenuItem("AutoQI", "Auto-Q immobile").SetValue(true));
                q.AddItem(new MenuItem("AutoQD", "Auto-Q dashing").SetValue(true));
                q.AddItem(
                    new MenuItem("CastQ", "Cast Q (tap)").SetValue(new KeyBind("U".ToCharArray()[0], KeyBindType.Press)));
                Config.AddSubMenu(q);
            }

            /* W */
            var w = new Menu("W - Pick a card", "W");
            {
                w.AddItem(
                    new MenuItem("SelectYellow", "Select Yellow").SetValue(new KeyBind("W".ToCharArray()[0],
                                                                                       KeyBindType.Press)));
                w.AddItem(
                    new MenuItem("SelectBlue", "Select Blue").SetValue(new KeyBind("E".ToCharArray()[0],
                                                                                   KeyBindType.Press)));
                w.AddItem(
                    new MenuItem("SelectRed", "Select Red").SetValue(new KeyBind("T".ToCharArray()[0], KeyBindType.Press)));
                Config.AddSubMenu(w);
            }

            var menuLane = new Menu("Lane", "Lane");
            {
                menuLane.AddItem(new MenuItem("Lane.BlueCard.MinMana", "Keep up mana > % [0 = Off]").SetValue(new Slider(50, 0, 100)));
                Config.AddSubMenu(menuLane);
            }

            var menuItems = new Menu("Items", "Items");
            {
                menuItems.AddItem(new MenuItem("itemBotrk", "Botrk").SetValue(true));
                menuItems.AddItem(new MenuItem("itemYoumuu", "Youmuu").SetValue(true));
                menuItems.AddItem(
                    new MenuItem("itemMode", "Use items on").SetValue(
                        new StringList(new[] { "No", "Mixed mode", "Combo mode", "Both" }, 2)));
                Config.AddSubMenu(menuItems);
            }

            var r = new Menu("R - Destiny", "R");
            {
                r.AddItem(new MenuItem("AutoY", "Select yellow card after R").SetValue(true));
                Config.AddSubMenu(r);
            }

            var misc = new Menu("Misc", "Misc");
            {
                misc.AddItem(new MenuItem("PingLH", "Ping low health enemies (Only local)").SetValue(true));
                misc.AddItem(new MenuItem("Misc.InstantSelection", "Anti-Cheat: Never select card instantly").SetValue(new KeyBind("G".ToCharArray()[0], KeyBindType.Toggle))).SetFontStyle(FontStyle.Regular, SharpDX.Color.Aqua).Permashow();
                misc.AddItem(new MenuItem("Misc.SelectRandomCard", "Anti-Cheat: Select a random card for killable enemy").SetValue(false)).SetFontStyle(FontStyle.Regular, SharpDX.Color.Aqua).Permashow();
                misc.AddItem(new MenuItem("Misc.SelectGoldCardInRisk", "Anti-Cheat: Select instantly Gold Card if I'm in risk").SetValue(false)).SetFontStyle(FontStyle.Regular, SharpDX.Color.Aqua).Permashow();
                Config.AddSubMenu(misc);
            }

            //Damage after combo:
            var dmgAfterComboItem = new MenuItem("DamageAfterCombo", "Draw damage after combo").SetValue(true);

            Utility.HpBarDamageIndicator.DamageToUnit = ComboDamage;
            Utility.HpBarDamageIndicator.Enabled      = dmgAfterComboItem.GetValue <bool>();
            dmgAfterComboItem.ValueChanged           += delegate(object sender, OnValueChangeEventArgs eventArgs)
            {
                Utility.HpBarDamageIndicator.Enabled = eventArgs.GetNewValue <bool>();
            };

            /*Drawing*/
            var drawings = new Menu("Drawings", "Drawings");

            {
                drawings.AddItem(
                    new MenuItem("Qcircle", "Q Range").SetValue(new Circle(true, Color.FromArgb(100, 255, 0, 255))));
                drawings.AddItem(
                    new MenuItem("Rcircle", "R Range").SetValue(new Circle(true, Color.FromArgb(100, 255, 255, 255))));
                drawings.AddItem(
                    new MenuItem("Rcircle2", "R Range (minimap)").SetValue(new Circle(true,
                                                                                      Color.FromArgb(255, 255, 255, 255))));
                drawings.AddItem(dmgAfterComboItem);
                Config.AddSubMenu(drawings);
            }

            Config.AddItem(new MenuItem("Combo", "Combo").SetValue(new KeyBind(32, KeyBindType.Press)));

            Config.AddToMainMenu();

            var x = new CommonBuffManager();

            CommonGeometry.Init();


            CommonAutoLevel.Init(MenuTools);
            CommonSkins.Init(MenuTools);

            Game.OnUpdate                  += Game_OnGameUpdate;
            Drawing.OnDraw                 += Drawing_OnDraw;
            Drawing.OnDraw                 += Drawing_OnDraw_PassiveTimes;
            Drawing.OnEndScene             += DrawingOnOnEndScene;
            Obj_AI_Base.OnProcessSpellCast += Obj_AI_Hero_OnProcessSpellCast;
            Orbwalking.BeforeAttack        += OrbwalkingOnBeforeAttack;
        }
コード例 #26
0
ファイル: Caitlyn.cs プロジェクト: riwalry1/AIO
        public override void Drawing_OnDraw(EventArgs args)
        {
            var t = TargetSelector.GetTarget(Q.Range, DamageType.Physical);

            if (t.LSIsValidTarget())
            {
                Render.Circle.DrawCircle(t.Position, 105f, Color.GreenYellow);

                var wcCenter = ObjectManager.Player.Position.LSExtend(t.Position,
                                                                      ObjectManager.Player.LSDistance(t.Position) / 2);

                var wcLeft = ObjectManager.Player.Position.LSTo2D() +
                             Vector2.Normalize(t.Position.LSTo2D() - ObjectManager.Player.Position.LSTo2D())
                             .Rotated(ObjectManager.Player.LSDistance(t.Position) < 300
                                     ? 45
                                     : 37 * (float)Math.PI / 180) * ObjectManager.Player.LSDistance(t.Position) / 2;

                var wcRight = ObjectManager.Player.Position.LSTo2D() +
                              Vector2.Normalize(t.Position.LSTo2D() - ObjectManager.Player.Position.LSTo2D())
                              .Rotated(ObjectManager.Player.LSDistance(t.Position) < 300
                                      ? -45
                                      : -37 * (float)Math.PI / 180) * ObjectManager.Player.LSDistance(t.Position) / 2;

                Render.Circle.DrawCircle(wcCenter, 50f, Color.Red);
                Render.Circle.DrawCircle(wcLeft.To3D(), 50f, Color.Green);
                Render.Circle.DrawCircle(wcRight.To3D(), 50f, Color.Yellow);
            }
            //var bx = HeroManager.Enemies.Where(e => e.LSIsValidTarget(E.Range * 3));
            //foreach (var n in bx)
            //{
            //    if (n.LSIsValidTarget(800) && ObjectManager.Player.Distance(n) < 450)
            //    {
            //        Vector3[] x = new[] { ObjectManager.Player.Position, n.Position };
            //        Vector2 aX =
            //            Drawing.WorldToScreen(new Vector3(CommonGeometry.CenterOfVectors(x).X,
            //                CommonGeometry.CenterOfVectors(x).Y, CommonGeometry.CenterOfVectors(x).Z));

            //        Render.Circle.DrawCircle(CommonGeometry.CenterOfVectors(x), 85f, Color.White );
            //        Drawing.DrawText(aX.X - 15, aX.Y - 15, Color.GreenYellow, n.ChampionName);

            //    }
            //}

            //var enemies = HeroManager.Enemies.Where(e => e.LSIsValidTarget(1500));
            //var objAiHeroes = enemies as Obj_AI_Hero[] ?? enemies.ToArray();
            //IEnumerable<Obj_AI_Hero> nResult =
            //    (from e in objAiHeroes join d in dangerousEnemies on e.ChampionName equals d select e)
            //        .Distinct();

            //foreach (var n in nResult)
            //{
            //    var x = E.GetPrediction(n).CollisionObjects.Count;
            //    Render.Circle.DrawCircle(n.Position, (Orbwalking.GetRealAutoAttackRange(null) + 65) - 300, Color.GreenYellow);
            //}

            var nResult = HeroManager.Enemies.Where(e => e.LSIsValidTarget(E.Range * 2));

            foreach (var n in nResult.Where(n => n.LSIsFacing(ObjectManager.Player)))
            {
                Render.Circle.DrawCircle(n.Position, E.Range - 200, Color.Red, 1);
            }

            LeagueSharp.Common.Spell[] spellList = { Q, W, E, R };
            foreach (var spell in spellList)
            {
                var menuItem = Program.marksmanDrawings["Draw" + spell.Slot].Cast <CheckBox>().CurrentValue;
                if (menuItem)
                {
                    Render.Circle.DrawCircle(ObjectManager.Player.Position, spell.Range, Color.FromArgb(100, 255, 255, 255));
                }
            }
        }
コード例 #27
0
        public void CreateRenderObjects()
        {
            //Create the minimap sprite.
            if (Range == 1100)
            {
                _minimapSprite                   = new Render.Sprite(WardData.Bitmap, MinimapPosition);
                _minimapSprite.Scale             = new Vector2(0.7f, 0.7f);
                _minimapSprite.PositionUpdate   += () => MinimapPosition;
                _minimapSprite.VisibleCondition += sender => WardTracker.Config.Item("Enabled").GetValue <bool>();
                _minimapSprite.Add(0);
            }

            //Create the circle:
            _defaultCircle = new Render.Circle(Position, 200, Color, 5, true);
            _defaultCircle.VisibleCondition +=
                sender =>
                WardTracker.Config.Item("Enabled").GetValue <bool>() &&
                !WardTracker.Config.Item("Details").GetValue <KeyBind>().Active;
            _defaultCircle.Add(0);
            _defaultCircleFilled = new Render.Circle(Position, 200, Color.FromArgb(25, Color), -142857, true);
            _defaultCircleFilled.VisibleCondition +=
                sender =>
                WardTracker.Config.Item("Enabled").GetValue <bool>() &&
                !WardTracker.Config.Item("Details").GetValue <KeyBind>().Active;
            _defaultCircleFilled.Add(-1);

            //Create the circle that shows the range
            _rangeCircle = new Render.Circle(Position, Range, Color, 10, false);
            _rangeCircle.VisibleCondition +=
                sender =>
                WardTracker.Config.Item("Enabled").GetValue <bool>() &&
                WardTracker.Config.Item("Details").GetValue <KeyBind>().Active;
            _rangeCircle.Add(0);

            _rangeCircleFilled = new Render.Circle(Position, Range, Color.FromArgb(25, Color), -142857, true);
            _rangeCircleFilled.VisibleCondition +=
                sender =>
                WardTracker.Config.Item("Enabled").GetValue <bool>() &&
                WardTracker.Config.Item("Details").GetValue <KeyBind>().Active;
            _rangeCircleFilled.Add(-1);


            //Missile line;
            if (IsFromMissile)
            {
                _missileLine = new Render.Line(new Vector2(), new Vector2(), 2, new ColorBGRA(255, 255, 255, 255));
                _missileLine.EndPositionUpdate   = () => Drawing.WorldToScreen(Position);
                _missileLine.StartPositionUpdate = () => Drawing.WorldToScreen(StartPosition);
                _missileLine.VisibleCondition   +=
                    sender =>
                    WardTracker.Config.Item("Enabled").GetValue <bool>() &&
                    WardTracker.Config.Item("Details").GetValue <KeyBind>().Active;
                _missileLine.Add(0);
            }


            //Create the timer text:
            if (Duration != int.MaxValue)
            {
                _timerText                   = new Render.Text(10, 10, "t", 18, new ColorBGRA(255, 255, 255, 255));
                _timerText.OutLined          = true;
                _timerText.PositionUpdate    = () => Drawing.WorldToScreen(Position);
                _timerText.Centered          = true;
                _timerText.VisibleCondition += sender => WardTracker.Config.Item("Enabled").GetValue <bool>();

                _timerText.TextUpdate = delegate
                {
                    var t = TimeSpan.FromSeconds((EndT - Environment.TickCount) / 1000f);


                    return((IsFromMissile ? "?? " : "") +
                           (t.Minutes != 0
                               ? string.Format("{0:D1} : {1:D2}", t.Minutes, t.Seconds)
                               : string.Format("{0:D2}", t.Seconds)) + (IsFromMissile ? " ??" : ""));
                };
                _timerText.Add(2);
            }
        }
コード例 #28
0
ファイル: Caitlyn.cs プロジェクト: riwalry1/AIO
        private static void DrawingOnOnEndScene(EventArgs args)
        {
            //if (GetValue<bool>("UseEC") && E.IsReady())
            //{
            //    var nResult = HeroManager.Enemies.Where(e => e.LSIsValidTarget(E.Range) && E.GetPrediction(e).CollisionObjects.Count == 0).OrderBy(e => e.Distance(ObjectManager.Player)).FirstOrDefault();
            //    if (nResult != null)
            //    {
            //        var isMelee = nResult.AttackRange < 400;
            //        if (isMelee)
            //        {
            //            Render.Circle.DrawCircle(nResult.Position, nResult.BoundingRadius, Color.DarkCyan, 3);
            //            if (ObjectManager.Player.Distance(nResult) < nResult.AttackRange * 2)
            //            {
            //                CastE(nResult);
            //            }
            //        }
            //        else
            //        {
            //            Render.Circle.DrawCircle(nResult.Position, nResult.BoundingRadius, Color.Gold, 3);
            //            if (nResult.LSIsValidTarget(nResult.IsFacing(ObjectManager.Player) ? E.Range - 200 : E.Range - 400))
            //            {
            //                CastE(nResult);
            //            }
            //        }
            //    }
            //}


            //var enemies =
            //    HeroManager.Enemies.Count(
            //        e => e.Health <= R.GetDamage(e) && !e.IsDead && !e.IsZombie && e.LSIsValidTarget(R.Range));
            //if (enemies > 0)
            //{
            //    for (var i = 0; i < enemies; i++)

            //    {
            //        var a1 = (i + 1) * 0.025f;

            //        CommonGeometry.DrawBox(new Vector2(Drawing.Width * 0.43f, Drawing.Height * (0.700f + a1)), 150, 18,
            //            Color.FromArgb(170, 255, 0, 0), 1, Color.Black);

            //        CommonGeometry.Text.DrawTextCentered(HeroManager.Enemies[i].ChampionName + " Killable",
            //            (int)(Drawing.Width * 0.475f), (int)(Drawing.Height * (0.803f + a1 - 0.093f)), SharpDX.Color.Wheat);
            //    }
            //}
            foreach (var e in HeroManager.Enemies.Where(e => e.LSIsValidTarget(W.Range)))
            {
                if (EnemyHasBuff(e))
                {
                    var pos =
                        e.Position.LSTo2D()
                        .LSExtend(ObjectManager.Player.Position.LSTo2D(),
                                  ObjectManager.Player.HealthPercent < e.HealthPercent ? 100 : -100)
                        .To3D();
                    Render.Circle.DrawCircle(pos, 50f, Color.Chartreuse);

                    //if (pos.Distance(ObjectManager.Player.Position) <= W.Range)
                    //{
                    //    CastW(pos);
                    //}
                }
            }

            if (Drawing.Direct3DDevice == null || Drawing.Direct3DDevice.IsDisposed)
            {
                return;
            }

            var x = 0;

            foreach (var b in ObjectManager.Player.Buffs.Where(buff => buff.DisplayName == "CaitlynHeadshotCount"))
            {
                x = b.Count;
            }

            for (var i = 1; i < 7; i++)
            {
                CommonGeometry.DrawBox(
                    new Vector2(ObjectManager.Player.HPBarPosition.X + 23 + i * 17,
                                ObjectManager.Player.HPBarPosition.Y + 25), 15, 4, Color.Transparent, 1, Color.Black);
            }
            var headshotReady = ObjectManager.Player.Buffs.Any(buff => buff.DisplayName == "CaitlynHeadshotReady");

            for (var i = 1; i < (headshotReady ? 7 : x + 1); i++)
            {
                CommonGeometry.DrawBox(
                    new Vector2(ObjectManager.Player.HPBarPosition.X + 24 + i * 17,
                                ObjectManager.Player.HPBarPosition.Y + 26), 13, 3, headshotReady ? Color.Red : Color.LightGreen,
                    0, Color.Black);
            }

            var rCircle2 = Program.marksmanDrawings["Draw.UltiMiniMap"].Cast <CheckBox>().CurrentValue;

            if (rCircle2)
            {
#pragma warning disable 618
                LeagueSharp.Common.Utility.DrawCircle(ObjectManager.Player.Position, R.Range, Color.FromArgb(255, 255, 255, 255), 1, 23, true);
#pragma warning restore 618
            }
        }
コード例 #29
0
        /// <summary>
        /// Translates an Html color representation to a GDI+ <see cref='Color'/>.
        /// </summary>
        public static Color FromHtml(string htmlColor)
        {
            Color c = Color.Empty;

            // empty color
            if ((htmlColor == null) || (htmlColor.Length == 0))
            {
                return(c);
            }

            // #RRGGBB or #RGB
            if ((htmlColor[0] == '#') &&
                ((htmlColor.Length == 7) || (htmlColor.Length == 4)))
            {
                if (htmlColor.Length == 7)
                {
                    c = Color.FromArgb(Convert.ToInt32(htmlColor.Substring(1, 2), 16),
                                       Convert.ToInt32(htmlColor.Substring(3, 2), 16),
                                       Convert.ToInt32(htmlColor.Substring(5, 2), 16));
                }
                else
                {
                    string r = char.ToString(htmlColor[1]);
                    string g = char.ToString(htmlColor[2]);
                    string b = char.ToString(htmlColor[3]);

                    c = Color.FromArgb(Convert.ToInt32(r + r, 16),
                                       Convert.ToInt32(g + g, 16),
                                       Convert.ToInt32(b + b, 16));
                }
            }

            // special case. Html requires LightGrey, but .NET uses LightGray
            if (c.IsEmpty && string.Equals(htmlColor, "LightGrey", StringComparison.OrdinalIgnoreCase))
            {
                c = Color.LightGray;
            }

            // System color
            if (c.IsEmpty)
            {
                if (s_htmlSysColorTable == null)
                {
                    InitializeHtmlSysColorTable();
                }

                s_htmlSysColorTable !.TryGetValue(htmlColor.ToLowerInvariant(), out c);
            }

            // resort to type converter which will handle named colors
            if (c.IsEmpty)
            {
                try
                {
                    c = ColorConverterCommon.ConvertFromString(htmlColor, CultureInfo.CurrentCulture);
                }
                catch (Exception ex)
                {
                    throw new ArgumentException(ex.Message, nameof(htmlColor), ex);
                }
            }

            return(c);
        }
コード例 #30
0
        public override void OnManagedCreateResources()
        {
            if (!base.bNotActivated)
            {
                this.txリザルト画像がないときの画像 = CDTXMania.tGenerateTexture(CSkin.Path(@"Graphics\5_preimage default.png"));
                if (CDTXMania.ConfigIni.bストイックモード)
                {
                    this.txリザルト画像 = this.txリザルト画像がないときの画像;
                }
                else if (((!this.tリザルト画像の指定があれば構築する()) && (!this.tプレビュー画像の指定があれば構築する())))
                {
                    this.txリザルト画像 = this.txリザルト画像がないときの画像;
                }

                #region [ Generation of song title, artist name and disclaimer textures ]
                if (string.IsNullOrEmpty(CDTXMania.DTX.TITLE) || (!CDTXMania.bCompactMode && CDTXMania.ConfigIni.b曲名表示をdefのものにする))
                {
                    this.strSongName = CDTXMania.stageSongSelection.r現在選択中の曲.strタイトル;
                }
                else
                {
                    this.strSongName = CDTXMania.DTX.TITLE;
                }

                CPrivateFastFont pfTitle     = new CPrivateFastFont(new FontFamily(CDTXMania.ConfigIni.str選曲リストフォント), 20, FontStyle.Regular);
                Bitmap           bmpSongName = pfTitle.DrawPrivateFont(this.strSongName, CPrivateFont.DrawMode.Edge, Color.Black, Color.Black, this.clGITADORAgradationTopColor, this.clGITADORAgradationBottomColor, true);
                this.txSongName = CDTXMania.tGenerateTexture(bmpSongName, false);
                bmpSongName.Dispose();
                pfTitle.Dispose();

                CPrivateFastFont pfArtist      = new CPrivateFastFont(new FontFamily(CDTXMania.ConfigIni.str選曲リストフォント), 15, FontStyle.Regular);
                Bitmap           bmpArtistName = pfArtist.DrawPrivateFont(CDTXMania.DTX.ARTIST, CPrivateFont.DrawMode.Edge, Color.Black, Color.Black, this.clGITADORAgradationTopColor, this.clGITADORAgradationBottomColor, true);
                this.txArtistName = CDTXMania.tGenerateTexture(bmpArtistName, false);
                bmpArtistName.Dispose();
                pfArtist.Dispose();

                if (CDTXMania.ConfigIni.nPlaySpeed != 20)
                {
                    double           d = (double)(CDTXMania.ConfigIni.nPlaySpeed / 20.0);
                    String           strModifiedPlaySpeed = "Play Speed: x" + d.ToString("0.000");
                    CPrivateFastFont pfModifiedPlaySpeed  = new CPrivateFastFont(new FontFamily(CDTXMania.ConfigIni.str選曲リストフォント), 18, FontStyle.Regular);
                    Bitmap           bmpModifiedPlaySpeed = pfModifiedPlaySpeed.DrawPrivateFont(strModifiedPlaySpeed, CPrivateFont.DrawMode.Edge, Color.White, Color.White, Color.Black, Color.Red, true);
                    this.txModifiedPlaySpeed = CDTXMania.tGenerateTexture(bmpModifiedPlaySpeed, false);
                    bmpModifiedPlaySpeed.Dispose();
                    pfModifiedPlaySpeed.Dispose();
                }

                if (CDTXMania.stageResult.bIsTrainingMode)
                {
                    String           strResultsNotSavedTraining = "Training feature used";
                    CPrivateFastFont pfResultsNotSavedTraining  = new CPrivateFastFont(new FontFamily(CDTXMania.ConfigIni.str選曲リストフォント), 18, FontStyle.Regular);
                    Bitmap           bmpResultsNotSavedTraining = pfResultsNotSavedTraining.DrawPrivateFont(strResultsNotSavedTraining, CPrivateFont.DrawMode.Edge, Color.White, Color.White, Color.Black, Color.Red, true);
                    this.txTrainingMode = CDTXMania.tGenerateTexture(bmpResultsNotSavedTraining, false);
                    bmpResultsNotSavedTraining.Dispose();
                    pfResultsNotSavedTraining.Dispose();
                }

                String           strResultsNotSaved = "Score will not be saved";
                CPrivateFastFont pfResultsNotSaved  = new CPrivateFastFont(new FontFamily(CDTXMania.ConfigIni.str選曲リストフォント), 18, FontStyle.Regular);
                Bitmap           bmpResultsNotSaved = pfResultsNotSaved.DrawPrivateFont(strResultsNotSaved, CPrivateFont.DrawMode.Edge, Color.White, Color.White, Color.Black, Color.Red, true);
                this.txResultsNotSaved = CDTXMania.tGenerateTexture(bmpResultsNotSaved, false);
                bmpResultsNotSaved.Dispose();
                pfResultsNotSaved.Dispose();
                #endregion

                Bitmap   bitmap2  = new Bitmap(0x3a, 0x12);
                Graphics graphics = Graphics.FromImage(bitmap2);

                graphics.Dispose();
                this.txSongDifficulty = new CTexture(CDTXMania.app.Device, bitmap2, CDTXMania.TextureFormat, false);
                bitmap2.Dispose();
                Bitmap bitmap3 = new Bitmap(100, 100);
                graphics = Graphics.FromImage(bitmap3);
                float num;
                //If Skill Mode is CLASSIC, always display lvl as Classic Style
                if (CDTXMania.ConfigIni.nSkillMode == 0 || (CDTXMania.ConfigIni.bCLASSIC譜面判別を有効にする &&
                                                            (CDTXMania.DTX.bチップがある.LeftCymbal == false) &&
                                                            (CDTXMania.DTX.bチップがある.LP == false) &&
                                                            (CDTXMania.DTX.bチップがある.LBD == false) &&
                                                            (CDTXMania.DTX.bチップがある.FT == false) &&
                                                            (CDTXMania.DTX.bチップがある.Ride == false)))
                {
                    num = ((float)CDTXMania.stageSongSelection.rChosenScore.SongInformation.Level.Drums);
                }
                else
                {
                    if (CDTXMania.stageSongSelection.rChosenScore.SongInformation.Level.Drums > 100)
                    {
                        num = ((float)CDTXMania.stageSongSelection.rChosenScore.SongInformation.Level.Drums);
                    }
                    else
                    {
                        num = ((float)CDTXMania.stageSongSelection.rChosenScore.SongInformation.Level.Drums) / 10f;
                    }
                }
                //If Skill Mode is CLASSIC, always display lvl as Classic Style
                if (CDTXMania.ConfigIni.nSkillMode == 0 || (CDTXMania.ConfigIni.bCLASSIC譜面判別を有効にする &&
                                                            (CDTXMania.DTX.bチップがある.LeftCymbal == false) &&
                                                            (CDTXMania.DTX.bチップがある.LP == false) &&
                                                            (CDTXMania.DTX.bチップがある.LBD == false) &&
                                                            (CDTXMania.DTX.bチップがある.FT == false) &&
                                                            (CDTXMania.DTX.bチップがある.Ride == false) &&
                                                            (CDTXMania.DTX.b強制的にXG譜面にする == false)))
                {
                    graphics.DrawString(string.Format("{0:00}", num), this.ftSongDifficultyFont, new SolidBrush(Color.FromArgb(0xba, 0xba, 0xba)), (float)0f, (float)-4f);
                }
                else
                {
                    graphics.DrawString(string.Format("{0:0.00}", num), this.ftSongDifficultyFont, new SolidBrush(Color.FromArgb(0xba, 0xba, 0xba)), (float)0f, (float)-4f);
                }
                this.txSongLevel = new CTexture(CDTXMania.app.Device, bitmap3, CDTXMania.TextureFormat, false);
                graphics.Dispose();
                bitmap3.Dispose();
                Bitmap bitmap4 = new Bitmap(0x2a, 0x30);
                graphics = Graphics.FromImage(bitmap4);
                graphics.DrawImage(this.iDrumSpeed, new Rectangle(0, 0, 0x2a, 0x30), new Rectangle(0, CDTXMania.ConfigIni.nScrollSpeed.Drums * 0x30, 0x2a, 0x30), GraphicsUnit.Pixel);
                this.txDrumSpeed = new CTexture(CDTXMania.app.Device, bitmap4, CDTXMania.TextureFormat, false);
                graphics.Dispose();
                //graphics.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.Default;
                bitmap4.Dispose();
                base.OnManagedCreateResources();
            }
        }