LynnaLab.ObjectData.GetColor C# (CSharp) Method

GetColor() public method

public GetColor ( ) : Color
return Color
        public Color GetColor()
        {
            switch (type)
            {
                case (ObjectType)0: return Color.Black;
                case (ObjectType)1: return Color.Red;
                case (ObjectType)2: return Color.DarkOrange;
                case (ObjectType)3: return Color.Yellow;
                case (ObjectType)4: return Color.Green;
                case (ObjectType)5: return Color.Blue;
                case (ObjectType)6: return Color.Purple;
                case (ObjectType)7: return Color.FromArgb(128, 64, 0);
                case (ObjectType)8: return Color.Gray;
                case (ObjectType)9: return Color.Magenta;
                case (ObjectType)0xA: return Color.Lime;
            }
            return Color.White;
        }

Usage Example

示例#1
0
        int DrawObjectGroup(Graphics g, int index, ref int cursorX, ref int cursorY, ref int selectedX, ref int selectedY, ObjectGroup group, ObjectGroupEditor editor, ref List <int> objectIndices)
        {
            if (group == null)
            {
                return(index);
            }

            List <int> localObjectIndices = new List <int>(objectIndices);

            bool foundHoveringMatch = false;

            for (int i = 0; i < group.GetNumObjects(); i++)
            {
                ObjectData data = group.GetObjectData(i);
                if (data.GetObjectType() >= ObjectType.Pointer &&
                    data.GetObjectType() <= ObjectType.AntiBossPointer)
                {
                    ObjectGroup nextGroup = data.GetPointedObjectGroup();
                    if (nextGroup != null)
                    {
                        List <int> pointerObjectIndices = new List <int>(objectIndices);
                        pointerObjectIndices.Add(i);
                        if (editor != null && i == editor.SelectedIndex)
                        {
                            index = DrawObjectGroup(g, index, ref cursorX, ref cursorY,
                                                    ref selectedX, ref selectedY, nextGroup, editor.SubEditor, ref pointerObjectIndices);
                        }
                        else
                        {
                            index = DrawObjectGroup(g, index, ref cursorX, ref cursorY,
                                                    ref selectedX, ref selectedY, nextGroup, null, ref pointerObjectIndices);
                        }
                        if (pointerObjectIndices.Count > objectIndices.Count + 1)
                        {
                            localObjectIndices = pointerObjectIndices;
                        }
                    }
                }
                else
                {
                    Color color = data.GetColor();
                    int   x, y;
                    int   width;
                    if (data.HasXY())
                    {
                        x     = data.GetX();
                        y     = data.GetY();
                        width = 16;
                        // Objects with specific positions get
                        // transparency
                        color = Color.FromArgb(0xd0, color.R, color.G, color.B);
                    }
                    else
                    {
                        // No X/Y values exist
                        x = index;
                        y = 0;
                        while (x >= 0xf)
                        {
                            x -= 0xf;
                            y++;
                        }
                        x    *= 16;
                        y    *= 16;
                        x    += 8;
                        y    += 8;
                        width = 8;
                        index++;
                    }

                    if (editor != null && i == editor.SelectedIndex)
                    {
                        selectedX = x - 8;
                        selectedY = y - 8;
                    }
                    if (mouseX >= x - 8 && mouseX < x + 8 &&
                        mouseY >= y - 8 && mouseY < y + 8)
                    {
                        if (localObjectIndices.Count == objectIndices.Count)
                        {
                            if (foundHoveringMatch)
                            {
                                localObjectIndices[localObjectIndices.Count - 1] = i;
                            }
                            else
                            {
                                localObjectIndices.Add(i);
                            }
                            cursorX            = x - 8;
                            cursorY            = y - 8;
                            foundHoveringMatch = true;
                        }
                    }

                    x -= width / 2;
                    y -= width / 2;


                    g.FillRectangle(new SolidBrush(color), x, y, width, width);
                }
            }

            objectIndices = localObjectIndices;
            return(index);
        }
All Usage Examples Of LynnaLab.ObjectData::GetColor