From 6cfe9532dda261aaba6930e18d4dceab85d1a168 Mon Sep 17 00:00:00 2001 From: spm23 Date: Sat, 2 Dec 2017 22:18:05 +0000 Subject: [PATCH 1/5] Create snakegame.py --- Snake/snakegame.py | 39 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100644 Snake/snakegame.py diff --git a/Snake/snakegame.py b/Snake/snakegame.py new file mode 100644 index 0000000..6b93e2c --- /dev/null +++ b/Snake/snakegame.py @@ -0,0 +1,39 @@ +import pygame +import random +import sys +from pygame.locals import * +def collide(x1, x2, y1, y2, w1, w2, h1, h2): + if x1+w1>x2 and x1y2 and y1= 2: + if collide(xs[0], xs[i], ys[0], ys[i], 20, 20, 20, 20):die(s, score) + i-= 1 + if collide(xs[0], applepos[0], ys[0], applepos[1], 20, 10, 20, 10):score+=1;xs.append(700);ys.append(700);applepos=(random.randint(0,590),random.randint(0,590)) + if xs[0] < 0 or xs[0] > 580 or ys[0] < 0 or ys[0] > 580: die(s, score) + i = len(xs)-1 + while i >= 1: + xs[i] = xs[i-1];ys[i] = ys[i-1];i -= 1 + if dirs==0:ys[0] += 20 + elif dirs==1:xs[0] += 20 + elif dirs==2:ys[0] -= 20 + elif dirs==3:xs[0] -= 20 + s.fill((255, 255, 255)) + for i in range(0, len(xs)): + s.blit(img, (xs[i], ys[i])) + s.blit(appleimage, applepos);t=f.render(str(score), True, (0, 0, 0));s.blit(t, (10, 10));pygame.display.update() + + From cc881b208554aa2e214bcacec3ce211778ce2e29 Mon Sep 17 00:00:00 2001 From: SALIL MISHRA Date: Sat, 2 Dec 2017 23:01:15 +0000 Subject: [PATCH 2/5] Update snakegame.py White spaces removed. --- Snake/snakegame.py | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) diff --git a/Snake/snakegame.py b/Snake/snakegame.py index 6b93e2c..ca1441d 100644 --- a/Snake/snakegame.py +++ b/Snake/snakegame.py @@ -26,14 +26,12 @@ def die(screen, score): if xs[0] < 0 or xs[0] > 580 or ys[0] < 0 or ys[0] > 580: die(s, score) i = len(xs)-1 while i >= 1: - xs[i] = xs[i-1];ys[i] = ys[i-1];i -= 1 - if dirs==0:ys[0] += 20 - elif dirs==1:xs[0] += 20 - elif dirs==2:ys[0] -= 20 - elif dirs==3:xs[0] -= 20 - s.fill((255, 255, 255)) + xs[i]=xs[i-1];ys[i]=ys[i-1];i-= 1 + if dirs==0:ys[0]+= 20 + elif dirs==1:xs[0]+= 20 + elif dirs==2:ys[0]-= 20 + elif dirs==3:xs[0]-= 20 + s.fill((255,255,255)) for i in range(0, len(xs)): s.blit(img, (xs[i], ys[i])) s.blit(appleimage, applepos);t=f.render(str(score), True, (0, 0, 0));s.blit(t, (10, 10));pygame.display.update() - - From 1a6499d079c25e0d7691c96552d862d228d1a9cc Mon Sep 17 00:00:00 2001 From: SALIL MISHRA Date: Mon, 4 Dec 2017 01:44:43 +0000 Subject: [PATCH 3/5] Update snakegame.py --- Snake/snakegame.py | 63 +++++++++++++++++++++++++++++++++++----------- 1 file changed, 49 insertions(+), 14 deletions(-) diff --git a/Snake/snakegame.py b/Snake/snakegame.py index ca1441d..c09e565 100644 --- a/Snake/snakegame.py +++ b/Snake/snakegame.py @@ -3,35 +3,70 @@ import sys from pygame.locals import * def collide(x1, x2, y1, y2, w1, w2, h1, h2): - if x1+w1>x2 and x1y2 and y1x2 and x1y2 and y1= 2: - if collide(xs[0], xs[i], ys[0], ys[i], 20, 20, 20, 20):die(s, score) + if collide(xs[0], xs[i], ys[0], ys[i], 20, 20, 20, 20): + die(s, score) i-= 1 - if collide(xs[0], applepos[0], ys[0], applepos[1], 20, 10, 20, 10):score+=1;xs.append(700);ys.append(700);applepos=(random.randint(0,590),random.randint(0,590)) + if collide(xs[0], applepos[0], ys[0], applepos[1], 20, 10, 20, 10): + score+=1; + xs.append(700); + ys.append(700); + applepos=(random.randint(0,590),random.randint(0,590)) if xs[0] < 0 or xs[0] > 580 or ys[0] < 0 or ys[0] > 580: die(s, score) i = len(xs)-1 while i >= 1: xs[i]=xs[i-1];ys[i]=ys[i-1];i-= 1 if dirs==0:ys[0]+= 20 - elif dirs==1:xs[0]+= 20 - elif dirs==2:ys[0]-= 20 - elif dirs==3:xs[0]-= 20 + elif dirs==1: + xs[0]+= 20 + elif dirs==2: + ys[0]-= 20 + elif dirs==3: + xs[0]-= 20 s.fill((255,255,255)) for i in range(0, len(xs)): s.blit(img, (xs[i], ys[i])) - s.blit(appleimage, applepos);t=f.render(str(score), True, (0, 0, 0));s.blit(t, (10, 10));pygame.display.update() + s.blit(appleimage, applepos); + t=f.render(str(score), True, (0, 0, 0)); + s.blit(t, (10, 10)); + pygame.display.update() From 8e2f2faa5572ff57752c15dfd4b0546ee6e402de Mon Sep 17 00:00:00 2001 From: SALIL MISHRA Date: Mon, 4 Dec 2017 02:05:03 +0000 Subject: [PATCH 4/5] Update snakegame.py --- Snake/snakegame.py | 92 ++++++++++++++++++++++++---------------------- 1 file changed, 48 insertions(+), 44 deletions(-) diff --git a/Snake/snakegame.py b/Snake/snakegame.py index c09e565..f78e6a5 100644 --- a/Snake/snakegame.py +++ b/Snake/snakegame.py @@ -2,71 +2,75 @@ import random import sys from pygame.locals import * -def collide(x1, x2, y1, y2, w1, w2, h1, h2): +def collide(x1,x2,y1,y2,w1,w2,h1,h2): if x1+w1>x2 and x1y2 and y1= 2: - if collide(xs[0], xs[i], ys[0], ys[i], 20, 20, 20, 20): - die(s, score) - i-= 1 - if collide(xs[0], applepos[0], ys[0], applepos[1], 20, 10, 20, 10): + elif e.type==KEYDOWN: + if e.key==K_UP and dirs!=0: + dirs=2 + elif e.key==K_DOWN and dirs!=2: + dirs=0 + elif e.key==K_LEFT and dirs!=1: + dirs=3 + elif e.key==K_RIGHT and dirs!=3: + dirs=1 + i=len(xs)-1 + while i>=2: + if collide(xs[0],xs[i],ys[0],ys[i],20,20,20,20): + die(s,score) + i-=1 + if collide(xs[0],applepos[0],ys[0],applepos[1], 20, 10, 20, 10): score+=1; xs.append(700); ys.append(700); applepos=(random.randint(0,590),random.randint(0,590)) - if xs[0] < 0 or xs[0] > 580 or ys[0] < 0 or ys[0] > 580: die(s, score) - i = len(xs)-1 + if xs[0] < 0 or xs[0] > 580 or ys[0] < 0 or ys[0] > 580: + die(s,score) + i=len(xs)-1 while i >= 1: - xs[i]=xs[i-1];ys[i]=ys[i-1];i-= 1 - if dirs==0:ys[0]+= 20 + xs[i]=xs[i-1]; + ys[i]=ys[i-1]; + i-=1 + if dirs==0: + ys[0]+=20 elif dirs==1: - xs[0]+= 20 + xs[0]+=20 elif dirs==2: - ys[0]-= 20 + ys[0]-=20 elif dirs==3: - xs[0]-= 20 + xs[0]-=20 s.fill((255,255,255)) - for i in range(0, len(xs)): - s.blit(img, (xs[i], ys[i])) - s.blit(appleimage, applepos); - t=f.render(str(score), True, (0, 0, 0)); - s.blit(t, (10, 10)); + for i in range(0,len(xs)): + s.blit(img,(xs[i],ys[i])) + s.blit(appleimage,applepos); + t=f.render(str(score),True,(0,0,0)); + s.blit(t,(10,10)); pygame.display.update() From 8e9f589ca4cba5ada10ada82ca3325d228e1844a Mon Sep 17 00:00:00 2001 From: SALIL MISHRA Date: Mon, 4 Dec 2017 03:07:34 +0000 Subject: [PATCH 5/5] Update snakegame.py Reduced parameters of function collide. --- Snake/snakegame.py | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/Snake/snakegame.py b/Snake/snakegame.py index f78e6a5..336073e 100644 --- a/Snake/snakegame.py +++ b/Snake/snakegame.py @@ -2,7 +2,11 @@ import random import sys from pygame.locals import * -def collide(x1,x2,y1,y2,w1,w2,h1,h2): +def collide(x1,x2,y1,y2,wh): + w1=20; + w2=wh; + h2=wh; + h1=20; if x1+w1>x2 and x1y2 and y1=2: - if collide(xs[0],xs[i],ys[0],ys[i],20,20,20,20): + if collide(xs[0],xs[i],ys[0],ys[i],20): die(s,score) i-=1 - if collide(xs[0],applepos[0],ys[0],applepos[1], 20, 10, 20, 10): + if collide(xs[0],applepos[0],ys[0],applepos[1],10): score+=1; xs.append(700); ys.append(700);