RageColor

RageColor is a data type defined by StepMania, used for coloring Actors. A RageColor has four values: Red, Green, Blue, and Alpha (opacity). When the alpha is 0, the color is completely transparent, and when it is 1, the color is completely opaque.

A RageColor can be expressed natively in one of four ways:
 * A set of four floats, each of which ranges from 0.0 to 1.0.
 * A set of three floats, in which case the color is opaque.
 * An eight-digit hexadecimal number, where the value of each ranges from 00 to FF.  This form always starts with a hash character.
 * A six-digit hexadecimal number, in which case the color is opaque.

StepMania 3.9
Using the command as an example: diffuse,red,green,blue,alpha diffuse,red,green,blue diffuse,#rrggbbaa diffuse,#rrggbb

Note that this looks like multiple arguments in the first two cases, but it always defines a single color.

StepMania 4.0 and later
Again, using for an example: diffuse,color("red,green,blue,alpha") diffuse,color("red,green,blue") diffuse,color("#rrggbbaa") diffuse,color("#rrggbb")

The only difference from 3.9 is that the color definition is surrounded by quotes and passed to a  function.

There are also several convenient constants and functions defined in Lua (see ). Constants are of the form, where options for Name include Black, White, Red, Blue, Green, Yellow, Orange, and Purple. There are many useful color functions, such as these, which convert a color from the HSV colorspace: diffuse,HSV(hue,sat,val) diffuse,HSVA(hue,sat,val,alpha)

Here hue is a number between 0 and 360, and sat, val, and alpha are between 0.0 and 1.0.

StepMania 3.9
To make an object 50% red, 100% green, 70% blue, and completely opaque, you could use any of the following: diffuse,0.5,1,0.7,1 diffuse,0.5,1,0.7 diffuse,#80FFB3FF diffuse,#80FFB3

StepMania 4.0 and later
To make an object 50% red, 100% green, 70% blue, and completely opaque, you could use any of the following: diffuse,color("0.5,1,0.7,1") diffuse,color("0.5,1,0.7") diffuse,color("#80FFB3FF") diffuse,color("#80FFB3")

To make an object blue: diffuse,Color.Blue

To make an object gray and half-transparent using HSV: diffuse,HSVA(0,0,0.6,0.5)