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

嘉兴做外贸网站的公司百度一下首页

嘉兴做外贸网站的公司,百度一下首页,深圳营销网站建设策划,网站建设利益前言 下一个青年节快到了,想小编我也是过不了几年节日了呢!! 社交媒体上流传着一张照片——按照国家规定“14岁到28岁今天都应该放半天假!”不得不说, 这个跨度着实有点儿大,如果按整自然年来算年龄&…

前言

下一个青年节快到了,想小编我也是过不了几年节日了呢!!

社交媒体上流传着一张照片——按照国家规定“14岁到28岁今天都应该放半天假!”不得不说,

这个跨度着实有点儿大,如果按整自然年来算年龄,心里还真是有点儿小激动呢!

(年纪大了喜欢回忆我逝去的青春了——不仅感叹一声自己果然已经老了~老了~老了~)

所有文章完整的素材+源码都在👇👇

粉丝白嫖源码福利,请移步至CSDN社区或文末公众hao即可免费。

直接摊牌吧!

今天的小编给大家推文来安利童年“小游戏”的,不过不是游戏内的小游戏。

而是Python代码编写的一些小游戏,应该有很多童年的小伙伴儿都玩过很多小游戏吧。

现在可以重温童年时光咯~(不仅感叹还是小时候的游戏有趣,放开让我来都玩儿一遍儿吧~)

如果你能情不自禁的说出了大多数游戏的名字,那么只能恭喜你,暴露年龄啦~

今天小编给大家带来两款童年的小游戏——我敢保证,这两款童年小游戏,你一定玩过!

1)坦克大战小游戏 单|双模式          2)经典益智游戏推箱子

小科普——

五四青年节源于中国1919年反帝爱国的“五四运动”,五四爱国运动是一次彻底的反对帝国主义

和封建主义的爱国运动,也是中国新民主主义革命的开始。1939年,陕甘宁边区西北青年救国

联合会规定5月4日为中国青年节。

青年节期间,中国各地都要举行丰富多彩的纪念活动,青年们还要集中进行各种社会志愿和社

会实践活动,还有许多地方在青年节期间举行成人仪式。

正文

一、素材准备

1)环境准备 

 环境安装:python 3.8: 解释器、pycharm: 代码编辑器、 

相对应的安装包/安装教程/激活码/ 使用教程/学习资料/工具插件 可以直接找我厚台获取 。

自带的一些模块安装完Python可以直接使。如需要安装的话↓

2)模块安装教程

第三方库的安装方式如下: 

 一般安装:pip install +模块名 镜像源安装:pip install -i https://pypi.douban.com/simple/+模块名 (还有很多国内镜像源,这里是豆瓣的用习惯 了,其他镜像源可以去看下之前文章都有写的)

二、坦克大战小游戏 单|双模式

1)游戏介绍

《坦克大战》是当年火遍大江南北的FC游戏,小霸王时代的装机必备。现在看来是觉得画面有

点简陋,但在以前绝对是属于玩不腻的游戏之一。

这游戏有一个奇葩特点就是可以自己打爆自己的碉堡,车开的太猛,得意忘形一炮把自己的老

家给爆了,可以说是非常喜闻乐见了。

2)代码展示

游戏有单人和双人两种模式,己方大本营被破或者己方坦克被歼灭则游戏失败,成功通过所有

关卡则游戏胜利。另外,玩家可以通过射击特定的坦克使地图上随机出现一个道具,若己方坦

克捡到该道具,则触发一个事件,例如坦克能力的增强。

代码效果——

2.1玩家操作方式如下

玩家一:

wsad键:上下左右;

空格键:射击。

玩家二:

↑↓←→键:上下左右;

小键盘0键:射击。


