Package org.bukkit

Class Color

  • All Implemented Interfaces:
    ConfigurationSerializable

    public final class Color
    extends Object
    implements ConfigurationSerializable
    A container for a color palette. This class is immutable; the set methods return a new color. The color names listed as fields are HTML4 standards, but subject to change.
    • Field Detail

      • WHITE

        public static final Color WHITE
        White, or (0xFF,0xFF,0xFF) in (R,G,B)
      • SILVER

        public static final Color SILVER
        Silver, or (0xC0,0xC0,0xC0) in (R,G,B)
      • GRAY

        public static final Color GRAY
        Gray, or (0x80,0x80,0x80) in (R,G,B)
      • BLACK

        public static final Color BLACK
        Black, or (0x00,0x00,0x00) in (R,G,B)
      • RED

        public static final Color RED
        Red, or (0xFF,0x00,0x00) in (R,G,B)
      • MAROON

        public static final Color MAROON
        Maroon, or (0x80,0x00,0x00) in (R,G,B)
      • YELLOW

        public static final Color YELLOW
        Yellow, or (0xFF,0xFF,0x00) in (R,G,B)
      • OLIVE

        public static final Color OLIVE
        Olive, or (0x80,0x80,0x00) in (R,G,B)
      • LIME

        public static final Color LIME
        Lime, or (0x00,0xFF,0x00) in (R,G,B)
      • GREEN

        public static final Color GREEN
        Green, or (0x00,0x80,0x00) in (R,G,B)
      • AQUA

        public static final Color AQUA
        Aqua, or (0x00,0xFF,0xFF) in (R,G,B)
      • TEAL

        public static final Color TEAL
        Teal, or (0x00,0x80,0x80) in (R,G,B)
      • BLUE

        public static final Color BLUE
        Blue, or (0x00,0x00,0xFF) in (R,G,B)
      • NAVY

        public static final Color NAVY
        Navy, or (0x00,0x00,0x80) in (R,G,B)
      • FUCHSIA

        public static final Color FUCHSIA
        Fuchsia, or (0xFF,0x00,0xFF) in (R,G,B)
      • PURPLE

        public static final Color PURPLE
        Purple, or (0x80,0x00,0x80) in (R,G,B)
      • ORANGE

        public static final Color ORANGE
        Orange, or (0xFF,0xA5,0x00) in (R,G,B)
    • Method Detail

      • fromRGB

        @NotNull
        public static @NotNull Color fromRGB​(int red,
                                             int green,
                                             int blue)
                                      throws IllegalArgumentException
        Creates a new Color object from a red, green, and blue
        Parameters:
        red - integer from 0-255
        green - integer from 0-255
        blue - integer from 0-255
        Returns:
        a new Color object for the red, green, blue
        Throws:
        IllegalArgumentException - if any value is strictly >255 or <0
      • fromBGR

        @NotNull
        public static @NotNull Color fromBGR​(int blue,
                                             int green,
                                             int red)
                                      throws IllegalArgumentException
        Creates a new Color object from a blue, green, and red
        Parameters:
        blue - integer from 0-255
        green - integer from 0-255
        red - integer from 0-255
        Returns:
        a new Color object for the red, green, blue
        Throws:
        IllegalArgumentException - if any value is strictly >255 or <0
      • fromRGB

        @NotNull
        public static @NotNull Color fromRGB​(int rgb)
                                      throws IllegalArgumentException
        Creates a new color object from an integer that contains the red, green, and blue bytes in the lowest order 24 bits.
        Parameters:
        rgb - the integer storing the red, green, and blue values
        Returns:
        a new color object for specified values
        Throws:
        IllegalArgumentException - if any data is in the highest order 8 bits
      • fromBGR

        @NotNull
        public static @NotNull Color fromBGR​(int bgr)
                                      throws IllegalArgumentException
        Creates a new color object from an integer that contains the blue, green, and red bytes in the lowest order 24 bits.
        Parameters:
        bgr - the integer storing the blue, green, and red values
        Returns:
        a new color object for specified values
        Throws:
        IllegalArgumentException - if any data is in the highest order 8 bits
      • getRed

        public int getRed()
        Gets the red component
        Returns:
        red component, from 0 to 255
      • setRed

        @NotNull
        public @NotNull Color setRed​(int red)
        Creates a new Color object with specified component
        Parameters:
        red - the red component, from 0 to 255
        Returns:
        a new color object with the red component
      • getGreen

        public int getGreen()
        Gets the green component
        Returns:
        green component, from 0 to 255
      • setGreen

        @NotNull
        public @NotNull Color setGreen​(int green)
        Creates a new Color object with specified component
        Parameters:
        green - the red component, from 0 to 255
        Returns:
        a new color object with the red component
      • getBlue

        public int getBlue()
        Gets the blue component
        Returns:
        blue component, from 0 to 255
      • setBlue

        @NotNull
        public @NotNull Color setBlue​(int blue)
        Creates a new Color object with specified component
        Parameters:
        blue - the red component, from 0 to 255
        Returns:
        a new color object with the red component
      • asRGB

        public int asRGB()
        Gets the color as an RGB integer.
        Returns:
        An integer representation of this color, as 0xRRGGBB
      • asBGR

        public int asBGR()
        Gets the color as an BGR integer.
        Returns:
        An integer representation of this color, as 0xBBGGRR
      • mixDyes

        @NotNull
        public @NotNull Color mixDyes​(@NotNull
                                      @NotNull DyeColor... colors)
        Creates a new color with its RGB components changed as if it was dyed with the colors passed in, replicating vanilla workbench dyeing
        Parameters:
        colors - The DyeColors to dye with
        Returns:
        A new color with the changed rgb components
      • mixColors

        @NotNull
        public @NotNull Color mixColors​(@NotNull
                                        @NotNull Color... colors)
        Creates a new color with its RGB components changed as if it was dyed with the colors passed in, replicating vanilla workbench dyeing
        Parameters:
        colors - The colors to dye with
        Returns:
        A new color with the changed rgb components
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class Object