prev_x = -1;
prev_y = -1;
XX = 1
x = 1
y = 1
ZZ = 1
ZC = 0
ZD = 0
Red = 255
Green = 255
Blue = 255
BG = 0
PPP = 255
BGD = 255
RedBG1 = 255
GreenBG1 = 255
BlueBG1 = 255
RedBG2 = 255
GreenBG2 = 255
BlueBG2 = 255
RedBG = 255
GreenBG = 255
BlueBG = 255
Rainbow = 0
Red1 = 0
Green1 = 0
Blue1 = 0
PPPP = 0
PPP1 = 0

function RAINBOW1()

if Red == 255 and Red1 == 0 then
Red1 = 1
elseif Red1 == 0 and Red != 255 then
Red = Red + 1
elseif Red1 == 1 and Red != 0 then
Red = Red - 1
elseif Red == 0 and Red1 == 1 then
Red1 = 0
endif;

if Blue == 255 and Blue1 == 0 then
Blue1 = 1
elseif Blue1 == 0 and Blue != 255 then
Blue = Blue + 1
elseif Blue1 == 1 and Blue != 0 then
Blue = Blue - 1
elseif Blue == 0 and Blue1 == 1 then
Blue1 = 0
endif;

if Green == 255 and Green1 == 0 then
Green1 = 1
elseif Green1 == 0 and Green != 255 then
Green = Green + 1
elseif Green1 == 1 and Green != 0 then
Green = Green - 1
elseif Green == 0 and Green1 == 1 then
Green1 = 0
endif;

color(Red, Green, Blue)

endfunc;

function RAINBOW2()

if Red == 255 and Red1 == 0 then
Red1 = 1
Green1 = 0
elseif Red1 == 0 and Red != 255 then
Red = Red + 1
elseif Red1 == 1 and Red != 0 then
Red = Red - 1
elseif Red == 0 and Red1 == 1 then
Red1 = -1
endif;

if Blue == 255 and Blue1 == 0 then
Blue1 = 1
Red1 = 0
elseif Blue1 == 0 and Blue != 255 then
Blue = Blue + 1
elseif Blue1 == 1 and Blue != 0 then
Blue = Blue - 1
elseif Blue == 0 and Blue1 == 1 then
Blue1 = -1
endif;

if Green == 255 and Green1 == 0 then
Green1 = 1
Blue1 = 0
elseif Green1 == 0 and Green != 255 then
Green = Green + 1
elseif Green1 == 1 and Green != 0 then
Green = Green - 1
elseif Green == 0 and Green1 == 1 then
Green1 = -1
endif;

color(Red, Green, Blue)

endfunc;

function RAINBOW3 ()

PPPP = random(1, 1)

if PPP > 254 and PPP1 == 0 then
PPP1 = 1
elseif PPP1 == 0 and PPP != 255 then
PPP = PPP + PPPP
elseif PPP1 == 1 and PPP != 0 then
PPP = PPP - PPPP
elseif PPP < 1 and PPP1 == 1 then
PPP1 = 0
endif;

PPP = toReal(PPP)
spriteMove(Slider, 600, (PPP/255*71))

endfunc;

function Z()
if (prev_x - x) > 10 or (prev_x - x) < -10 then
ZD = 1
elseif (prev_x - x) > 5 or (prev_x - x) < -5 then
ZC = 1
ZD = 0
else
ZC = 0
ZD = 0
endif

if (prev_y - y) > 10 or (prev_y - y) < -10 then
elseif (prev_y - y) > 5 or (prev_y - y) < -5 then
else
ZC = 0
ZD = 0
endif;

endfunc;

println("Do not use in fullscreen")

white = loadImage("white.png");
black = loadImage("black.png");
blue = loadImage("blue.png")
green = loadImage("green.png")
pink = loadImage("pink.png")
yellow = loadImage ("yellow.png")
blight = loadImage ("blight.png")
red = loadImage ("red.png")
X1 = loadImage ("X1.png")
X2 = loadImage ("X2.png")
X3 = loadImage ("X3.png")
SlideBar = loadImage ("SlideBar.png")
Slider = loadImage ("Slider.png")
SliderBG = loadImage ("SliderBG.png")
Box = loadImage ("Box.png")

white = toSprite(white);
black = toSprite(black);
blue = toSprite(blue)
green = toSprite(green)
pink = toSprite(pink)
yellow = toSprite (yellow)
blight = toSprite (blight)
red = toSprite (red)
X1 = toSprite (X1)
X2 = toSprite (X2)
X3 = toSprite (X3)
SlideBar = toSprite (SlideBar)
Slider = toSprite (Slider)
SliderBG = toSprite (SliderBG)
Box = toSprite (Box)

