社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  Python

利用Python开发手机同款游戏:开心消消乐

python • 6 年前 • 702 次点击  

手机上面的开心消消乐,我想大部分人都是玩过的吧,今天小编就教大家如何用Python开发这款游戏

不过只有十个关卡,不像手机里面那么多的关卡!不过游戏的画面和BGM都是同款的哦~

效果图



基本配置


  • Windows

  • Python 3.6

  • pygame

模块安装:pip install pygame 即可

这些都是比较简单的一些东西,pygame我想大家都不陌生吧。

Pygame是跨平台Python模块,专为电子游戏设计,包含图像、声音。建立在SDL基础上,允许实时电子游戏研发而无需被低级语言(如:机器语言和汇编语言)束缚。

完整代码

import pygame
from pygame.locals import *
import sys
import manager


'''
brick : 218*218
   animal : 40*40
   bg : 850*600
Python学习交流群:516107834
'''

# print(dir())   # 已导入的包
pygame.init()  # 初始化
pygame.mixer.init()

tree = manager.ManagerTree()
m = manager.Manager(00)
sound_sign = 0
world_bgm = pygame.mixer.Sound(manager.SoundPlay.world_bgm)
game_bgm = pygame.mixer.Sound(manager.SoundPlay.game_bgm)
while True:
    if m.level == 0:
        if sound_sign == 0:
            game_bgm.stop()
            world_bgm.play(-1)
            sound_sign = 1
    else:
        if sound_sign == 1:
            world_bgm.stop()
            game_bgm.play(-1)
            sound_sign = 0
    if m.level == 0:
        tree.draw_tree(m.energy_num, m.money)
    else:
        m.set_level_mode(m.level)
        sprite_group = m.draw()
        if m.type == 0:
            m.eliminate_animal()
            m.death_map()
            m.exchange(sprite_group)
        m.judge_level()

    for event in pygame.event.get():
        if event.type == KEYDOWN:
            if event.key == pygame.K_q or event.key == pygame.K_ESCAPE:
                exit()
        if event.type == QUIT:
            sys.exit()
        m.level, m.energy_num, m.money = tree.mouse_select(event, m.level, m.energy_num, m.money)
        m.mouse_select(event)

    m.mouse_image()
    pygame.display.flip()

if __name__ == "main":
    main()


最后

源码+图片素材+BGM



领取本篇文章源码、图片素材、BGM等文件有两种方式:
方式一:扫描下方二维码添加微信
1、领取该案例所需素材。
2、可以根据你自身学习情况,量身定制一套学习资料。
方式二:点击阅读原文
获取内容与方式一是一致的。



点击阅读原文,获得更多精彩


今天看啥 - 高品质阅读平台
本文地址:http://www.jintiankansha.me/t/1IPxVy5Nzl
Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/25928
 
702 次点击