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



4214
4215
4216
4217
4218
4219
# File 'lib/discordrb/data.rb', line 4214

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).



4201
4202
4203
# File 'lib/discordrb/data.rb', line 4201

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.



4204
4205
4206
# File 'lib/discordrb/data.rb', line 4204

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).



4198
4199
4200
# File 'lib/discordrb/data.rb', line 4198

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).



4195
4196
4197
# File 'lib/discordrb/data.rb', line 4195

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.



4222
4223
4224
# File 'lib/discordrb/data.rb', line 4222

def hex
  @combined.to_s(16)
end