Class: Color
- Inherits:
-
Object
- Object
- Color
- Defined in:
- lib/R3EXS/RGSS3.rb
Overview
RPG Maker VX Ace Color 类
Instance Attribute Summary collapse
-
#alpha ⇒ Integer
alpha 通道的值.
-
#blue ⇒ Integer
blue 通道的值.
-
#green ⇒ Integer
green 通道的值.
-
#red ⇒ Integer
red 通道的值.
Class Method Summary collapse
-
._load(obj) ⇒ Color
反序列化 Color 对象.
Instance Method Summary collapse
-
#_dump(level) ⇒ String
序列化 Color 对象.
-
#initialize(*args) ⇒ Color
constructor
初始化时接受以下几种参数情况: - 无参数时,默认 (0, 0, 0, 0) - 3 个参数时,默认为 (red, green, blue, 255) - 4 个参数时,指定 (red, green, blue, alpha).
-
#set(*args) ⇒ void
设置 Color 对象的值 - 无参数时,默认 (0, 0, 0, 0) - 3 个参数时,默认为 (red, green, blue, 255) - 4 个参数时,指定 (red, green, blue, alpha).
Constructor Details
#initialize(*args) ⇒ Color
初始化时接受以下几种参数情况:
- 无参数时,默认 (0, 0, 0, 0)
- 3 个参数时,默认为 (red, green, blue, 255)
- 4 个参数时,指定 (red, green, blue, alpha)
38 39 40 41 42 43 44 45 46 47 48 49 |
# File 'lib/R3EXS/RGSS3.rb', line 38 def initialize(*args) case args.length when 0 # 无参数 set(0, 0, 0, 0) when 3 # 3 个参数, alpha 默认为 255 set(*args) when 4 # 4 个参数, 分别为 red, green, blue, alpha set(*args) else raise ArgumentError, "Invalid arguments for initialize method" end end |
Instance Attribute Details
#alpha ⇒ Integer
alpha 通道的值
24 25 26 |
# File 'lib/R3EXS/RGSS3.rb', line 24 def alpha @alpha end |
#blue ⇒ Integer
blue 通道的值
19 20 21 |
# File 'lib/R3EXS/RGSS3.rb', line 19 def blue @blue end |
#green ⇒ Integer
green 通道的值
14 15 16 |
# File 'lib/R3EXS/RGSS3.rb', line 14 def green @green end |
#red ⇒ Integer
red 通道的值
9 10 11 |
# File 'lib/R3EXS/RGSS3.rb', line 9 def red @red end |
Class Method Details
Instance Method Details
#_dump(level) ⇒ String
序列化 Color 对象
95 96 97 |
# File 'lib/R3EXS/RGSS3.rb', line 95 def _dump(level) [@red, @green, @blue, @alpha].pack('D4') end |
#set(*args) ⇒ void
This method returns an undefined value.
设置 Color 对象的值
- 无参数时,默认 (0, 0, 0, 0)
- 3 个参数时,默认为 (red, green, blue, 255)
- 4 个参数时,指定 (red, green, blue, alpha)
63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 |
# File 'lib/R3EXS/RGSS3.rb', line 63 def set(*args) case args.length when 1 # 一个参数, 为 Color 对象 if args[0].is_a?(Color) other_color = args[0] self.red = other_color.red self.green = other_color.green self.blue = other_color.blue self.alpha = other_color.alpha else raise ArgumentError, "Invalid arguments for set method" end when 3 # 三个参数, 分别为 red, green, blue (alpha 默认为 255) self.red = args[0] self.green = args[1] self.blue = args[2] self.alpha = 255.0 when 4 # 四个参数, 分别为 red, green, blue, alpha self.red = args[0] self.green = args[1] self.blue = args[2] self.alpha = args[3] else raise ArgumentError, "Invalid arguments for set method" end end |