Python+Pygame实战之炫舞小游戏的实现

目录
  • 导语
  • 一、环境安装
  • 二、代码展示
  • 三、效果展示
    • 1)简洁版炫舞
    • ​2)随机截图
    • 3)MISS节拍

导语

昨天去老姐家里蹭饭,进门的时候就看到佳佳妹(我姐的女儿)低头霹雳吧啦一顿操作猛如虎,饭好了都还在玩儿,什么东西这么好玩?一走进就看到这是一款酷似炫舞的小游戏。(死去的回忆突然在攻击我~没想到现在还有这款游戏就是不知道升级了多少次啦)

不知道你们还记不记得曾经有个风靡一时的舞蹈游戏炫舞。

我读小学的时候,大概是09年吧,这个游戏非常火爆,如果你去网吧,十个女生里,有十一个都是在玩炫舞,像我就是其中的一员。那个时候还没有英雄联盟王者荣耀,女生玩炫舞,男生玩地下城穿越火线!

提到QQ炫舞,可能很多人想到的第一个词是“青春”。恍然间,这个承载了无数人回忆与时光的游戏品牌,已经走到了第十几个年头。今天小编就来给大家尝试做一款简单的简陋版的小游戏——《舞动青春*炫舞》。(其实是简单的五分之一的成品,感觉今天洗头发又要掉一堆了)

一、环境安装

小编使用的环境:Python3、Pycharm社区版、pygame模块,部分自带的就不一一 展示啦。

模块安装:pip install -i https://pypi.douban.com/simple/+模块名

背景图片大家可以自己修改的啦~嘿嘿怎么好看怎么来撒!

二、代码展示

主程序:

import pygame
import sys
import random

import time
import threading

random.random()
flag=1

# 创建线程对象

# 初始化pygame
pygame.init()
# 定义变量
size = width, height = 1024,768
bg = (0, 0, 0)
# 加载logo图

img = pygame.image.load("shang_hong.png")
# 获取图像的位置

# 创建一个主窗口
screen = pygame.display.set_mode(size)

# 标题
pygame.display.set_caption("炫舞——简洁版")
    # 创建游戏主循环
clock = pygame.time.Clock()
sudu=0.5
list=[]
list1=[]

def fuyuan():
    x=50
    global list1,list
    list.clear()
    for i in range(1,10):

        list.append(list1[i-1])

    for i in list1:

        if i==1:
            img = pygame.image.load("zuo_hong.png")
            screen.blit(img, [x,500])
            pygame.display.flip()
        if i==2:
            img = pygame.image.load("shang_hong.png")
            screen.blit(img, [x,500])
            pygame.display.flip()
        if i==3:
            img = pygame.image.load("you_hong.png")
            screen.blit(img, [x,500])
            pygame.display.flip()
        if i==4:
            img = pygame.image.load("xia_hong.png")
            screen.blit(img, [x,500])
            pygame.display.flip()
        x=x+113
    x=50
def chushi():
    global x
    x=50

    screen.fill(bg)
    global list
    global list1
    list.clear()
    list1.clear()
    for i in range(1,9):
        i=random.randint(1,4)
        list.append(i)
    list.append(5)
    #print(list)

    for i in range(1,10):
        list1.append(list[i-1])
    #print(list1)

    img = pygame.image.load("jindu.jpg")
    screen.blit(img, [100,400])
    pygame.display.flip()
    x=50
    for i in list:

        if i==1:
            img = pygame.image.load("zuo_hong.png")
            screen.blit(img, [x,500])
            pygame.display.flip()
        if i==2:
            img = pygame.image.load("shang_hong.png")
            screen.blit(img, [x,500])
            pygame.display.flip()
        if i==3:
            img = pygame.image.load("you_hong.png")
            screen.blit(img, [x,500])
            pygame.display.flip()
        if i==4:
            img = pygame.image.load("xia_hong.png")
            screen.blit(img, [x,500])
            pygame.display.flip()
        x=x+113
    x=50

