Wandelt einen 24Bit HSL-Wert in den bekannten 32Bit RGB-Farbwert um.
Der 24Bit HSL-Wert kann mit
RGB(Hue,Saturation,Lightness) erzeugt werden.
Da es in Clonk keinen Float-Datentyp gibt können die umgerechneten Werte einen geringen Fehler enthalten. (Im Regelfall nicht mehr als +1 bzw. -1)
#strict
#appendto CLNK
func Initialize() {
AddEffect("VariateHue",this(),200,1,this());
return(_inherited());
}
func FxVariateHueTimer() {
var rgb, hsl=RGB2HSL(GetColorDw());
var hue, sat, light;
SplitRGBaValue(hsl, hue, sat, light);
hue+=2;
if(hue>255) hue=0;
rgb=HSL2RGB(RGB(hue,sat,light));
SetColorDw(rgb);
}
Erzeugt in jedem Clonk einen Effekt der die Farbe der Clonks Regenbogenartig variieren lässt.
Zum ausprobieren den Script am besten in einen Szenarienlokale System.c4g Ordner kopieren
Der Hue-Wert wird hier mit Absicht mit jeweils um 2 erhöht, da der geringe Fehler bei der Umrechnung sonst wirksam wird und gar nichts geschieht.