[Py]一个贪吃蛇小游戏的雏形
来源:互联网 发布:保罗加索尔总决赛数据 编辑:程序博客网 时间:2024/05/29 13:20
# -*- coding: utf-8 -*-# file : pygame1.py#----2013年12月11日------#----2013年12月12日------import pygamefrom pygame.locals import *from sys import exitfrom random import randintpygame.init()DISPLAYSURF = pygame.display.set_mode((640,480))pygame.display.set_caption('Pygame1')FPSCLOCK=pygame.time.Clock()FPS=10startx=50starty=50directA='right'directB='left'snackA=[{'x':startx,'y':starty},{'x':startx-1,'y':starty},\{'x':startx-2,'y':starty},{'x':startx-3,'y':starty},\{'x':startx-4,'y':starty} ]snackB=[{'x':startx,'y':starty},{'x':startx-1,'y':starty},\{'x':startx-2,'y':starty},{'x':startx-3,'y':starty},\{'x':startx-4,'y':starty} ]lengthA=6lengthB=6applex=2appley=2while True: for event in pygame.event.get(): if event.type == QUIT: pygame.quit() exit() if event.type == KEYDOWN: if event.key==K_q: pygame.quit() exit() elif event.key==K_UP: directA='up' elif event.key==K_DOWN: directA='down' elif event.key==K_LEFT: directA='left' elif event.key==K_RIGHT: directA='right' elif event.key==K_w: directB='up' elif event.key==K_s: directB='down' elif event.key==K_a: directB='left' elif event.key==K_d: directB='right' if directA=='up': NewheadA={'x':snackA[0]['x'],'y':snackA[0]['y']-1} elif directA=='down': NewheadA={'x':snackA[0]['x'],'y':snackA[0]['y']+1} elif directA=='left': NewheadA={'x':snackA[0]['x']-1,'y':snackA[0]['y']} elif directA=='right': NewheadA={'x':snackA[0]['x']+1,'y':snackA[0]['y']} if directB=='up': NewheadB={'x':snackB[0]['x'],'y':snackB[0]['y']-1} elif directB=='down': NewheadB={'x':snackB[0]['x'],'y':snackB[0]['y']+1} elif directB=='left': NewheadB={'x':snackB[0]['x']-1,'y':snackB[0]['y']} elif directB=='right': NewheadB={'x':snackB[0]['x']+1,'y':snackB[0]['y']} if snackA[0]['x']==applex and snackA[0]['y']==appley: applex=randint(0,50) appley=randint(0,50) lengthA=lengthA+1; if snackB[0]['x']==applex and snackB[0]['y']==appley: applex=randint(0,50) appley=randint(0,50) lengthB=lengthB+1; snackA.insert(0,NewheadA) snackB.insert(0,NewheadB) DISPLAYSURF.fill((0,0,0)) #draw snack: for point in snackA[0:lengthA]: x=point['x']*5 y=point['y']*5 Rect = pygame.Rect(x, y, 5, 5) pygame.draw.rect(DISPLAYSURF, (0,255,0), Rect) for point in snackB[0:lengthB]: x=point['x']*5 y=point['y']*5 Rect = pygame.Rect(x, y, 5, 5) pygame.draw.rect(DISPLAYSURF, (255,0,0), Rect) # #draw apple x=applex*5 y=appley*5 Rect = pygame.Rect(x,y,5,5) pygame.draw.rect(DISPLAYSURF,(255,255,255),Rect) # pygame.display.update() FPSCLOCK.tick(FPS)
。。。。
接下来,应该做成面向对象,再丰富一下细节。。= =
0 0
- [Py]一个贪吃蛇小游戏的雏形
- 一个贪吃蛇的小游戏(c++API)
- 一个unix的贪吃蛇小游戏
- 自制一个贪吃蛇小游戏
- 一个贪吃蛇小游戏 用 C WINAPI 写的
- limej 写一个HTML5的贪吃蛇小游戏
- c语言控制台的一个贪吃蛇小游戏
- 用java编一个贪吃蛇小游戏
- js实现的贪吃蛇的小游戏
- 基于控制台的贪吃蛇小游戏
- Java写的小游戏贪吃蛇代码
- 17行代码的贪吃蛇小游戏
- 17行代码的贪吃蛇小游戏
- js写的贪吃蛇小游戏
- 用链表做控制台下的贪吃蛇小游戏
- javascript做的贪吃蛇小游戏
- JS实现简单的贪吃蛇小游戏
- 基于JS、canvas的小游戏--贪吃蛇
- PHP Notice: Undefined index: ... 问题的解决方法:
- nefu 117 很简单的素数定理
- DIV中嵌套多个div,div下移ie浏览器兼容问题
- Android中ListView用法解析
- 互联网创业公司如何解决人员流失率过高的问题?
- [Py]一个贪吃蛇小游戏的雏形
- _bstr_t 使用出现错误
- linux 自己编写脚本,开机自动启动
- Nachos系统编译和安装---操作系统高级教程实验一
- Mybatis 之 select
- 站在hadoop上看hive(公司讲座)
- 动态链接库DLL
- Servlet容器之安全多线程问题
- 关于mount nfs时-o nolock的问题