spriteVisible(white, TRUE);
spriteVisible(black, TRUE);
spriteVisible(blue, TRUE);
spriteVisible(green, TRUE);
spriteVisible(pink, TRUE);
spriteVisible(yellow, TRUE);
spriteVisible(blight, TRUE);
spriteVisible(red, TRUE);
spriteVisible(X1, TRUE);
spriteVisible(X2, TRUE);
spriteVisible(X3, TRUE);
spriteVisible(SlideBar, TRUE);
spriteVisible(Slider, TRUE);
spriteVisible(SliderBG, TRUE);

spriteMove(white, 600, 441);
spriteMove(blue, 600, 405)
spriteMove(black, 600, 369)
spriteMove(green, 600, 333)
spriteMove(pink, 600, 297)
spriteMove(yellow, 600, 261)
spriteMove(blight, 600, 225)
spriteMove(red, 600, 189)
spriteMove(X1, 600, 153)
spriteMove(X2, 600, 117)
spriteMove(X3, 600, 081)
spriteMove(SlideBar, 600, 001)
spriteMove(Slider, 600, 070)
spriteMove(SliderBG, 600, 002)

while TRUE do
if mouseButtonPressed(1) then

x = mouseX();
y = mouseY();

if x >= 599 and y >= 441 then
Red = 255
Green = 255
Blue = 255
Rainbow = 0
elseif x > 599 and y > 405 then
Red = 000
Green = 000
Blue = 255
Rainbow = 0
elseif x > 599 and y > 369 then
Red = 000
Green = 000
Blue = 000
Rainbow = 0
elseif x > 599 and y > 333 then
Red = 000
Green = 255
Blue = 000
Rainbow = 0
elseif x > 599 and y > 297 then
Red = 255
Blue = 255
Green = 000
Rainbow = 0
elseif x > 599 and y > 261 then
Red = 255
Blue = 000
Green = 255
Rainbow = 0
elseif x > 599 and y > 225 then
Red = 000
Blue = 255
Green = 255
Rainbow = 0
elseif x > 599 and y > 189 then
Red = 255
Blue = 000
Green = 000
Rainbow = 0
elseif x > 599 and y > 153 then
XX = 1
elseif x > 599 and y > 117 then
XX = 2
elseif x > 599 and y > 81 then
XX = 3
elseif x > 599 and y > 7 and y < 77 then
y = mouseY();
spriteMove(Slider, 600, y - 6)
PPP = toReal(y)
PPP = ((PPP - 6.0) / (77.0 - 6.0)) * 255.0
elseif x < 3 and y < 3 then
repeat 999 times
print("")
done;
elseif prev_x >= 0 and prev_y >= 0 and x >= 0 and y >= 0 then
color(Red, Green, Blue, PPP)
if XX == 1 or XX == 2 or XX == 3 then
line(prev_x, prev_y, x, y);

if XX == 2 or XX == 3 then
line(prev_x + 1, prev_y, x + 1, y)
line(prev_x - 1, prev_y, x - 1, y)
line(prev_x, prev_y + 1, x, y + 1)
line(prev_x, prev_y - 1, x, y - 1)
line(prev_x + 2, prev_y, x + 2, y)
line(prev_x - 2, prev_y, x - 2, y)
line(prev_x, prev_y + 2, x, y + 2)
line(prev_x, prev_y - 2, x, y - 2)

if XX == 3 then
line(prev_x + 3, prev_y, x + 3, y)
line(prev_x - 3, prev_y, x - 3, y)
line(prev_x, prev_y + 3, x, y + 3)
line(prev_x, prev_y - 3, x, y - 3)
line(prev_x + 4, prev_y, x + 4, y)
line(prev_x - 4, prev_y, x - 4, y)
line(prev_x, prev_y + 4, x, y + 4)
line(prev_x, prev_y - 4, x, y - 4)
line(prev_x + 5, prev_y, x + 5, y)
line(prev_x - 5, prev_y, x - 5, y)
line(prev_x, prev_y + 5, x, y + 5)
line(prev_x, prev_y - 5, x, y - 5)

endif;
endif;
endif;
endif;
prev_x = x;
prev_y = y;

elseif mouseButtonPressed(3)then

x = mouseX();
y = mouseY();