玩家一:wsad键:上下左右;空格键:射击。玩家二:↑↓←→键:上下左右;小键盘0键:射击。# 玩家一, WSAD移动, 空格键射击if tank_player1.num_lifes >= 0:if key_pressed[pygame.K_w]:player_tanks_group.remove(tank_player1)tank_player1.move('up', self.scene_elems, player_tanks_group, enemy_tanks_group, home)player_tanks_group.add(tank_player1)elif key_pressed[pygame.K_s]:player_tanks_group.remove(tank_player1)tank_player1.move('down', self.scene_elems, player_tanks_group, enemy_tanks_group, home)player_tanks_group.add(tank_player1)elif key_pressed[pygame.K_a]:player_tanks_group.remove(tank_player1)tank_player1.move('left', self.scene_elems, player_tanks_group, enemy_tanks_group, home)player_tanks_group.add(tank_player1)elif key_pressed[pygame.K_d]:player_tanks_group.remove(tank_player1)tank_player1.move('right', self.scene_elems, player_tanks_group, enemy_tanks_group, home)player_tanks_group.add(tank_player1)elif key_pressed[pygame.K_SPACE]:bullet = tank_player1.shoot()if bullet:self.sounds['fire'].play() if tank_player1.tanklevel < 2 else self.sounds['Gunfire'].play()player_bullets_group.add(bullet)# 玩家二, ↑↓←→移动, 小键盘0键射击if self.is_dual_mode and (tank_player2.num_lifes >= 0):if key_pressed[pygame.K_UP]:player_tanks_group.remove(tank_player2)tank_player2.move('up', self.scene_elems, player_tanks_group, enemy_tanks_group, home)player_tanks_group.add(tank_player2)elif key_pressed[pygame.K_DOWN]:player_tanks_group.remove(tank_player2)tank_player2.move('down', self.scene_elems, player_tanks_group, enemy_tanks_group, home)player_tanks_group.add(tank_player2)elif key_pressed[pygame.K_LEFT]:player_tanks_group.remove(tank_player2)tank_player2.move('left', self.scene_elems, player_tanks_group, enemy_tanks_group, home)player_tanks_group.add(tank_player2)elif key_pressed[pygame.K_RIGHT]:player_tanks_group.remove(tank_player2)tank_player2.move('right', self.scene_elems, player_tanks_group, enemy_tanks_group, home)player_tanks_group.add(tank_player2)elif key_pressed[pygame.K_KP0]:bullet = tank_player2.shoot()if bullet:player_bullets_group.add(bullet)self.sounds['fire'].play() if tank_player2.tanklevel < 2 else self.sounds['Gunfire'].play()

2.2主程序运行的代码

'''
Function:经典坦克大战小游戏'''
import os
import cfg
import pygame
from modules import *'''主函数'''
def main(cfg):# 游戏初始化pygame.init()pygame.mixer.init()screen = pygame.display.set_mode((cfg.WIDTH, cfg.HEIGHT))pygame.display.set_caption(cfg.TITLE)# 加载游戏素材sounds = {}for key, value in cfg.AUDIO_PATHS.items():sounds[key] = pygame.mixer.Sound(value)sounds[key].set_volume(1)# 开始界面is_dual_mode = gameStartInterface(screen, cfg)# 关卡数levelfilepaths = [os.path.join(cfg.LEVELFILEDIR, filename) for filename in sorted(os.listdir(cfg.LEVELFILEDIR))]# 主循环for idx, levelfilepath in enumerate(levelfilepaths):switchLevelIterface(screen, cfg, idx+1)game_level = GameLevel(idx+1, levelfilepath, sounds, is_dual_mode, cfg)is_win = game_level.start(screen)if not is_win: breakis_quit_game = gameEndIterface(screen, cfg, is_win)return is_quit_game'''run'''
if __name__ == '__main__':while True:is_quit_game = main(cfg)if is_quit_game:break

3)效果展示

3.1游戏界面

3.2游戏加载画面

3.3游戏开始界面

三、经典益智游戏推箱子

 1)游戏介绍

《 推箱子 》的机制和玩法其实都很简单,通过上下左右移动工人把箱子推到指定位置就行。

只不过它的游戏过程中牵涉到了大量的空间逻辑推理,比如箱子推到角落就不能移动、不能同

时推两个箱子等等,很容易陷入死局。

这种游戏设计和玩法的结合可玩性非常强,于是这款游戏很快就火遍了全世界。

2)代码展示

代码效果——

2.1配置文件

'''配置文件'''
import os'''屏幕大小'''
SCREENSIZE = (500, 500)
'''block大小'''
BLOCKSIZE = 50
'''levels所在文件夹'''
LEVELDIR = os.path.join(os.getcwd(), 'resources/levels')
'''图片所在文件夹'''
IMAGESDIR = os.path.join(os.getcwd(), 'resources/images')
'''字体所在文件夹'''
FONTDIR = os.path.join(os.getcwd(), 'resources/font')
'''音频所在文件夹'''
AUDIODIR = os.path.join(os.getcwd(), 'resources/audios')
'''背景颜色'''
BACKGROUNDCOLOR = (45, 45, 45)

2.2运行主程序代码

