python游戏源码(分享上)

这篇具有很好参考价值的文章主要介绍了python游戏源码(分享上)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

# main.py

import pygame

import sys

import traceback

import myplane

import enemy

import bullet

import supply

from pygame.locals import *

from random import *

pygame.init()

pygame.mixer.init()

bg_size = width, height = 480, 700

screen = pygame.display.set_mode(bg_size)

pygame.display.set_caption("飞机大战 -- FishC Demo")

background = pygame.image.load("images/background.png").convert()

BLACK = (0, 0, 0)

WHITE = (255, 255, 255)

GREEN = (0, 255, 0)

RED = (255, 0, 0)

# 载入游戏音乐

pygame.mixer.music.load("sound/game_music.ogg")

pygame.mixer.music.set_volume(0.2)

bullet_sound = pygame.mixer.Sound("sound/bullet.wav")

bullet_sound.set_volume(0.2)

bomb_sound = pygame.mixer.Sound("sound/use_bomb.wav")

bomb_sound.set_volume(0.2)

supply_sound = pygame.mixer.Sound("sound/supply.wav")

supply_sound.set_volume(0.2)

get_bomb_sound = pygame.mixer.Sound("sound/get_bomb.wav")

get_bomb_sound.set_volume(0.2)

get_bullet_sound = pygame.mixer.Sound("sound/get_bullet.wav")

get_bullet_sound.set_volume(0.2)

upgrade_sound = pygame.mixer.Sound("sound/upgrade.wav")

upgrade_sound.set_volume(0.2)

enemy3_fly_sound = pygame.mixer.Sound("sound/enemy3_flying.wav")

enemy3_fly_sound.set_volume(0.2)

enemy1_down_sound = pygame.mixer.Sound("sound/enemy1_down.wav")

enemy1_down_sound.set_volume(0.2)

enemy2_down_sound = pygame.mixer.Sound("sound/enemy2_down.wav")

enemy2_down_sound.set_volume(0.2)

enemy3_down_sound = pygame.mixer.Sound("sound/enemy3_down.wav")

enemy3_down_sound.set_volume(0.5)

me_down_sound = pygame.mixer.Sound("sound/me_down.wav")

me_down_sound.set_volume(0.2)


 

def add_small_enemies(group1, group2, num):

    for i in range(num):

        e1 = enemy.SmallEnemy(bg_size)

        group1.add(e1)

        group2.add(e1)


 

def add_mid_enemies(group1, group2, num):

    for i in range(num):

        e2 = enemy.MidEnemy(bg_size)

        group1.add(e2)

        group2.add(e2)


 

def add_big_enemies(group1, group2, num):

    for i in range(num):

        e3 = enemy.BigEnemy(bg_size)

        group1.add(e3)

        group2.add(e3)


 

def inc_speed(target, inc):

    for each in target:

        each.speed += inc


 

