from math import * from ion import * from kandinsky import * import random import time def setup(): global gauche,speed,blank,barre,j2,ball,x,y,ballx,bally,points,play,multi,j2x,j2y,iavar gauche = True speed = 2 blank = color(0,0,0) barre = color(250,250,250) j2 = color(250,250,250) ball = color(127,127,127) x = 0 y = random.randint(0,200) j2x = 300 j2y = random.randint(0,200) ballx = 300 bally = random.randint(0,200) points = 0 play = True joueurs = input("Nbr de joueurs (1 / 2) : ") iavar=ia() if joueurs == "2": multi=True else: multi=False def circle(x,y,color,taille): fill_rect(x,y,taille,taille,color) return for xl in range(x-taille,x+taille): for yl in range(y-taille,y+taille): set_pixel(xl,yl,color) def color_get_zone(x,y,color,taille): for xl in range(x,x+taille): for yl in range(y,y+taille): if get_pixel(xl,yl) == color: return True return False def move(): fill_rect(0,0,350,250,blank) draw_string("Pong",140,0) circle(x,y,barre,20) if multi: circle(j2x,j2y,j2,20) circle(ballx,bally,ball,20) def ballmove(): global ballx, bally, points,speed,gauche if gauche: ballx-=speed else: ballx+=speed if color_get_zone(ballx,bally,barre,20): points+=1 speed+=1 if gauche: gauche=False else: gauche=True #ballx=1000 #if multi: bally=random.randint(0,200) if gauche==False and ballx > 300: if multi: draw_string("Perdu, "+str(points)+" points",90,100) print("Perdu, "+str(points)+" points") return "break" else: gauche=True bally=random.randint(0,200) if ballx < 0: draw_string("Perdu, "+str(points)+" points",90,100) print("Perdu, "+str(points)+" points") return "break" class ia(): def __init__(self): self.iax=300 self.iay=random.randint(0,200) def iamove(self): print(bally) print(self.iay) if bally<self.iay: self.iay=self.iay-speed if bally>self.iay: self.iay=self.iay+speed circle(self.iax,self.iay,barre,20) setup() ballmove() move() while True: while True: if play: value = ballmove() if value == "break": break #if True: if keydown(KEY_UP): y-=speed if keydown(KEY_DOWN): y+=speed if keydown(KEY_HOME): j2y-=speed if keydown(KEY_ONOFF): j2y+=speed move() if multi==False: iavar.iamove() if keydown(KEY_OK): if play: play=False draw_string("Pause",135,100) time.sleep(.5) else: play=True move() time.sleep(.5) #input("OK pour continuer") setup()