if x >= 599 and y >= 441 then
BG = 1
RedBG1 = 255
GreenBG1 = 255
BlueBG1 = 255
RedBG = toReal(RedBG1)
BlueBG = toReal(BlueBG1)
GreenBG = toReal(GreenBG1)
RedBG2 = RedBG/255*BGD
GreenBG2 = GreenBG/255*BGD
BlueBG2 = BlueBG/255*BGD
elseif x > 599 and y > 405 then
BG = 1
RedBG1 = 000
GreenBG1 = 000
BlueBG1 = 255
RedBG = toReal(RedBG1)
BlueBG = toReal(BlueBG1)
GreenBG = toReal(GreenBG1)
RedBG2 = RedBG/255*BGD
GreenBG2 = GreenBG/255*BGD
BlueBG2 = BlueBG/255*BGD
elseif x > 599 and y > 369 then
RedBG1 = 000
BlueBG1 = 000
GreenBG1 = 000
RedBG = toReal(RedBG1)
BlueBG = toReal(BlueBG1)
GreenBG = toReal(GreenBG1)
RedBG2 = RedBG/255*BGD
GreenBG2 = GreenBG/255*BGD
BlueBG2 = BlueBG/255*BGD
BG=1
elseif x > 599 and y > 333 then
BG = 1
RedBG1 = 000
GreenBG1 = 255
BlueBG1 = 000
RedBG = toReal(RedBG1)
BlueBG = toReal(BlueBG1)
GreenBG = toReal(GreenBG1)
RedBG2 = RedBG/255*BGD
GreenBG2 = GreenBG/255*BGD
BlueBG2 = BlueBG/255*BGD
elseif x > 599 and y > 297 then
BG = 1
RedBG1 = 255
BlueBG1 = 255
GreenBG1 = 000
RedBG = toReal(RedBG1)
BlueBG = toReal(BlueBG1)
GreenBG = toReal(GreenBG1)
RedBG2 = RedBG/255*BGD
GreenBG2 = GreenBG/255*BGD
BlueBG2 = BlueBG/255*BGD
elseif x > 599 and y > 261 then
BG = 1
RedBG1 = 255
BlueBG1 = 000
GreenBG1 = 255
RedBG = toReal(RedBG1)
BlueBG = toReal(BlueBG1)
GreenBG = toReal(GreenBG1)
RedBG2 = RedBG/255*BGD
GreenBG2 = GreenBG/255*BGD
BlueBG2 = BlueBG/255*BGD
elseif x > 599 and y > 225 then
BG = 1
RedBG1 = 000
BlueBG1 = 255
GreenBG1 = 255
RedBG = toReal(RedBG1)
BlueBG = toReal(BlueBG1)
GreenBG = toReal(GreenBG1)
RedBG2 = RedBG/255*BGD
GreenBG2 = GreenBG/255*BGD
BlueBG2 = BlueBG/255*BGD
elseif x > 599 and y > 189 then
BG = 1
RedBG1 = 255
BlueBG1 = 000
GreenBG1 = 000
RedBG = toReal(RedBG1)
BlueBG = toReal(BlueBG1)
GreenBG = toReal(GreenBG1)
RedBG2 = RedBG/255*BGD
GreenBG2 = GreenBG/255*BGD
BlueBG2 = BlueBG/255*BGD
elseif x > 599 and y > 153 then
Rainbow = 1
elseif x > 599 and y > 117 then
Red = 0
Green = 0
Blue = 0
Red1 = 0
Green1 = -1
Blue1 = -1
Rainbow = 2
elseif x > 599 and y > 81 then
Rainbow = 3
DDD = 254
elseif x > 599 and y > 7 and y < 77 then
DEF = mouseY();
BG = 1
spriteMove(SliderBG, 600, DEF - 6)
BGD = toReal(DEF)
BGD = ((BGD - 6.0) / (77.0 - 6.0)) * 255.0
RedBG = toReal(RedBG1)
BlueBG = toReal(BlueBG1)
GreenBG = toReal(GreenBG1)
RedBG2 = RedBG/255*BGD
GreenBG2 = GreenBG/255*BGD
BlueBG2 = BlueBG/255*BGD
elseif x < 5 and y < 5 then
repeat 9 times
RAINBOW2()
background(Red, Green, Blue)
cls()
wait (1)
done;
elseif prev_x >= 0 and prev_y >= 0 and x >= 0 and y >= 0 then
color(Red, Green, Blue, PPP)
spriteMove(Box, x, y)
spriteVisible(Box, FALSE)
while mouseButtonPressed(3) do
x = mouseX();
y = mouseY();

Z()
done
line(prev_x, prev_y, prev_x, y)
line(prev_x, prev_y, x, prev_y)
line(prev_x, y, x, y)
line(x, prev_y, x, y)
if XX == 2 and ZC == 1 then
for p = 1 to 5 do
line(prev_x + p, prev_y + p, prev_x + p, y + p)
line(prev_x + p, prev_y + p, x + p, prev_y + p)
line(prev_x + p, y + p, x + p, y + p)
line(x + p, prev_y + p, x + p, y + p)
done;
elseif XX == 3 and ZD == 1 then
for p = 1 to 10 do
line(prev_x + p, prev_y + p, prev_x + p, y + p)
line(prev_x + p, prev_y + p, x + p, prev_y + p)
line(prev_x + p, y + p, x + p, y + p)
line(x + p, prev_y + p, x + p, y + p)
done;
endif;
else
prev_x = x;
prev_y = y;
endif;
else
prev_x = -1;
prev_y = -1;
endif;

if BG == 1 then
background(RedBG2, GreenBG2, BlueBG2)
cls()
BG = 0
endif;
if Rainbow == 1 then
RAINBOW1()
elseif Rainbow == 2 then
RAINBOW2()
elseif Rainbow == 3 then
RAINBOW3()
endif;

wait(40);
done;