39 lines
634 B
GDScript

extends ImageScript
func _get_param_list():
return [
[
"Hue",
SCRIPT_PARAM_INT,
0,
[0, 360]
],
[
"Saturation",
SCRIPT_PARAM_INT,
0,
[-100, +100]
],
[
"Value",
SCRIPT_PARAM_INT,
0,
[-100, +100]
],
]
func _get_image(new_image, selection):
var pix : Color
for i in new_image.get_width():
for j in new_image.get_width():
if !selection.get_bit(i, j): continue
pix = new_image.get_pixel(i, j)
pix.h += get_param("Hue") / 360.0
pix.s *= 1.0 + get_param("Saturation") * 0.01
pix.v *= 1.0 + get_param("Value") * 0.01
new_image.set_pixel(i, j, pix)
return new_image