'''
Function:推箱子小游戏
'''
import os
import sys
import cfg
import pygame
from modules import *
from itertools import chain'''游戏地图'''
class gameMap():def __init__(self, num_cols, num_rows):self.walls = []self.boxes = []self.targets = []self.num_cols = num_colsself.num_rows = num_rows'''增加游戏元素'''def addElement(self, elem_type, col, row):if elem_type == 'wall':self.walls.append(elementSprite('wall.png', col, row, cfg))elif elem_type == 'box':self.boxes.append(elementSprite('box.png', col, row, cfg))elif elem_type == 'target':self.targets.append(elementSprite('target.png', col, row, cfg))'''画游戏地图'''def draw(self, screen):for elem in self.elemsIter():elem.draw(screen)'''游戏元素迭代器'''def elemsIter(self):for elem in chain(self.targets, self.walls, self.boxes):yield elem'''该关卡中所有的箱子是否都在指定位置, 在的话就是通关了'''def levelCompleted(self):for box in self.boxes:is_match = Falsefor target in self.targets:if box.col == target.col and box.row == target.row:is_match = Truebreakif not is_match:return Falsereturn True'''某位置是否可到达'''def isValidPos(self, col, row):if col >= 0 and row >= 0 and col < self.num_cols and row < self.num_rows:block_size = cfg.BLOCKSIZEtemp1 = self.walls + self.boxestemp2 = pygame.Rect(col * block_size, row * block_size, block_size, block_size)return temp2.collidelist(temp1) == -1else:return False'''获得某位置的box'''def getBox(self, col, row):for box in self.boxes:if box.col == col and box.row == row:return boxreturn None'''游戏界面'''
class gameInterface():def __init__(self, screen):self.screen = screenself.levels_path = cfg.LEVELDIRself.initGame()'''导入关卡地图'''def loadLevel(self, game_level):with open(os.path.join(self.levels_path, game_level), 'r') as f:lines = f.readlines()# 游戏地图self.game_map = gameMap(max([len(line) for line in lines]) - 1, len(lines))# 游戏surfaceheight = cfg.BLOCKSIZE * self.game_map.num_rowswidth = cfg.BLOCKSIZE * self.game_map.num_colsself.game_surface = pygame.Surface((width, height))self.game_surface.fill(cfg.BACKGROUNDCOLOR)self.game_surface_blank = self.game_surface.copy()for row, elems in enumerate(lines):for col, elem in enumerate(elems):if elem == 'p':self.player = pusherSprite(col, row, cfg)elif elem == '*':self.game_map.addElement('wall', col, row)elif elem == '#':self.game_map.addElement('box', col, row)elif elem == 'o':self.game_map.addElement('target', col, row)'''游戏初始化'''def initGame(self):self.scroll_x = 0self.scroll_y = 0'''将游戏界面画出来'''def draw(self, *elems):self.scroll()self.game_surface.blit(self.game_surface_blank, dest=(0, 0))for elem in elems:elem.draw(self.game_surface)self.screen.blit(self.game_surface, dest=(self.scroll_x, self.scroll_y))'''因为游戏界面面积>游戏窗口界面, 所以需要根据人物位置滚动'''def scroll(self):x, y = self.player.rect.centerwidth = self.game_surface.get_rect().wheight = self.game_surface.get_rect().hif (x + cfg.SCREENSIZE[0] // 2) > cfg.SCREENSIZE[0]:if -1 * self.scroll_x + cfg.SCREENSIZE[0] < width:self.scroll_x -= 2elif (x + cfg.SCREENSIZE[0] // 2) > 0:if self.scroll_x < 0:self.scroll_x += 2if (y + cfg.SCREENSIZE[1] // 2) > cfg.SCREENSIZE[1]:if -1 * self.scroll_y + cfg.SCREENSIZE[1] < height:self.scroll_y -= 2elif (y + 250) > 0:if self.scroll_y < 0:self.scroll_y += 2'''某一关卡的游戏主循环'''
def runGame(screen, game_level):clock = pygame.time.Clock()game_interface = gameInterface(screen)game_interface.loadLevel(game_level)font_path = os.path.join(cfg.FONTDIR, 'simkai.ttf')text = '按R键重新开始本关'font = pygame.font.Font(font_path, 15)text_render = font.render(text, 1, (255, 255, 255))while True:for event in pygame.event.get():if event.type == pygame.QUIT:pygame.quit()sys.exit(0)elif event.type == pygame.KEYDOWN:if event.key == pygame.K_LEFT:next_pos = game_interface.player.move('left', is_test=True)if game_interface.game_map.isValidPos(*next_pos):game_interface.player.move('left')else:box = game_interface.game_map.getBox(*next_pos)if box:next_pos = box.move('left', is_test=True)if game_interface.game_map.isValidPos(*next_pos):game_interface.player.move('left')box.move('left')breakif event.key == pygame.K_RIGHT:next_pos = game_interface.player.move('right', is_test=True)if game_interface.game_map.isValidPos(*next_pos):game_interface.player.move('right')else:box = game_interface.game_map.getBox(*next_pos)if box:next_pos = box.move('right', is_test=True)if game_interface.game_map.isValidPos(*next_pos):game_interface.player.move('right')box.move('right')breakif event.key == pygame.K_DOWN:next_pos = game_interface.player.move('down', is_test=True)if game_interface.game_map.isValidPos(*next_pos):game_interface.player.move('down')else:box = game_interface.game_map.getBox(*next_pos)if box:next_pos = box.move('down', is_test=True)if game_interface.game_map.isValidPos(*next_pos):game_interface.player.move('down')box.move('down')breakif event.key == pygame.K_UP:next_pos = game_interface.player.move('up', is_test=True)if game_interface.game_map.isValidPos(*next_pos):game_interface.player.move('up')else:box = game_interface.game_map.getBox(*next_pos)if box:next_pos = box.move('up', is_test=True)if game_interface.game_map.isValidPos(*next_pos):game_interface.player.move('up')box.move('up')breakif event.key == pygame.K_r:game_interface.initGame()game_interface.loadLevel(game_level)game_interface.draw(game_interface.player, game_interface.game_map)if game_interface.game_map.levelCompleted():returnscreen.blit(text_render, (5, 5))pygame.display.flip()clock.tick(100)'''主函数'''
def main():pygame.init()pygame.mixer.init()pygame.display.set_caption('推箱子 —— 源码基地:#959755565#')screen = pygame.display.set_mode(cfg.SCREENSIZE)pygame.mixer.init()audio_path = os.path.join(cfg.AUDIODIR, 'EineLiebe.mp3')pygame.mixer.music.load(audio_path)pygame.mixer.music.set_volume(0.4)pygame.mixer.music.play(-1)startInterface(screen, cfg)for level_name in sorted(os.listdir(cfg.LEVELDIR)):runGame(screen, level_name)switchInterface(screen, cfg)endInterface(screen, cfg)'''run'''
if __name__ == '__main__':main()

