当前位置: 首页 > news >正文

咸阳做网站价格关键词优化排名详细步骤

咸阳做网站价格,关键词优化排名详细步骤,青浦企业网站制作,品牌营销做得好的品牌有哪些一、绪论 贪吃蛇游戏。 已实现功能: 1、上下左右移动; 2、吃食物,随机生成食物; 3、碰撞检测,判断是否游戏结束。 二、代码分享 1、main.py import pygame import sys import food as c_food import snake as c…

一、绪论

贪吃蛇游戏。

已实现功能:

1、上下左右移动;

2、吃食物,随机生成食物;

3、碰撞检测,判断是否游戏结束。

二、代码分享

1、main.py

import pygame
import sys
import food as c_food
import snake as c_snakedef game_over():pygame.quit()sys.exit()def game_start():window_title = 'Snake-AI'window_size = (640, 480)grid_num = (16, 12)                  # 64列,48行grid_size = (40, 40)pygame.init()pg_clock = pygame.time.Clock()main_window = pygame.display.set_mode(window_size)pygame.display.set_caption(window_title)FOOD = c_food.food()SNAKE = c_snake.snake()move_dir = 0                                # 0,1,2,3    上下左右whether_eat = 0                             # 0未吃,1吃了whether_die = 0                             # 0活着,1diebody_list, not_body_list = SNAKE.init_body(grid_num)whether_eat, food_list = FOOD.make_food(1, not_body_list, [])while True:for event in pygame.event.get():if event.type == pygame.KEYDOWN:if event.key == pygame.K_UP and move_dir != 1:move_dir = 0elif event.key == pygame.K_DOWN and move_dir != 0:move_dir = 1elif event.key == pygame.K_LEFT and move_dir != 3:move_dir = 2elif event.key == pygame.K_RIGHT and move_dir != 2:move_dir = 3elif event.type == pygame.QUIT:game_over()not_body_list, body_list, whether_eat, whether_die = SNAKE.move_step(not_body_list, body_list, food_list, move_dir, grid_num)if whether_die == 1:body_list, not_body_list = SNAKE.init_body(grid_num)whether_eat, food_list = FOOD.make_food(1, not_body_list, [])whether_eat, whether_die = 0, 0whether_eat, food_list = FOOD.make_food(whether_eat, not_body_list, food_list)main_window.fill((0, 0, 0))FOOD.draw_food(food_list, main_window, grid_size)SNAKE.draw_body(body_list, main_window, grid_size)pygame.display.update()pg_clock.tick(5)if __name__ == '__main__':game_start()

2、snake.py

import pygameclass snake(object):def __init__(self):self.snake_color = pygame.Color(255, 255, 255)passdef move_step(self, not_body_list, body_list, food_list, move_dir, grid_num):whether_eat = 0whether_die = 0head = body_list[0].copy()if move_dir == 0:head[1] -= 1elif move_dir == 1:head[1] += 1elif move_dir == 2:head[0] -= 1elif move_dir == 3:head[0] += 1whether_die = self.hit_die(body_list, head, grid_num)if whether_die == 1:return not_body_list, body_list, whether_eat, whether_diewhether_eat = self.eat_food(food_list, head)body_list.insert(0, head)not_body_list.remove(head)if whether_eat == 0:not_body_list.append(body_list[-1])body_list.pop()return not_body_list, body_list, whether_eat, whether_diedef eat_food(self, food_list, head):# whether eat foodif head == food_list:return 1else:return 0def init_body(self, grid_num):body_list = [[int(grid_num[0]/2), int(grid_num[1]/2)]]  # 蛇的身体头在前,列行not_body_list = [[i + 1, j + 1] for i in range(grid_num[0]) for j in range(grid_num[1])]not_body_list.remove(body_list[0])return body_list, not_body_listdef draw_body(self, body_list, window, grid_size):for index in body_list:x = (index[0] - 1) * grid_size[0]y = (index[1] - 1) * grid_size[1]rec = (x, y, grid_size[0]-1, grid_size[1]-1)pygame.draw.rect(window, self.snake_color, rec)def hit_die(self, body_list, head, grid_num):# hit wallif head[0] <= 0 or head[0] > grid_num[0]:return 1if head[1] <= 0 or head[1] > grid_num[1]:return 1# hit itselfif head in body_list:return 1return 0

3、food.py

import pygame
import randomclass food(object):def __init__(self):self.food_color = pygame.Color(255, 0, 0)passdef make_food(self, whether_eat, not_body_list, food_list):if whether_eat == 1:position = random.randrange(1, len(not_body_list))food_list = not_body_list[position]whether_eat = 0return whether_eat, food_listdef draw_food(self, food_list, window, grid_size):x = (food_list[0] - 1) * grid_size[0]y = (food_list[1] - 1) * grid_size[1]rec = (x, y, grid_size[0], grid_size[1])pygame.draw.rect(window, self.food_color, rec)

http://www.tj-hxxt.cn/news/61114.html

相关文章:

  • 网站建设学习步骤网站优化 福州
  • 代刷网可以做网站地图口碑营销的名词解释
  • 更换网站服务器35个成功的市场营销策划案例
  • 美国做旅游网站seo营销技巧
  • 建一个类似亨物说网站建设费用长沙关键词优化平台
  • 如何做英文ppt模板下载网站nba湖人最新新闻
  • javaweb做网站香港seo公司
  • 做网站用什么语言开发谷歌seo优化中文章
  • 做网站要用到什么软件成都seo外包
  • 广东广州自己建网站公司优化手机流畅度的软件
  • dede 百度网站地图2022知名品牌营销案例100例
  • pc网站运营一句话宣传自己的产品
  • 做财务还是网站运营百度竞价返点一般多少
  • 网站设计是用ps做图吗竞价推广是什么意思
  • h5网页制作代码成都seo工程师
  • 简述网页与网站的区别关键词网站查询
  • 注册了域名怎样做网站故事性营销软文
  • 998元网站建设优化网店推广营销方案
  • 网站备案期间 搜索引擎一点优化
  • 手机免费创建网站的软件百度快速收录教程
  • 企业网站重要性百度指数查询手机版
  • 华夏运用网站网站推广排名服务
  • 做网站的背景怎么做手机百度搜索引擎
  • 有哪些网站做返利模式查看百度关键词价格
  • 网站建立不安全百度seo优化及推广
  • 网站开发提高加载速度东莞网络优化哪家公司好
  • 绍兴seo外包公司怎么优化一个网站关键词
  • 阿里 网站备案核验单免费推广网站大全集合
  • wordpress 自适应 cssseo的中文名是什么
  • 免费做网站公司郑州seo哪家专业