diff --git a/apple.png b/apple.png new file mode 100644 index 0000000..e58cb8f Binary files /dev/null and b/apple.png differ diff --git a/bg.png b/bg.png new file mode 100644 index 0000000..a085237 Binary files /dev/null and b/bg.png differ diff --git a/body.png b/body.png new file mode 100644 index 0000000..a254609 Binary files /dev/null and b/body.png differ diff --git a/down.png b/down.png new file mode 100644 index 0000000..41d1525 Binary files /dev/null and b/down.png differ diff --git a/left.png b/left.png new file mode 100644 index 0000000..365dffe Binary files /dev/null and b/left.png differ diff --git a/neuropol.ttf b/neuropol.ttf new file mode 100644 index 0000000..ddefb40 Binary files /dev/null and b/neuropol.ttf differ diff --git a/right.png b/right.png new file mode 100644 index 0000000..e77639a Binary files /dev/null and b/right.png differ diff --git a/snake.py b/snake.py new file mode 100644 index 0000000..e9b83f8 --- /dev/null +++ b/snake.py @@ -0,0 +1,82 @@ +import pygame +from pygame import locals +import random + +# 初始化pygame,为使用pygame做准备 +pygame.init() + +beijing = pygame.image.load("bg.png") +right = pygame.image.load("right.png") +left = pygame.image.load("left.png") +up = pygame.image.load("up.png") +down = pygame.image.load("down.png") +foot = pygame.image.load("apple.png") +body = pygame.image.load("body.png") +my_font= pygame.font.Font('neuropol.ttf',18) +screen=pygame.display.set_mode((360,300)) +screen=pygame.display.set_mode((660,480)) +FPSCLCOLCK=pygame.time.Clock() + +x,y=240,120 +po=[(180,90),(180,120),(210,120),(x,y)] +apple_x=360 +apple_y=300 +sg = "right" +snake_hand = right +score=0 +while True: + for event in pygame.event.get(): + if event.type == locals.QUIT: + exit() + elif event.type == locals.KEYDOWN: + if event.key == locals.K_RIGHT and sg != "left": + sg="right" + snake_hand = right + if event.key == locals.K_LEFT and sg != "right": + sg="left" + snake_hand = left + if event.key == locals.K_DOWN and sg != "up": + sg="down" + snake_hand = down + if event.key == locals.K_UP and sg != "down": + sg="up" + snake_hand = up + if sg =="right": + x+= 30 + elif sg == "left": + x-=30 + elif sg == "up": + y-=30 + else: + y+=30 + + + + + po.append((x,y)) + if x==apple_x and y==apple_y: + num1=random.randint(1,22) + num2=random.randint(1,16) + apple_x=num1*30-30 + apple_y=num2*30-30 + score+=10 + else: + po.pop(0) + if x<0 or x>630 or y<0 or y>450: + exit() + screen.blit(beijing,(0,0)) + + + screen.blit(snake_hand,po[-1]) + for i in range(len(po)-1): + screen.blit(body,po[i]) + + + + + screen.blit(foot,(apple_x,apple_y)) + info = "score"+str(score) + text = my_font.render(info,True,(0,0,0)) + screen.blit(text,(540,10)) + pygame.display.update() + FPSCLCOLCK.tick(3) \ No newline at end of file diff --git a/up.png b/up.png new file mode 100644 index 0000000..44f2e28 Binary files /dev/null and b/up.png differ