# [0] = guide # [9] = Colors # while in colors menu, UP key = Random background from math import * from random import * from random import randint as RAND from kandinsky import * from kandinsky import fill_rect as F from kandinsky import draw_string as STR from ion import * from time import * black=(0,0,0) white=(255,)*3 light_blue = (154, 144, 233) mypallette=[ 'blue','red','green', 'yellow','brown','black', 'white','pink','orange', 'purple','gray',"cyan", (224, 76, 103),(129, 14, 81), (85, 249, 227),(145, 183, 224), (190, 195, 28),(65, 44, 76), (13, 98, 65),(56, 200, 232), (196, 255, 51),(243, 247, 167), (201, 157, 33),(130, 253, 163), (246, 231, 241),(67, 63, 63), (6, 236, 200),(81, 236, 16), (76, 26, 5),(49, 12, 15), (100, 51, 44),(7, 21, 24), (85, 76, 93),(197, 203, 236), (208, 66, 24),(249, 136, 118) ] x=100 y=100 w=20 h=15 c=black p=[x,y] p_copy=[x,y,w,h,c] whc=[w,h,c] mysketch=[] mysketch_dimensions=[] mysketch_copy=[] p_all=[x,y,w,h,c] mysketch_all=[] bg=light_blue sketch_fun=0 def clear_all(): F(0,0,322,222,bg) def refresh(): # global mysketch,p,x,y,w,h,c,bg F(0,0,322,222,bg) for i in mysketch_all: F(*i) # for i in mysketch_copy: # F(*i) def draw_sketch(): global mysketch_copy,p_copy,x,y,w,h,c,bg F(0,0,322,222,bg) for i in mysketch_copy: F(*i) def print_guide(): fc=[ 'green','yellow',(0,255,255), 'white','pink','orange',(150,255,120), 'purple','gray',(0,255,255), (RAND(0,255),RAND(50,255),RAND(50,255)),(RAND(50,255),RAND(50,255),RAND(50,255)), (RAND(0,255),RAND(50,255),RAND(50,255)),(RAND(50,255),RAND(50,255),RAND(50,255)) ] F(0,0,322,222,black) STR("[ARROWS] = MOVE",2,5,fc[RAND(0,len(fc)-1)],black) STR("[OK]=SET PIECE,*[ANS]=SET SKETCH",2,20,fc[RAND(0,len(fc)-1)],black) STR("HOLD [ANS]=FAST SET",2,35,fc[RAND(0,len(fc)-1)],black) STR("[(],[)]=[-],[+] WIDTH",2,50,fc[RAND(0,len(fc)-1)],black) STR("[*],[/]=[-],[+] HEIGHT",2,65,fc[RAND(0,len(fc)-1)],black) STR("[EXE]=EXIT & PRINT DATA",2,80,fc[RAND(0,len(fc)-1)],black) STR("[BACKSPACE]=DELETE LAST PIECE",2,95,fc[RAND(0,len(fc)-1)],black) STR("HOLD [SHIFT]=FAST SHAPE CHANGE",2,110,fc[RAND(0,len(fc)-1)],black) STR("HOLD [**2] = FAST MOVE",2,125,fc[RAND(0,len(fc)-1)],black) STR("[9] = PALLETTE",2,140,fc[RAND(0,len(fc)-1)],black) STR("[pi] = SKETCH FUN",2,155,fc[RAND(0,len(fc)-1)],black) STR("[SHIFT]+[VAR] = DELETE ALL!",2,170,fc[RAND(0,len(fc)-1)],black) STR("[TOOLBOX]= DELETE LAST SKETCH",2,185,fc[RAND(0,len(fc)-1)],black) STR("[0] = HELP/GUIDE",2,200,fc[RAND(0,len(fc)-1)],black) sleep(0.5) F(0,0,322,222,black) print_guide() F(0,0,322,222,bg) while not keydown(KEY_OK) and not keydown(KEY_RIGHT): print_guide() ########### # # PASTE LEVEL TO # EDIT OR ADD TO HERE.. # #example: # #bg= (131, 151, 43) #mysketch_all= [[0, 136, 182, 15, 'blue'], [156, 80, 58, 105, 'blue'], [208, 90, 113, 23, 'blue'], [278, 0, 44, 222, 'blue'], [96, 120, 21, 45, 'brown']] # #F(0,0,322,222,bg) # #for i in mysketch_all: # F(*i) # ################ F(0,0,322,222,bg) t1=0 while not keydown(KEY_EXE): t1+=0.02 F(x,y,w,h,c) p=[x,y] p_copy=[x,y,w,h,c] p_all=[x,y,w,h,c] whc=[w,h,c] if keydown(KEY_OK) and len(mysketch_all)<19 and t1>1: sleep(0.15) mysketch_all.append(p_all) mysketch_copy.append(p_copy) if keydown(KEY_ANS) and sketch_fun==0: sleep(0.1) mysketch.append(p) mysketch_dimensions.append(whc) mysketch_copy.append(p_copy) draw_string(str(len(mysketch)),200,1) if keydown(KEY_LEFT): x-=w+1 if keydown(KEY_RIGHT): x+=w+1 if keydown(KEY_UP): y-=h+1 if keydown(KEY_DOWN): y+=h+1 if keydown(KEY_LEFT) and not keydown(KEY_ANS) and sketch_fun==0: x-=2 refresh() if keydown(KEY_SQUARE): x-=5 if keydown(KEY_RIGHT) and not keydown(KEY_ANS) and sketch_fun==0: x+=2 refresh() if keydown(KEY_SQUARE): x+=5 if keydown(KEY_UP) and not keydown(KEY_ANS) and sketch_fun==0: y-=2 refresh() if keydown(KEY_SQUARE): y-=5 if keydown(KEY_DOWN) and not keydown(KEY_ANS) and sketch_fun==0: y+=2 refresh() if keydown(KEY_SQUARE): y+=5 if len(mysketch)>18: del mysketch[-1] if len(mysketch_all)>6: del mysketch_all[-1] draw_string("Shapes:"+str(len(mysketch_all)),220,1) if keydown(KEY_LEFTPARENTHESIS): w-=1 F(x+w+1,y,1,h,bg) if keydown(KEY_SHIFT): w-=5 F(x+w+1,y,5,h,bg) if keydown(KEY_RIGHTPARENTHESIS): w+=1 if keydown(KEY_SHIFT): w+=5 if keydown(KEY_MULTIPLICATION): h-=1 F(x,y+h+1,w,1,bg) if keydown(KEY_SHIFT): h-=5 F(x,y+h+1,w,5,bg) if keydown(KEY_DIVISION): h+=1 if keydown(KEY_SHIFT): h+=5 if w<2: w=2 if h<2: h=2 if keydown(KEY_BACKSPACE): sleep(0.2) if len(mysketch_all)>0: del mysketch_all[-1] refresh() if len(mysketch)>0: del mysketch[-1] refresh() if keydown(KEY_TOOLBOX): sleep(0.2) if len(mysketch)>0: del mysketch[-1] refresh() if keydown(KEY_IMAGINARY): sleep(0.2) bg=(RAND(0,255),RAND(0,255),RAND(0,255)) refresh() if c==bg: c=(RAND(0,255),RAND(0,255),RAND(0,255)) if keydown(KEY_ZERO): sleep(0.2) x=200 y=200 w=45 h=12 print_guide() if keydown(KEY_ONE): bg=black F(0,0,322,222,bg) if keydown(KEY_THREE): sleep(0.2) c=(255,)*3 if keydown(KEY_FOUR): bg=(255,)*3 F(0,0,322,222,bg) if keydown(KEY_SEVEN): sleep(0.2) c=(255,0,0) if keydown(KEY_EIGHT): sleep(0.2) c=(0,255,0) if x<0: x=0 if x+w>322: x=322-w if y<0: y=0 if y+h>222: y=222-h if w>322: w=322 if h>222: h=222 if keydown(KEY_VAR) and keydown(KEY_SHIFT): sleep(0.2) mysketch=[] mysketch_copy=[] mysketch_all=[] clear_all() draw_string("ALL CLEARED!",150,1,(0,255,0),(0,0,0)) sleep(0.5) draw_string("ALL CLEARED!",150,1,bg,bg) if keydown(KEY_SQRT): draw_sketch() if keydown(KEY_LOG): sleep(0.2) for i in mysketch_all: i[-1]=white refresh() if keydown(KEY_TANGENT): sleep(0.2) for i in mysketch_all: i[-1]=black refresh() if keydown(KEY_NINE): sleep(0.2) F(0, 0, 322, 222, 'brown') F(12, 14, 296, 196, 'black') F(20, 20, 282, 182, 'white') c=5 c2=0 while not keydown(KEY_OK): draw_string("Press [OK] to SELECT & EXIT",20,200,mypallette[c],(0,0,0)) draw_string("USE [ARROWS] to CHANGE COLORS",15,1,(0,255,255),(0,0,0)) if keydown(KEY_RIGHT): sleep(0.2) c+=1 if keydown(KEY_LEFT): sleep(0.2) c-=1 if keydown(KEY_UP): sleep(0.2) c2+=1 bg=mypallette[c2] if keydown(KEY_DOWN): sleep(0.2) c2-=1 bg=mypallette[c2] if c>len(mypallette)-1: c=0 if c<0: c=0 if c2>len(mypallette)-1: c2=0 if c2<0: c2=0 F(37,37,150,100,bg) F(37-2,37,2,100,black) F(37+150,37,2,100,black) F(37,37-2,150,2,black) F(37,37+100,150,2,black) F(47,47,60,20,mypallette[c]) F(47-2,47,2,20,black) F(47+60,47,2,20,black) F(47,47-2,60,2,black) F(47,47+20,60,2,black) sleep(0.2) refresh() c=mypallette[c] F(0,0,322,222,bg) if keydown(KEY_PI): sleep(0.2) sketch_fun+=1 bg=white c=black F(0,0,322,222,bg) w=20 h=20 if sketch_fun>1: sketch_fun=0 if sketch_fun: draw_string("[Sketch]",160,1,(255,1001,00),(0,0,0)) draw_string(str(len(mysketch_copy)),2,1) if keydown(KEY_LEFT): x-=w sleep(0.2) mysketch.append(p) if keydown(KEY_RIGHT): x+=w sleep(0.2) mysketch.append(p) if keydown(KEY_UP): y-=h sleep(0.2) mysketch.append(p) if keydown(KEY_DOWN): y+=h sleep(0.2) mysketch.append(p) if len(mysketch_copy)>200: mysketch_copy=[] if keydown(KEY_FIVE): draw_sketch() mysketch=mysketch_copy draw_string("w,h: "+str(w)+","+str(h),40,1,(0,255,0),(0,0,0)) if len(mysketch_all)>5: if keydown(KEY_OK): sleep(0.2) F(0,0,5,222,(255,0,0)) F(317,0,5,222,(255,0,0)) F(0,0,322,5,(255,0,0)) F(0,217,322,5,(255,0,0)) draw_string("MAX PIECES REACHED!",50,200,(0,0,0),(150,255,255)) sleep(1) refresh() draw_string("press [OK]",100,180,(0,255,0),(0,0,0)) print("") if len(mysketch)>18: del mysketch[-1] print("bg=",bg) print("w,h,c=", w,",",h,",",c) print("mysketch=",mysketch) print("mysketch_all",mysketch_all)