x1=150
flag=1
def yidong():
    #print("sss")
    global flag
    global list
    global x1
    global clock
    clock.tick(800)
    #print(x1)
    img = pygame.image.load("jindu.jpg")
    screen.blit(img, [100,400])
    pygame.draw.circle(screen,(232,0,176),(x1,431),20,1000)
    #print(x1)
    pygame.display.flip()
    x1=x1+sudu
    if x1>780:
        #print(len(list))
        if len(list)==0:
            while x1<780:
                flag=0
                #print(x1)
                clock.tick(800)
                #print(x1)
                img = pygame.image.load("jindu.jpg")
                screen.blit(img, [100,400])
                pygame.draw.circle(screen,(232,0,176),(x1,431),20,1000)
                pygame.display.flip()
                x1=x1+sudu
            flag=1
            #chushi()
            #list.clear()

        x1=150
        if len(list)>0:

            screen.fill((0,0,0))
            miss()
            while x1<780:
                flag=0
                #print(x1)
                clock.tick(800)
                #print(x1)
                img = pygame.image.load("jindu.jpg")
                screen.blit(img, [100,400])
                pygame.draw.circle(screen,(232,0,176),(x1,431),20,1000)
                pygame.display.flip()
                x1=x1+sudu
            x1=150
            flag=1
        chushi()

class task(threading.Thread):
     def __init__(self):
         threading.Thread.__init__(self)
         self.thread_stop = False
     def run(self):
        while not self.thread_stop:
            yidong()

     def stop(self):
        self.thread_stop = True 

t1 = task()
t1.start()

#yidong()

chushi()
x=50
def miss():
    font = pygame.font.Font(None, 150)
    text = font.render('Miss!', True, (232,0,176), (0, 0, 0))
    screen.blit(text, (200, 150))

def chenggong():
    global x1

    screen.fill((0,0,0))
    global x
    global flag
    x=50
    flag=0
    if x1<600:
        font = pygame.font.Font(None, 150)
        text = font.render('Good!', True, (232,0,176), (0, 0, 0))
        screen.blit(text, (200, 150))
    if x1>625:
        font = pygame.font.Font(None, 150)
        text = font.render('Good!', True, (232,0,176), (0, 0, 0))
        screen.blit(text, (200, 150))
    if x1>=600 and x1<=625:
        font = pygame.font.Font(None, 150)
        text = font.render('Perfict!', True, (232,0,176), (0, 0, 0))
        screen.blit(text, (200, 150))
    x1=150    

while True:
    clock.tick(100)

    # 设置初始值
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            sys.exit()
        # 图像移动 KEYDOWN 键盘按下事件
        # 通过 key 属性对应按键
        cmd=1
        if event.type == pygame.KEYDOWN and flag==1:
            #print("sssss")
            #if event.key == 27:
            #   cmd=2
            if event.key == pygame.K_ESCAPE:
                t1.stop()
                sys.exit()
            if event.key == pygame.K_UP:
                cmd=2
            if event.key == pygame.K_DOWN:
                cmd=4
            if event.key == pygame.K_RIGHT:
                cmd=3
            if event.key == pygame.K_LEFT:
                cmd=1
            if event.key == pygame.K_SPACE:
                cmd=5
                if len(list)==1:
                    del list[0]
                    chenggong() 

                    continue

            if cmd==list[0]:

                if cmd==1:
                    #print(x)
                    img = pygame.image.load("zuo_lv.png")
                    screen.blit(img, [x,500])
                    pygame.display.flip()

                if cmd==2:
                    #print(x)
                    img = pygame.image.load("shang_lv.png")
                    screen.blit(img, [x,500])
                    pygame.display.flip()

                if cmd==3:
                    #print(x)
                    img = pygame.image.load("you_lv.png")
                    screen.blit(img, [x,500])
                    pygame.display.flip()   

                if cmd==4:
                    #print(x)
                    img = pygame.image.load("xia_lv.png")
                    screen.blit(img, [x,500])
                    pygame.display.flip()

                x=x+113
                del list[0]
            else:
                print(list1)
                #print("Aaaa")
                fuyuan()
                x=50

            #print("sss")
            #screen.fill((0,0,0))

    '''
    # 移动图像
    position = position.move(site)
    # 填充背景
    screen.fill(bg)
    # 放置图片
    screen.blit(img, position)
    # 更新显示界面
    pygame.display.flip()
    '''

三、效果展示

1)简洁版炫舞

​2)随机截图

3)MISS节拍

以上就是Python+Pygame实战之炫舞小游戏的实现的详细内容,更多关于Python Pygame炫舞游戏的资料请关注我们其它相关文章!

(0)

