Python经典坦克大战小游戏,那些童年的游戏你还记得几个呢?【内附源码】

哈喽!大家好,我是不凡……

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

觉得画面有点简陋,但在以前绝对是属于玩不腻的游戏之一。今天不凡就带大家一起来康康吧~👇

环境

操作系统:Windows

Python 版本:3.8

涉及模块:pygame

实现

经典坦克大战的构成相对比较简单,主要包括:主界面、玩家、坦克、敌方坦克、墙壁、子弹、计分板、背景音乐等,下面来看一下具体实现。

看一下玩家的坦克样式:

主要实现代码如下所示:

'''主函数'''
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: break
    is_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

​看一下效果:

1)游戏介面,1是单人模式,2是双人模式

2)单人模式 :点击Enter键 游戏运行  按空格键发射子弹

2)双人模式 :点击向下键选择双人模式,Enter键 游戏运行

玩家操作方式如下:

玩家一:

wsad键:上下左右;

空格键:射击。

玩家二:

↑↓←→键:上下左右;

小键盘0键:射击。

 

(3)游戏规则:

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

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

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

加载游戏素材中:

总结

这游戏的话经典哈,还是你们记忆中的坦克吗?

说实话代码真挺多的,你感觉这款坦克大战有还原多少呀??

需要源码的可以滴滴我哟~

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值