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..2a5c2d2 --- /dev/null +++ b/snake.py @@ -0,0 +1,78 @@ +import pygame +from pygame import locals +import random +# 初始化pygame,为使用硬件做准备 +pygame.init() +score=0 +# 创建一个窗口 +screen = pygame.display.set_mode((660, 480)) +x,y=240,120 +apple_x=360 +apple_y=300 +list=[(210, 120),(180, 120),(180, 90),(x,y)] +# 背景 +#snak_head="right" +#snak=right +background = pygame.image.load('bg.png') +right = pygame.image.load('right.png') +food = pygame.image.load('apple.png') +body = pygame.image.load('body.png') +left= pygame.image.load('left.png') +up = pygame.image.load('up.png') +down = pygame.image.load('down.png') +my_font=pygame.font.Font("neuropol.ttf",18) +snak_head="right" +snak=right +redfrtt=pygame.time.Clock() +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 snak_head!="left": + snak_head="right" + snak=right + if event.key==locals.K_UP and snak_head!="down": + snak_head="up" + snak=up + if event.key==locals.K_DOWN and snak_head!="up": + snak_head="down" + snak=down + if event.key==locals.K_LEFT and snak_head!="right": + snak_head="left" + snak=left + if snak_head=='left': + x-=30 + if snak_head=='right': + x+=30 + if snak_head=='up': + y-=30 + if snak_head=='down': + y+=30 + list.append((x,y)) + + if x==apple_x and y==apple_y: + nom1=random.randint(0,21) + nom2=random.randint(0,15) + apple_x=nom1*30 + apple_y=nom2*30 + score=score+10 + else: + list.pop(0) + # 将背景图画上去 + screen.blit(background, (0, 0)) + # 将贪吃蛇画上去 + screen.blit(snak, list[-1]) + # 将贪吃蛇的身体画上去 + for i in range(len(list)-1): + screen.blit(body,list[i]) + # 将果实画上去 + screen.blit(food, (apple_x, apple_y)) + inof="SCORE:"+str(score) + text=my_font.render(inof,True,(0,0,0)) + screen.blit(text,(540,10)) + + # 刷新画面 + pygame.display.update() + redfrtt.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