相关推荐

  • Python+Pygame实现之走四棋儿游戏的实现

    目录 导语 一.游戏解说 二.游戏规则 三.环境安装 四.代码展示 五.效果展示 导语 大家以前应该都听说过一个游戏:叫做走四棋儿 这款游戏出来到现在时间挺长了,小时候的家乡农村条件有限,附近也没有正式的玩具店能买到玩具,因此小朋友们聚在一起玩耍时,其玩具大多都是就地取材的. 直接在家里的水泥地上用烧完的炭火灰画出几条线,摆上几颗石头子即可.当时的火爆程度可谓是达到了一个新的高度.包括我当时也比较喜欢这款游戏.因为时间推移,小时候很多游戏都已经在现在这个时代看不到啦! 今天小编就带大家追忆童年—

  • Python+Pygame实战之英文版猜字游戏的实现

    目录 导语 一.运行环境 二.素材(图片等) 三.代码展示 四.效果展示 导语 当下的孩子们多少会被电子产品“侵袭”,那么既然都要玩游戏,为什么不选既能玩又能收获知识的呢? 兴趣是最大的学习推动力,当学习英语变成一款小游戏时,不仅能够玩游戏,激发调动孩子的积极性,还能够让孩子们在娱乐中潜移默化地掌握英语的学习技巧哦~ 今天木子为大家敲了一款简单的英语版<神奇的猜字小游戏>,分享给大家,希望能帮到大家.如果您是一位热心于辅导孩子学习英语的家长,上面这款游戏也不妨用一用,试一试哦~ (文中代码仅供

  • Python+Pygame实现怀旧游戏飞机大战

    目录 前言 一.python飞机大战 1.1 音乐 1.2 精灵(spirte) 1.3 事件(键盘事件,鼠标事件) 1.4 碰撞检测 1.5 更新 1.6 总结及源码 前言 我第一次见到飞机大战是在我小学五年级下半学期的时候(2020年),这个游戏中可以说包含了几乎所有我目前可接触到的pygame知识. 一.python飞机大战 下面用一个简单的飞机大战游戏,串一下pygame基础知识. 1.1 音乐 这里列举一些常用函数,详细内容请到pygame官网查看. pygame.mixer.musi

  • Python+Pygame实战之实现小蜜蜂历险记游戏

    目录 导语 一.运行环境 二.素材(图片等) 三.代码展示 四.效果展示 导语 亲爱的小可爱们,大家好! 欢迎来到木子的游戏编程空间 经常听到有朋友说,学习编程是一件非常枯燥无味的事情.其实,大家有没有认真想过,可能是我们的学习方法不对? 比方说,你有没有想过,可以通过打游戏来学编程? 今天又又又更新一款新游戏给大家啦,期待不期待呀?教大家如何通过边打游戏边学编程!准备好了吗?我们即将开始激动人心的游戏编程之旅. 或许你之前学习过一点编程,但若是你从没接触过游戏编程,那么你仍然会对游戏程序的运行

  • Python+Pygame实战之泡泡游戏的实现

    目录 导语 一.环境安装 二.代码展示 三.效果展示 导语 泡泡王国 欢乐多多 咕噜噜,吹泡泡,七彩泡泡满天飘.大的好像彩气球,小的就像紫葡萄. ​当泡泡漫天飞舞时,大朋友.小朋友都会情不自禁地被它吸引.而当珍珠般的泡泡遇上可爱的程序员门时,又会出现什么样的美丽风景呢? 说到4399小游戏,没有人会陌生吧?我小时候经常趁着家长不在家的时候偷偷打开电脑打开小游戏的网页,在电脑桌前一坐就是一下午,真的不能赖我不适可而止,而是这些游戏真的太好 玩了!关于童年的经典游戏and有关泡泡的,之前已经仿写了一

  • Python+Pygame实现简单的射击小游戏

    目录 前言 一.运行环境 二.代码展示 ​三.效果展示 1)游戏界面 2)击中效果 3)+3分 前言 哈喽!哈喽.栗子上线啦~ 要说什么游戏能够获得大家的喜爱? 唯射击游戏莫属.此前大火手游的<刺激战场>当然现在是叫做<和平精英>啦,想当初我也是第一批下载的老玩家了!射击游戏加上丰富的地图不同的体验那是相当的有趣好玩儿. 玩家在射击游戏中,通过瞄准,击杀敌人,能够获得及时的爽感反馈.射击游戏很早就在游戏圈占据一席之地啦~ 今天的游戏代码灵感就是来源于此哦,简约简约,大制作小编一个程

  • Python+Pygame实战之24点游戏的实现

    目录 导语 游戏介绍 实现代码 游戏效果展示 导语 我第一次玩24点是初中的时候,那时候和堂弟表哥在堂妹家玩,堂妹提出玩24点游戏,堂妹比我们小三岁,可能正在上小学吧. 拿出一副扑克牌去掉大小怪和花牌,从剩下的牌里随便找出四张,谁能先用加减乘除算出24就算赢. 如果大家都同意放弃或者有人计算出来就重新开始一局.结果是我们三个哥哥都输多赢少,堂妹显然是经过了准备的. 其实24点小游戏除了能用来无聊的时候跟朋友与一起玩儿下,还能锻炼思维能力,尤其是家里的小孩子提升数学能力 多锻炼还是很有好处的,尤其

  • Python+Pygame实战之炫舞小游戏的实现

    目录 导语 一.环境安装 二.代码展示 三.效果展示 1)简洁版炫舞 ​2)随机截图 3)MISS节拍 导语 昨天去老姐家里蹭饭,进门的时候就看到佳佳妹(我姐的女儿)低头霹雳吧啦一顿操作猛如虎,饭好了都还在玩儿,什么东西这么好玩?一走进就看到这是一款酷似炫舞的小游戏.(死去的回忆突然在攻击我~没想到现在还有这款游戏就是不知道升级了多少次啦) 不知道你们还记不记得曾经有个风靡一时的舞蹈游戏炫舞. 我读小学的时候,大概是09年吧,这个游戏非常火爆,如果你去网吧,十个女生里,有十一个都是在玩炫舞,像我

  • Python Pygame实战之打砖块小游戏

    目录 导语 一.准备中 1)游戏规则: 2)环境安装 二.开始敲代码 1)配置文件 2)定义一些类 3)定义开始.结束界面 4)定义游戏 5)主函数与运行界面 三.效果展示 导语 嘿!前不久刚刚给大家过一款反弹球的小游戏嘛! 不知道大家还记得不?不记得可以看下往期的内容呢,在上一期的基础上升级了这款打砖块的小游戏,界面的话也挺简单的,经典配色原汁原味哈哈哈. 大家好,我是木木子,一个上的编程下的厅堂的女码农!今天带大家编写一款经典的打砖块儿小游戏! 小科普: 打砖块最早是由雅达利公司开发的一款独

  • Pygame实战之经典泡泡龙小游戏

    目录 导语 ​正文 一.准备中 二.开始敲代码 三.效果展示 总结 导语 Python版的消除类的游戏还是很多的,木木子之前也是推过不少~ 比如:百变的消消乐,还记得嘛?今天就出一个消除类--泡泡龙小游戏,希望你们喜欢哈~​! <泡泡乐>是一款适合全年龄玩家的游戏,采用非常经典的"泡泡龙"式的消除泡泡的玩法,游戏没有太多创新玩法,容 易上手.当我们一个人独处而无人聊天时可以用它来打发时间.来来来,跟着木木子一起开始玩泡泡龙游戏吧~ ​正文 一.准备中 1)游戏规则: 游戏玩

  • Python Pygame实战之水果忍者游戏的实现

    目录 一.准备中 1.0游戏规则 1.1游戏图片素材(可修改) 1.2游戏字体素材(可修改) 二.环境安装 三.开始敲代码 3.0设置界面玩家生命值等 3.1导入模块 3.2界面背景.字体设置 3.3游戏窗口设置 3.4随机生成水果的位置与数据存放 3.5用一个字典来存放水果的数据 3.6在屏幕中绘制字体 3.7绘制玩家的生命 3.8游戏开始与结束画面 3.9游戏主循环 四.游戏展示效果 导语 Hey!下午好,我是木木子,关注我,一起玩游戏吧~ ​ ​微信小游戏很久之前刮起了一股切水果热潮,还记

  • Python+Pygame制作简易版2048小游戏

    目录 导语 正文 主要代码 效果图 导语 哈喽!大家好,我是栗子,感谢大家的支持! 新的一天,新气象,程序猿们的日常开始敲敲敲,改改改——今天给大家来一款简单的小游戏! 2048小游戏——准确的来说确实是一个简单版本的! 呐呐呐 ,主要是担心很多小伙伴儿直接上界面版本的看不懂,所以做了这款简单的2048,先看这篇简单版本的吧! 正文 为了搞懂这个游戏的规则,小编去直接下载了一款2048的小游戏,上手玩了一波! 然后.........完全停不下来!23333~ 玩法: 用手指或键盘上下左右滑动,将

  • Python Pygame实战之五款童年经典游戏合集

    目录 一.推箱子 1)代码展示 2)效果展示 二.滑雪 1)代码展示 2)效果展示​ 三.声控把音符 1)代码展示 2)效果展示 四.保卫萝卜 1)代码展示 2)效果展示​ 五.飞机大战 1)代码展示 2)效果展示 一.推箱子 1)代码展示 import os import sys import cfg import pygame from modules import * from itertools import chain '''游戏地图''' class gameMap(): def _

随机推荐