1、下载一个包
PySide2-5.15.2.1-5.15.2-cp35.cp36.cp37.cp38.cp39.cp310-none-win_amd64
如果下载错误,就先下载shiboken2-5.15.2.1-5.15.2-cp35.cp36.cp37.cp38.cp39.cp310-none-win_amd64补丁,然后再下载Pyside2。
记得都放在同一个工程下。
2、准备好飞机大战中所需要的图片资源
(1)自身飞机
(2)飞机子弹
(3)背景
(4)敌机
将准备好的图片放入工程中的images文件夹中,且命名好
3、代码
我们一共准备六个模块
(1)主函数main模块.py
from PySide2 import QtCore, QtWidgets, QtGui
from settings import Settings
from map import Map
from hero import Hero
from enemy import Enemy
from random import randint
class MainScene(QtWidgets.QWidget):
def __init__(self):
super().__init__()
self.settings = Settings()
self.setWindowTitle(self.settings.game_title)
self.setWindowIcon(QtGui.QIcon(self.settings.game_ico))
self.setFixedSize(self.settings.game_width, self.settings.game_height)
self.map = Map() # 构造一个地图对象
self.hero = Hero() # 构造一个英雄对象
# 初始化敌机
self.enemys = []
self.enemy_interval = 0
for i in range(self.settings.enemy_num):
self.enemys.append(Enemy())
self.timer_main = QtCore.QTimer(self)
self.timer_main.setInterval(20)
self.timer_main.timeout.connect(self.run)
self.timer_mai