资源简介
【实例简介】
【实例
【核心代码】
【实例
【核心代码】
代码片段和文件信息
# encoding: utf-8
import pygame
import sys
import random
# 全局定义
SCREEN_X = 600
SCREEN_Y = 600
# 蛇类
# 点以25为单位
class Snake(object):
# 初始化各种需要的属性 [开始时默认向右/身体块x5]
def __init__(self):
self.dirction = pygame.K_RIGHT
self.body = []
for x in range(5):
self.addnode()
# 无论何时 都在前端增加蛇块
def addnode(self):
left top = (0 0)
if self.body:
left top = (self.body[0].left self.body[0].top)
node = pygame.Rect(left top 25 25)
if self.dirction == pygame.K_LEFT:
node.left -= 25
elif self.dirction == pygame.K_RIGHT:
node.left += 25
elif self.dirction == pygame.K_UP:
node.top -= 25
elif self.dirction == pygame.K_DOWN:
node.top += 25
self.body.insert(0 node)
# 删除最后一个块
def delnode(self):
self.body.pop()
# 死亡判断
def isdead(self):
# 撞墙
if self.body[0].x not in range(SCREEN_X):
return True
if self.body[0].y not in range(SCREEN_Y):
return True
# 撞自己
if self.body[0] in self.body[1:]:
return True
return False
# 移动!
def move(self):
self.addnode()
self.delnode()
# 改变方向 但是左右、上下不能被逆向改变
def changedirection(self curkey):
LR = [pygame.K_LEFT pygame.K_RIGHT]
UD = [pygame.K_UP pygame.K_DOWN]
if curkey in LR+UD:
if (curkey in LR) and (self.dirction in LR):
return
if (curkey in UD) and (self.dirction in UD):
return
self.dirction = curkey
# 食物类
# 方法: 放置/移除
# 点以25为单位
class Food:
def __init__(self):
self.rect = pygame.Rect(-25 0 25 25)
def remove(self):
self.rect.x = -25
def set(self):
if self.rect.x == -25:
allpos = []
# 不靠墙太近 25 ~ SCREEN_X-25 之间
for pos in range(25 SCREEN_X-25 25):
allpos.append(pos)
self.rect.left = random.choice(allp
相关资源
- python pygame 自制飞机大战游戏(加入
- 《升级》扑克牌游戏——Python实现
- 使用python编写的打飞机游戏源码
- 扑克小游戏python代码
- Python和Pygame游戏开发
- 一个猥琐的贪吃蛇Python pygame
- XATU_Project.zip
- pygame小游戏-全民打飞机(关卡选择飞
- 关于吃豆人的游戏代码python
- Python小游戏我自己写的
- Python贪吃蛇源码+背景音乐+中文字体
- 基于python的小游戏 含源代码
- python太空大战游戏 源代码完整版
- Python微信打飞机小游戏
- 连连看.zip
- 使用python自己实现神经网络操纵赛车
- Python开发五子棋小游戏
- python版植物大战僵尸源码
- Python雷电飞机大战小游戏
- python飞机大战项目.zip
- python推箱子游戏
- python贪吃蛇进阶版完整代码
- python游戏编程入门--高清版
- Python编写的超级马里奥游戏
- python2.7基于tkinter下实现拼图小游戏
- python实现游戏外星人入侵
- Python 摩擦摩擦玻璃球游戏素材
- Python游戏编程入门187365
- python小游戏
- Python - 弹弹堂小游戏
评论
共有 条评论