Python中国社区  »  Python

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

python • 2 周前 • 84 次点击  

手机上面的开心消消乐,我想大部分人都是玩过的吧,今天小编就教大家如何用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
 
84 次点击  
分享到微博