云寺手游网:做最专业最放心的安全下载站!
您当前所在位置:首页 > 游戏资讯 >

「全是套路」这才是贪吃蛇大作战最有趣的版本,你确定不看?

时间:2022-02-17 06:01:39 来源:云寺手游网
导语


“最有趣的版本”?O__O "…


唤起了记忆,唤起了忧伤。

还记得诺基亚称王的时代,拿着S40、S60系统的手机,在被窝里玩贪吃蛇的时光。当周围的人还在

玩平面黑白地贪吃蛇小游戏的时候,诺基亚的贪吃蛇让我兴奋不已。

人都是视觉动物,美的东西总会让人目不转睛。游戏更是如此,如果画面不喜欢,再好玩的玩法,

再有意思的剧情,都索然无味。

今天这就有意思多了,视觉效果特满满滴:那让我们开始探索叭


正文


一、《今日上线—最Skr变色贪吃蛇》

最新的贪吃蛇最大的特点就是,这个蛇的颜色一直在变化。这是怎么做到的呢?那还是要从彩色图开始

像是从像素点说起,计算机存储或者显示彩色图片时,实际上存储的是一个三维矩阵。每个像素点对

应三个颜色通道。在我们定义的画图函数中。用random随机生成三个颜色通道,这样在每次画图的

时候,颜色就是随机生成的,可以随时变化,这样就可以随时变化颜色。

二、准备中

1)运行环境

本文用到的环境如下:Python3、Pycharm、Pygame、numpy以及部分自带的模块。

模块安装:

pip install +模块名 或者豆瓣镜像源 pip install -i https://pypi.douban.com/simple/ +模块名

三、代码演示

import pygame import sys from pygame.locals import* import numpy as np from random import randint pygame.init() rect_width=20 size=width,height=800,500 COLOR=(100,30,39)#蛇的颜色 x_rect=int(width/rect_width) y_rect=int(height/rect_width)#长宽格子有多个 font1 = pygame.font.SysFont('宋体', 30, True) speed=[0,1] bg=(255,255,180) screen=pygame.display.set_mode(size) pygame.display.set_caption("今日上线—最Skr变色贪吃蛇") snake_new=[3,4] font=pygame.font.Font(None,20) food_live=1#食物的生命是否存在 Food=[12,18]#食物所在的坐标 ground=np.zeros([x_rect,y_rect])#整条蛇占据的矩阵,0是没有。 score=0 snake=[[5,5],[5,6],[5,7]] food0=1 def get_color(): color1=(randint(0,255),randint(0,255),randint(0,255)) return color1 def get_rect(row,column):#计算应该在哪里画方格,以右上角为点。 x1=rect_width*row y1=rect_width*column return (x1,y1,rect_width,rect_width) def move_snake(speed,food1): global snake_new k1=snake[0][0]+speed[0] k2=snake[0][1]+speed[1] snake_new=[k1,k2] snake.insert(0,snake_new) if food1==1:#如果吃到了食物就不用管了 pass else: del snake[-1]#没吃到食物就删除最后一项 def meet_food(snake_pos,food_pos): global food0 global food_live global score if snake_pos[0]==food_pos: food_live=0 food0=1 score=score+1 else: food0=0 def draw_snake(snakebody): for i in snakebody: pygame.draw.rect(screen,get_color(),get_rect(i[0],i[1]),0) def draw_food(x,y): pygame.draw.rect(screen,get_color(),get_rect(x,y),0) while True: for event in pygame.event.get(): if event.type==pygame.QUIT: sys.exit() if event.type==KEYDOWN: if event.key==K_LEFT: speed=[-1,0] if event.key==K_RIGHT: speed=[1,0] if event.key==K_UP: speed=[0,-1] if event.key==K_DOWN: speed=[0,1] if food_live: pass else: Food=[randint(0,x_rect-1),randint(0,y_rect-1)]#随机生成食物的位置。 food_live=1 meet_food(snake,Food) move_snake(speed,food0) #判断贪吃蛇是否死亡,如果死亡,就退出游戏 if snake[0][0]>x_rect or snake[0][0]<0 or snake[0][1]>y_rect or snake[0][1]<0: pygame.quit() sys.exit() else: pass screen.fill(bg) screen.blit(font1.render(u'score:%d ' % score, True, [255, 0, 0]), [20, 20]) #pygame.draw.rect(screen,(23,56,78),get_rect(10,10),0) draw_snake(snake) draw_food(Food[0],Food[1]) pygame.display.flip()

四、效果展示


视频效果展示——


总结

合理游戏健康生活上课的时候别玩哦!


哈哈哈!这款变色的彩版贪吃蛇已经上线啦~想玩儿的滴滴我哈!

完整的项目源码私信小编06即可免费领取啦~