def main():

    pygame.mixer.music.play(-1)

   

    # 生成我方飞机

    me = myplane.MyPlane(bg_size)

   

    enemies = pygame.sprite.Group()

   

    # 生成敌方小型飞机

    small_enemies = pygame.sprite.Group()

    add_small_enemies(small_enemies, enemies, 15)

   

    # 生成敌方中型飞机

    mid_enemies = pygame.sprite.Group()

    add_mid_enemies(mid_enemies, enemies, 4)

   

    # 生成敌方大型飞机

    big_enemies = pygame.sprite.Group()

    add_big_enemies(big_enemies, enemies, 2)

   

    # 生成普通子弹

    bullet1 = []

    bullet1_index = 0

    BULLET1_NUM = 4

    for i in range(BULLET1_NUM):

        bullet1.append(bullet.Bullet1(me.rect.midtop))

   

    # 生成超级子弹

    bullet2 = []

    bullet2_index = 0

    BULLET2_NUM = 8

    for i in range(BULLET2_NUM // 2):

        bullet2.append(bullet.Bullet2((me.rect.centerx - 33, me.rect.centery)))

        bullet2.append(bullet.Bullet2((me.rect.centerx + 30, me.rect.centery)))

   

    clock = pygame.time.Clock()

   

    # 中弹图片索引

    e1_destroy_index = 0

    e2_destroy_index = 0

    e3_destroy_index = 0

    me_destroy_index = 0

   

    # 统计得分

    score = 0

    score_font = pygame.font.Font("font/font.ttf", 36)

   

    # 标志是否暂停游戏

    paused = False

    pause_nor_image = pygame.image.load("images/pause_nor.png").convert_alpha()

    pause_pressed_image = pygame.image.load("images/pause_pressed.png").convert_alpha()

    resume_nor_image = pygame.image.load("images/resume_nor.png").convert_alpha()

    resume_pressed_image = pygame.image.load("images/resume_pressed.png").convert_alpha()

    paused_rect = pause_nor_image.get_rect()

    paused_rect.left, paused_rect.top = width - paused_rect.width - 10, 10

    paused_image = pause_nor_image

   

    # 设置难度级别

    level = 1

   

    # 全屏炸弹

    bomb_image = pygame.image.load("images/bomb.png").convert_alpha()

    bomb_rect = bomb_image.get_rect()

    bomb_font = pygame.font.Font("font/font.ttf", 48)

    bomb_num = 3

有人要记得说

python游戏源码(分享上),pygame,python,开发语言

python游戏源码(分享上),pygame,python,开发语言python游戏源码(分享上),pygame,python,开发语言python游戏源码(分享上),pygame,python,开发语言文章来源地址https://www.toymoban.com/news/detail-842345.html

到了这里,关于python游戏源码(分享上)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Python -- 利用pygame库进行游戏开发基础(二)

    1、pygame的窗口创建         这段代码生成了一个窗口导入pygame模块和sys模块,这两个模块准备后续开发所需的命令以及作用,进行pygame的初始化,而后上设置窗口大小,创建窗口,而后进入循环确保窗口持续显示,再判断是否有退出事件,有则退出程序,再退出pygame,清空

    2024年02月19日
    浏览(56)
  • python | 基础学习(六)pygame游戏开发:飞机大战

    pygame 模块,转为电子游戏设计 $ sudo pip3 install pygame windows: pip install pygame (1)新建项目 飞机大战 (2)新建文件 pygame.py (3)建立游戏窗口: ①pygame的初始化和退出 pygame.init() :导入并初始化所有pygame模块,使用其他模块之前,必须先调用init方法。 pygame.quit() :卸载所有

    2024年02月08日
    浏览(56)
  • Python Pygame游戏开发教程正式发布(非常详细)

    Pygame 是一款专门为开发和设计 2D 电子游戏而生的、免费开源的 Python 软件包/模块,它支 Windows、Linux、Mac OS 等操作系统,具有良好的跨平台性 Pygame 在 SDL 的基础上开发而成,它提供了诸多操作模块,比如图像模块(image)、声音模块(mixer)、输入/输出(鼠标、键盘、显示屏

    2024年04月13日
    浏览(48)
  • 手把手教你使用Python写贪吃蛇游戏(pygame,附源码)

    贪吃蛇游戏是有史以来最受欢迎的街机游戏之一。在这个游戏中,玩家的主要目标是在不撞墙或不撞墙的情况下抓住最大数量的水果。在学习 Python 或 Pygame 时,可以将创建蛇游戏视为一项挑战。这是每个新手程序员都应该接受的最好的初学者友好项目之一。学习构建视频游戏

    2024年02月16日
    浏览(48)
  • Python3+pygame实现有趣好玩的飞机大战游戏(附源码及素材)

    版权声明:原创不易,本文禁止抄袭、转载,侵权必究! 开发环境 :Windows10 Python3.6.4 第三方库 :Pygame1.9.6 IDE :PyCharm/Sublime Text 素材模块 游戏图片素材: BGM及音效素材: 字体素材: 源码模块 子弹模块 普通子弹部分源码: 超级子弹部分源码: 敌机子弹部分源码: 敌机模

    2024年02月11日
    浏览(61)
  • Python pygame 实现游戏 彩色 五子棋 详细注释 附源码 单机版

    之前学python的时候 写了个游戏来练手 用的是 pygame 没有别的依赖 只用了一两百行的代码就实现了 整体来说功能并不算完整 这个项目是在大学的时候 偶然一个机遇交一个小朋友Python时 小朋友大概10多岁 正在打算上初一 小朋友分非常非常非常聪明!!! 当时给他讲东西 他很

    2024年02月12日
    浏览(44)
  • 【pygame游戏开发】这几个经典游戏,小红书Python面试题目

    pygame.time.set_timer(change_hole_event, 800) mole = Mole(cfg.MOLE_IMAGEPATHS, hole_pos) hammer = Hammer(cfg.HAMMER_IMAGEPATHS, (500, 250)) clock = pygame.time.Clock() your_score = 0 flag = False init_time = pygame.time.get_ticks() while True: time_remain = round((61000 - (pygame.time.get_ticks() - init_time)) / 1000.) if time_remain == 40 and not flag: hole

    2024年04月25日
    浏览(52)
  • 在Python中使用Pygame开发游戏的100条建议

    Pygame是一个用于制作游戏的Python库。它提供了许多功能,使您可以轻松地创建2D游戏和多媒体应用程序。下面是一些使用Pygame库的基本步骤: 安装Pygame 首先,您需要安装Pygame库。您可以使用pip命令在命令行中安装它: 导入Pygame模块 在Python脚本中,您需要导入Pygame模块,以便

    2024年03月11日
    浏览(54)
  • Python Pygame 游戏开发基础教程与项目实践(总目录)

    原文链接:https://xiets.blog.csdn.net/article/details/131368147 版权声明:原创文章禁止转载 Pygame 是一个免费的开源的跨平台库(支持 Windows、MacOS、Linux),用于使用 Python 开发视频游戏等多媒体应用程序。 Pygame 基础教程01: Python (Pygame) 游戏开发模块简介与安装 Pygame 基础教程02: 显示

    2024年02月14日
    浏览(46)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包