Class: Discordrb::ColourRGB

Inherits:
Object
  • Object
show all
Defined in:
lib/discordrb/data.rb

Overview

A colour (red, green and blue values). Used for role colours. If you prefer the American spelling, the alias ColorRGB is also available.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(combined) ⇒ ColourRGB

Make a new colour from the combined value.

Examples:

Initialize a with a base 10 integer

ColourRGB.new(7506394) #=> ColourRGB
ColourRGB.new(0x7289da) #=> ColourRGB

Initialize a with a hexadecimal string

ColourRGB.new('7289da') #=> ColourRGB

Parameters:

  • combined (Integer, String)

    The colour's RGB values combined into one integer or a hexadecimal string


4178
4179
4180
4181
4182
4183
# File 'lib/discordrb/data.rb', line 4178

def initialize(combined)
  @combined = combined.is_a?(String) ? combined.to_i(16) : combined
  @red = (@combined >> 16) & 0xFF
  @green = (@combined >> 8) & 0xFF
  @blue = @combined & 0xFF
end

Instance Attribute Details

#blueInteger (readonly)

Returns the blue part of this colour (0-255).

Returns:

  • (Integer)

    the blue part of this colour (0-255).


4165
4166
4167
# File 'lib/discordrb/data.rb', line 4165

def blue
  @blue
end

#combinedInteger (readonly) Also known as: to_i

Returns the colour's RGB values combined into one integer.

Returns:

  • (Integer)

    the colour's RGB values combined into one integer.


4168
4169
4170
# File 'lib/discordrb/data.rb', line 4168

def combined
  @combined
end

#greenInteger (readonly)

Returns the green part of this colour (0-255).

Returns:

  • (Integer)

    the green part of this colour (0-255).


4162
4163
4164
# File 'lib/discordrb/data.rb', line 4162

def green
  @green
end

#redInteger (readonly)

Returns the red part of this colour (0-255).

Returns:

  • (Integer)

    the red part of this colour (0-255).


4159
4160
4161
# File 'lib/discordrb/data.rb', line 4159

def red
  @red
end

Instance Method Details

#hexString Also known as: hexadecimal

Returns the colour as a hexadecimal.

Returns:

  • (String)

    the colour as a hexadecimal.


4186
4187
4188
# File 'lib/discordrb/data.rb', line 4186

def hex
  @combined.to_s(16)
end