3)效果展示

3.1游戏界面

3.2第二关游戏界面

总结

好啦~今天的内容就更新到这里,先给大家介绍2款童年的小游戏吧,如果你喜欢这个游戏滴滴 

我免费分享的哈!你的童年还玩儿过那些游戏呢?(偷偷收藏起来以后可以写成代码的哦~)

✨完整的素材源码等:可以滴滴我吖!或者点击文末hao自取免费拿的哈~

 🔨推荐往期文章——

项目0.9  【Python实战】WIFI密码小工具,甩万能钥匙十条街,WIFI任意连哦~(附源码)

项目1.0  【Python实战】再分享一款商品秒杀小工具,我已经把压箱底的宝贝拿出来啦~

项目0.1  宝藏拼图神秘上线,三种玩法刷爆朋友圈—玩家直呼太上瘾了。

项目0.2 【Pygame小游戏】Python版有迷宫嘛?原来藏在个地方呀~

项目0.6 【Python实战项目】做一个 刮刮乐 案例,一不小心....着实惊艳到我了。

项目0.7  升级版飞机大战来袭,手把手教学,万字详解,你还学不会嘛?

🎁文章汇总——

Python文章合集 | (入门到实战、游戏、Turtle、案例等)

(文章汇总还有更多你案例等你来学习啦~源码找我即可免费!)

http://www.hkea.cn/news/787862/

相关文章:

  • 国外 上海网站建设网络营销推广方式案例
  • 24手表网站网络技术推广服务
  • 鞍山网站制作推广游戏推广员判几年
  • 360如何做网站优化网页设计制作软件
  • 金华网站建设电话电商运营主要负责什么
  • 百度的官方网站游戏推广工作好做吗
  • 著名的深圳网站建设网页快照
  • 政务网站建设要求快速排名软件哪个好
  • 自己网站怎么做优化色盲和色弱的区别
  • 苏州建网站公司seo网络推广培训班
  • 福清市建设局网站石家庄学院
  • 找考卷做要去哪个网站中国国家培训网官网查询
  • 软件系统开发的大概步骤优化网站标题名词解释
  • 院校网站建设模板建站平台
  • 淘宝网站内搜索引擎优化怎么做广告推广平台网站有哪些
  • 大片播放网站国外免费推广网站有哪些
  • flash网站cms排名sem优化软件
  • 申请完域名怎么做网站百度链接提交
  • 驻马店市可以做网站的公司百度搜索竞价排名
  • 郑州市做网站吉林百度查关键词排名
  • 济宁网站建设seo抖音seo源码搭建
  • 茂名网站建设方案书简述seo和sem的区别
  • 江西网站做的好的企业文化百度指数在哪里看
  • 山东电商网站建设seo网站排名优化公司
  • 赤峰市做网站公司今日的最新消息
  • 上海最大的贸易公司seo网络推广机构
  • jsp 网站开发广告发布平台
  • b2c网站综合对比评价站长统计幸福宝
  • 网站建设意见做推广app赚钱的项目
  • 哈尔滨营销网站制作做外贸推广