RPG角色生成器

RPG角色生成器—Python

  • 功能描述
    用户进入游戏,输入昵称,选择种族与职业,随机生成力量、敏捷、体力、智力、智慧、生命值和魔法值等属性。

  • 职业限制
    在这里插入图片描述

  • 初始属性比例
    在这里插入图片描述

  • 功能实现

    • 种族不同,可选职业不同
      关联了种族控件,和职业空间,首先各职业控件初始化,下拉菜单会显示所有职业,然后利用if语句,对种族控件的内容进行接受并且监听,当用户选择一个种族时,触发监听事件,然后首先清空职业菜单栏所有的职业,然后再对接受的种族再进行判断,根据不同种族添加不同的职业,从而实现不同种族不同职业的功能
      代码实现如下:

              def CareerChange(self):#实现种族不同,可选职业不同
              if self.Race.currentText()=="人类":
                  self.RACE="人类"
                  self.INTELLIGENCE=random.randint(5, 10)
                  self.WISDOM=random.randint(5, 10)
                  self.Career.clear()#清除原有职业
                  self.Career.addItems(['请选择','狂战士', '圣骑士', '刺客','猎手', '祭司', '巫师'])#添加不同种族对应的职业
                  return self.INTELLIGENCE,self.WISDOM,self.RACE#返回不同种族的特定初始化属性加成
      
              elif self.Race.currentText()=="精灵":
      
                  self.RACE = "精灵"
                  self.SPEED=random.randint(5,10)
                  self.WISDOM=random.randint(5,10)
                  self.INTELLIGENCE=random.randint(5,10)
                  self.Career.clear()
                  self.Career.addItems(['请选择','刺客','猎手', '祭司', '巫师'])
      
              elif self.Race.currentText()=="兽人":
                  self.POWER=random.randint(5,10)
                  self.STRENGTH=random.randint(5,10)
                  self.RACE = "兽人"
                  self.Career.clear()
                  self.Career.addItems(['请选择','狂战士', '猎手', '祭司'])
      
              elif self.Race.currentText()=="矮人":
                  self.STRENGTH=random.randint(5,10)
                  self.SPEED=random.randint(5,10)
                  self.RACE = "矮人"
                  self.Career.clear()
                  self.Career.addItems(['请选择','狂战士', '圣骑士', '祭司'])
              else:
                  self.INTELLIGENCE=random.randint(5,10)
                  self.WISDOM=random.randint(5,10)
                  self.RACE = "元素"
                  self.Career.clear()
                  self.Career.addItems(['请选择','狂战士',  '祭司', '巫师'])
      
    • 属性的算法
      属性的算法首先是更据表中的值,利用随机函数,给定一个包含或者邻近表中值的范围生成的,同时为了满足5项属性之和为100,最后一项属性,是由100减去前几项属性生成的。部分代码如下:

          def AttriBute(self):#属性生成
              if self.Career.currentText()=='狂战士':
                  self.CARRER='狂战士'
                  self.STRENGTH=self.STRENGTH+random.randint(28,35)
                  self.SPEED = self.SPEED+random.randint(10,20)  # 敏捷
                  self.INTELLIGENCE = self.INTELLIGENCE+random.randint(1,5) # 智力
                  self.WISDOM = self.WISDOM+random.randint(1,5)  # 智慧
                  self.POWER = (self.POWER + 100 )- self.STRENGTH - self.SPEED - self.INTELLIGENCE - self.WISDOM
                  self.LIFE = self.STRENGTH*20  # 生命
                  self.MAGIC = (self.INTELLIGENCE+self.WISDOM)*10  # 魔法
              elif self.Career.currentText()=='圣骑士':
                  self.CARRER = '圣骑士'
                  self.STRENGTH = self.STRENGTH + random.randint(25, 35)
                  self.SPEED = self.SPEED + random.randint(10, 20)  # 敏捷
                  self.INTELLIGENCE = self.INTELLIGENCE + random.randint(20, 25)  # 智力
                  self.WISDOM = self.WISDOM + random.randint(5, 10)  # 智慧
                  self.POWER = (self.POWER + 100) - self.STRENGTH - self.SPEED - self.INTELLIGENCE - self.WISDOM
                  self.LIFE = self.STRENGTH * 20  # 生命
                  self.MAGIC = (self.INTELLIGENCE + self.WISDOM) * 10  # 魔法
              elif self.Career.currentText()=='刺客':
                  self.CARRER = '刺客'
                  self.STRENGTH = self.STRENGTH + random.randint(15, 20)
                  self.SPEED = self.SPEED + random.randint(30, 40)  # 敏捷
                  self.INTELLIGENCE = self.INTELLIGENCE + random.randint(10, 15)  # 智力
                  self.WISDOM = self.WISDOM + random.randint(5, 10)  # 智慧
                  self.POWER = (self.POWER + 100) - self.STRENGTH - self.SPEED - self.INTELLIGENCE - self.WISDOM
                  self.LIFE = self.STRENGTH * 20  # 生命
                  self.MAGIC = (self.INTELLIGENCE + self.WISDOM) * 10  # 魔法
              elif self.Career.currentText()=='猎手':
                  self.CARRER = '猎手'
                  self.STRENGTH = self.STRENGTH + random.randint(10, 15)
                  self.SPEED = self.SPEED + random.randint(35, 45)  # 敏捷
                  self.POWER = self.POWER + random.randint(10, 15)  # 力量
                  self.WISDOM = self.WISDOM + random.randint(15, 25)  # 智慧
                  self.INTELLIGENCE = (self.INTELLIGENCE + 100) - self.STRENGTH - self.SPEED - self.INTELLIGENCE - self.WISDOM
                  self.LIFE = self.STRENGTH * 20  # 生命
                  self.MAGIC = (self.INTELLIGENCE + self.WISDOM) * 10  # 魔法
              elif self.Career.currentText()=='祭司':
                  self.CARRER = '祭司'
                  self.STRENGTH = self.STRENGTH + random.randint(10, 15)
                  self.SPEED = self.SPEED + random.randint(15, 20)  # 敏捷
                  self.POWER = self.POWER + random.randint(8, 12)  # 力量
                  self.WISDOM = self.WISDOM + random.randint(10, 15)  # 智慧
                  self.INTELLIGENCE = (self.INTELLIGENCE + 100) - self.STRENGTH - self.SPEED - self.INTELLIGENCE - self.WISDOM
                  self.LIFE = self.STRENGTH * 20  # 生命
                  self.MAGIC = (self.INTELLIGENCE + self.WISDOM) * 10  # 魔法
              elif self.Career.currentText()=='巫师':
                  self.CARRER = '巫师'
                  self.STRENGTH = self.STRENGTH + random.randint(5, 10)
                  self.SPEED = self.SPEED + random.randint(15, 20)  # 敏捷
                  self.INTELLIGENCE = self.INTELLIGENCE + random.randint(15, 20)  # 智力
                  self.POWER = self.POWER + random.randint(5, 10)  # 力量
                  self.WISDOM = (self.WISDOM + 100) - self.STRENGTH - self.SPEED - self.INTELLIGENCE - self.WISDOM
                  self.LIFE = self.STRENGTH * 20  # 生命
                  self.MAGIC = (self.INTELLIGENCE + self.WISDOM) * 10  # 魔法
              return self.POWER, self.SPEED, self.STRENGTH, self.INTELLIGENCE, self.WISDOM, self.LIFE, self.MAGIC
      
  • 运行效果
    在这里插入图片描述

  • 完整代码

from PyQt5.QtCore import Qt
from PyQt5.QtGui import QFont,QBrush
from PyQt5 import QtCore, QtWidgets
from PyQt5.QtWidgets import *
import random
import sys
class hero(object):#英雄类
    def __init__(self):
        # self.NAME=''#昵称
        # self.SEX=''#性别
        # self.RACE=''#种族
        # self.CARRER=''#职业
        self.POWER=0#力量
        self.STRENGTH=0#体力
        self.SPEED=0#敏捷
        self.INTELLIGENCE=0#智力
        self.WISDOM=0#智慧
        self.LIFE=0#生命
        self.MAGIC=0#魔法
    def pp(self):
        self.NAME = ''  # 昵称
        self.SEX = ''  # 性别
        self.RACE = ''  # 种族
        self.CARRER = ''  # 职业
class Ui_MainWindow(QtWidgets.QDialog,hero):
    def setupUi(self, MainWindow):
        MainWindow.setObjectName("MainWindow")
        MainWindow.resize(1284, 781)
        MainWindow.setStyleSheet("#MainWindow{border-image: url(612.jpg);}")
        self.centralwidget = QtWidgets.QWidget(MainWindow)
        self.centralwidget.setObjectName("centralwidget")
        self.Sex = QtWidgets.QComboBox(self.centralwidget)
        self.Sex.setGeometry(QtCore.QRect(340, 190, 231, 22))
        self.Sex.setObjectName("Sex")
        self.Sex.addItem("")
        self.Sex.addItem("")
        self.Sex.addItem("")
        self.label = QtWidgets.QLabel(self.centralwidget)
        self.label.setGeometry(QtCore.QRect(280, 180, 51, 31))
        self.label.setMinimumSize(QtCore.QSize(51, 0))
        self.label.setObjectName("label")
        self.Name = QtWidgets.QLineEdit(self.centralwidget)
        self.Name.setGeometry(QtCore.QRect(340, 140, 231, 21))
        self.Name.setObjectName("Name")
        self.Race = QtWidgets.QComboBox(self.centralwidget)
        self.Race.setGeometry(QtCore.QRect(340, 240, 231, 22))
        self.Race.setObjectName("Race")
        self.Race.addItem("")
        self.Race.addItem("")
        self.Race.addItem("")
        self.Race.addItem("")
        self.Race.addItem("")
        self.Race.addItem("")
        self.Career = QtWidgets.QComboBox(self.centralwidget)
        self.Career.setGeometry(QtCore.QRect(340, 290, 231, 22))
        self.Career.setObjectName("Career")
        self.Career.addItem("")
        self.Career.addItem("")
        self.Career.addItem("")
        self.Career.addItem("")
        self.Career.addItem("")
        self.Career.addItem("")
        self.Career.addItem("")
        self.label_2 = QtWidgets.QLabel(self.centralwidget)
        self.label_2.setGeometry(QtCore.QRect(280, 230, 51, 31))
        self.label_2.setMinimumSize(QtCore.QSize(51, 0))
        self.label_2.setObjectName("label_2")
        self.label_3 = QtWidgets.QLabel(self.centralwidget)
        self.label_3.setGeometry(QtCore.QRect(280, 130, 51, 31))
        self.label_3.setMinimumSize(QtCore.QSize(51, 0))
        self.label_3.setObjectName("label_3")
        self.label_5 = QtWidgets.QLabel(self.centralwidget)
        self.label_5.setGeometry(QtCore.QRect(280, 280, 51, 31))
        self.label_5.setMinimumSize(QtCore.QSize(51, 0))
        self.label_5.setObjectName("label_5")
        self.Ability = QtWidgets.QTableWidget(self.centralwidget)
        self.Ability.setGeometry(QtCore.QRect(60, 410, 1151, 61))
        self.Ability.setObjectName("Ability")
        self.Ability.setColumnCount(11)
        self.Ability.setRowCount(1)
        self.item = QtWidgets.QTableWidgetItem()

        self.Ability.setVerticalHeaderItem(0,self.item)
        self.item = QtWidgets.QTableWidgetItem()
        self.Ability.setHorizontalHeaderItem(0,self.item)
        self.item = QtWidgets.QTableWidgetItem()
        self.Ability.setHorizontalHeaderItem(1,self.item)
        self.item = QtWidgets.QTableWidgetItem()
        self.Ability.setHorizontalHeaderItem(2,self.item)
        self.item = QtWidgets.QTableWidgetItem()
        self.Ability.setHorizontalHeaderItem(3,self.item)
        self.item = QtWidgets.QTableWidgetItem()
        self.Ability.setHorizontalHeaderItem(4,self.item)
        self.item = QtWidgets.QTableWidgetItem()
        self.Ability.setHorizontalHeaderItem(5,self.item)
        self.item = QtWidgets.QTableWidgetItem()
        self.Ability.setHorizontalHeaderItem(6,self.item)
        self.item = QtWidgets.QTableWidgetItem()
        self.Ability.setHorizontalHeaderItem(7,self.item)
        self.item = QtWidgets.QTableWidgetItem()
        self.Ability.setHorizontalHeaderItem(8,self.item)
        self.item = QtWidgets.QTableWidgetItem()
        self.Ability.setHorizontalHeaderItem(9,self.item)
        self.item = QtWidgets.QTableWidgetItem()
        self.Ability.setHorizontalHeaderItem(10, self.item)


        self.QueDing = QtWidgets.QPushButton(self.centralwidget)
        self.QueDing.setGeometry(QtCore.QRect(670, 140, 75, 23))
        self.QueDing.setObjectName("QueDing")
        self.Exit = QtWidgets.QPushButton(self.centralwidget)
        self.Exit.setGeometry(QtCore.QRect(670, 220, 75, 23))
        self.Exit.setObjectName("Exit")
        self.Again = QtWidgets.QPushButton(self.centralwidget)
        self.Again.setGeometry(QtCore.QRect(670, 180, 75, 23))
        self.Again.setObjectName("Again")
        MainWindow.setCentralWidget(self.centralwidget)
        self.menubar = QtWidgets.QMenuBar(MainWindow)
        self.menubar.setGeometry(QtCore.QRect(0, 0, 1284, 23))
        self.menubar.setObjectName("menubar")
        MainWindow.setMenuBar(self.menubar)
        self.statusbar = QtWidgets.QStatusBar(MainWindow)
        self.statusbar.setObjectName("statusbar")
        MainWindow.setStatusBar(self.statusbar)

        self.retranslateUi(MainWindow)
        QtCore.QMetaObject.connectSlotsByName(MainWindow)
    def retranslateUi(self, MainWindow):
        _translate = QtCore.QCoreApplication.translate
        MainWindow.setWindowTitle(_translate("MainWindow", "角色生成器"))
        self.Sex.setItemText(0, _translate("MainWindow", "请选择"))
        self.Sex.setItemText(1, _translate("MainWindow", "男"))
        self.Sex.setItemText(2, _translate("MainWindow", "女"))
        self.label.setText(_translate("MainWindow", "  性别"))
        self.Race.setItemText(0, _translate("MainWindow", "请选择"))
        self.Race.setItemText(1, _translate("MainWindow", "人类"))
        self.Race.setItemText(2, _translate("MainWindow", "精灵"))
        self.Race.setItemText(3, _translate("MainWindow", "兽人"))
        self.Race.setItemText(4, _translate("MainWindow", "矮人"))
        self.Race.setItemText(5, _translate("MainWindow", "元素"))
        self.Career.setItemText(0, _translate("MainWindow", "请选择"))
        self.Career.setItemText(1, _translate("MainWindow", "狂战士"))
        self.Career.setItemText(2, _translate("MainWindow", "圣骑士"))
        self.Career.setItemText(3, _translate("MainWindow", "刺客"))
        self.Career.setItemText(4, _translate("MainWindow", "猎手"))
        self.Career.setItemText(5, _translate("MainWindow", "祭司"))
        self.Career.setItemText(6, _translate("MainWindow", "巫师"))
        self.label_2.setText(_translate("MainWindow", "  种族"))
        self.label_3.setText(_translate("MainWindow", "  昵称"))
        self.label_5.setText(_translate("MainWindow", "  职业"))
        self.label_2.setFont(QFont("宋体",12,QFont.Bold))
        self.label_5.setFont(QFont("宋体", 12, QFont.Bold))
        self.label_3.setFont(QFont("宋体",12,QFont.Bold))
        self.label.setFont(QFont("宋体", 12, QFont.Bold))
        self.item = self.Ability.verticalHeaderItem(0)

        self.item.setText(_translate("MainWindow", "信息表"))
        self.item = self.Ability.verticalHeaderItem(0)
        self.item.setFont(QFont("song", 9, QFont.Bold))
        self.item.setForeground(QBrush(Qt.gray))

        self.item = self.Ability.horizontalHeaderItem(0)
        self.item.setText(_translate("MainWindow", "昵称"))
        self.item = self.Ability.horizontalHeaderItem(1)
        self.item.setText(_translate("MainWindow", "性别"))
        self.item = self.Ability.horizontalHeaderItem(2)
        self.item.setText(_translate("MainWindow", "种族"))
        self.item = self.Ability.horizontalHeaderItem(3)
        self.item.setText(_translate("MainWindow", "职业"))
        self.item = self.Ability.horizontalHeaderItem(4)
        self.item.setText(_translate("MainWindow", "力量"))
        self.item = self.Ability.horizontalHeaderItem(5)
        self.item.setText(_translate("MainWindow", "敏捷"))
        self.item = self.Ability.horizontalHeaderItem(6)
        self.item.setText(_translate("MainWindow", "体力"))
        self.item = self.Ability.horizontalHeaderItem(7)
        self.item.setText(_translate("MainWindow", "智力"))
        self.item = self.Ability.horizontalHeaderItem(8)
        self.item.setText(_translate("MainWindow", "智慧"))
        self.item = self.Ability.horizontalHeaderItem(9)
        self.item.setText(_translate("MainWindow", "生命"))
        self.item = self.Ability.horizontalHeaderItem(10)
        self.item.setText(_translate("MainWindow", "魔法"))
        self.QueDing.setText(_translate("MainWindow", "确定"))
        self.Exit.setText(_translate("MainWindow", "退出"))
        self.Again.setText(_translate("MainWindow", "重新生成"))
        for index in range(self.Ability.columnCount()):#初始化表头样式
            self.item = self.Ability.horizontalHeaderItem(index)
            self.item.setFont(QFont("song", 11, QFont.Bold))
            self.item.setForeground(QBrush(Qt.gray))

        self.Race.currentIndexChanged.connect(self.CareerChange)#种族选择触发器
        self.Career.currentIndexChanged.connect(self.AttriBute)#职业选择触发器
        self.QueDing.clicked.connect(self.Na_me)#接受姓名触发器
        self.QueDing.clicked.connect(self.S_SEX)#接受性别触发器
        self.QueDing.clicked.connect(self.Show)#显示属性触发器
        self.Again.clicked.connect(self.ag_Ain)#重新选择触发器
        self.Exit.clicked.connect(self.Ex_It)#退出触发器
    # def SEX(self):
        # if self.Sex.setItemText()
    def Ex_It(self):#退出事件
        reply = QMessageBox.question(self, '退出提示', '您是否要退出', QMessageBox.Yes | QMessageBox.No)
        if reply == QMessageBox.Yes:
            self.sz = QApplication.instance()
            self.sz.quit()
    def ag_Ain(self):#重新选择事件
        self.AttriBute()
        self.Show()
    def CareerChange(self):#实现种族不同,可选职业不同
        if self.Race.currentText()=="人类":
            self.RACE="人类"
            self.INTELLIGENCE=random.randint(5, 10)
            self.WISDOM=random.randint(5, 10)
            self.Career.clear()#清除原有职业
            self.Career.addItems(['请选择','狂战士', '圣骑士', '刺客','猎手', '祭司', '巫师'])#添加不同种族对应的职业
            return self.INTELLIGENCE,self.WISDOM,self.RACE#返回不同种族的特定初始化属性加成

        elif self.Race.currentText()=="精灵":

            self.RACE = "精灵"
            self.SPEED=random.randint(5,10)
            self.WISDOM=random.randint(5,10)
            self.INTELLIGENCE=random.randint(5,10)
            self.Career.clear()
            self.Career.addItems(['请选择','刺客','猎手', '祭司', '巫师'])

        elif self.Race.currentText()=="兽人":
            self.POWER=random.randint(5,10)
            self.STRENGTH=random.randint(5,10)
            self.RACE = "兽人"
            self.Career.clear()
            self.Career.addItems(['请选择','狂战士', '猎手', '祭司'])

        elif self.Race.currentText()=="矮人":
            self.STRENGTH=random.randint(5,10)
            self.SPEED=random.randint(5,10)
            self.RACE = "矮人"
            self.Career.clear()
            self.Career.addItems(['请选择','狂战士', '圣骑士', '祭司'])
        else:
            self.INTELLIGENCE=random.randint(5,10)
            self.WISDOM=random.randint(5,10)
            self.RACE = "元素"
            self.Career.clear()
            self.Career.addItems(['请选择','狂战士',  '祭司', '巫师'])
    def Na_me(self):#结束输入的姓名
        self.NAME=self.Name.text()
        return self.NAME

    def S_SEX(self):#性别下拉框,返回性别
        if self.Sex.currentText()=='男':
            self.SEX='男'

        elif self.Sex.currentText()=='女':
            self.SEX = '女'

        return self.SEX
    def QSS(self):#自定义动态产生的属性的样式,如水平垂直居中
        self.A_NAME=QTableWidgetItem(self.NAME)
        self.A_NAME.setTextAlignment(Qt.AlignCenter)
        self.A_SEX = QTableWidgetItem(self.SEX)
        self.A_SEX.setTextAlignment(Qt.AlignCenter)
        self.A_RACE = QTableWidgetItem(self.RACE)
        self.A_RACE.setTextAlignment(Qt.AlignCenter)
        self.A_CARRER = QTableWidgetItem(self.CARRER)
        self.A_CARRER.setTextAlignment(Qt.AlignCenter)
        self.A_POWER = QTableWidgetItem(str(self.POWER))
        self.A_POWER.setTextAlignment(Qt.AlignCenter)
        self.A_SPEED = QTableWidgetItem(str(self.SPEED))
        self.A_SPEED.setTextAlignment(Qt.AlignCenter)
        self.A_STRENGTH = QTableWidgetItem(str(self.STRENGTH))
        self.A_STRENGTH.setTextAlignment(Qt.AlignCenter)
        self.A_INTELLIGENCE = QTableWidgetItem(str(self.INTELLIGENCE))
        self.A_INTELLIGENCE.setTextAlignment(Qt.AlignCenter)
        self.A_WISDOM = QTableWidgetItem(str(self.WISDOM))
        self.A_WISDOM.setTextAlignment(Qt.AlignCenter)
        self.A_LIFE = QTableWidgetItem(str(self.LIFE))
        self.A_LIFE.setTextAlignment(Qt.AlignCenter)
        self.A_MAGIC = QTableWidgetItem(str(self.MAGIC))
        self.A_MAGIC.setTextAlignment(Qt.AlignCenter)
    def Show(self):#将属性显示在表单中
        self.QSS()#调用自定义的字体样式
        self.Ability.setItem(0, 0,self.A_NAME)
        self.Ability.setItem(0, 1, self.A_SEX)
        self.Ability.setItem(0, 2, self.A_RACE)
        self.Ability.setItem(0, 3, self.A_CARRER)
        self.Ability.setItem(0, 4, self.A_POWER)
        self.Ability.setItem(0, 5, self.A_SPEED)
        self.Ability.setItem(0, 6, self.A_STRENGTH)
        self.Ability.setItem(0, 7, self.A_INTELLIGENCE)
        self.Ability.setItem(0, 8, self.A_WISDOM)
        self.Ability.setItem(0, 9, self.A_LIFE)
        self.Ability.setItem(0, 10,self.A_MAGIC)
        self.__init__()
    def AttriBute(self):#属性生成
        if self.Career.currentText()=='狂战士':
            self.CARRER='狂战士'
            self.STRENGTH=self.STRENGTH+random.randint(28,35)
            self.SPEED = self.SPEED+random.randint(10,20)  # 敏捷
            self.INTELLIGENCE = self.INTELLIGENCE+random.randint(1,5) # 智力
            self.WISDOM = self.WISDOM+random.randint(1,5)  # 智慧
            self.POWER = (self.POWER + 100 )- self.STRENGTH - self.SPEED - self.INTELLIGENCE - self.WISDOM
            self.LIFE = self.STRENGTH*20  # 生命
            self.MAGIC = (self.INTELLIGENCE+self.WISDOM)*10  # 魔法
        elif self.Career.currentText()=='圣骑士':
            self.CARRER = '圣骑士'
            self.STRENGTH = self.STRENGTH + random.randint(25, 35)
            self.SPEED = self.SPEED + random.randint(10, 20)  # 敏捷
            self.INTELLIGENCE = self.INTELLIGENCE + random.randint(20, 25)  # 智力
            self.WISDOM = self.WISDOM + random.randint(5, 10)  # 智慧
            self.POWER = (self.POWER + 100) - self.STRENGTH - self.SPEED - self.INTELLIGENCE - self.WISDOM
            self.LIFE = self.STRENGTH * 20  # 生命
            self.MAGIC = (self.INTELLIGENCE + self.WISDOM) * 10  # 魔法
        elif self.Career.currentText()=='刺客':
            self.CARRER = '刺客'
            self.STRENGTH = self.STRENGTH + random.randint(15, 20)
            self.SPEED = self.SPEED + random.randint(30, 40)  # 敏捷
            self.INTELLIGENCE = self.INTELLIGENCE + random.randint(10, 15)  # 智力
            self.WISDOM = self.WISDOM + random.randint(5, 10)  # 智慧
            self.POWER = (self.POWER + 100) - self.STRENGTH - self.SPEED - self.INTELLIGENCE - self.WISDOM
            self.LIFE = self.STRENGTH * 20  # 生命
            self.MAGIC = (self.INTELLIGENCE + self.WISDOM) * 10  # 魔法
        elif self.Career.currentText()=='猎手':
            self.CARRER = '猎手'
            self.STRENGTH = self.STRENGTH + random.randint(10, 15)
            self.SPEED = self.SPEED + random.randint(35, 45)  # 敏捷
            self.POWER = self.POWER + random.randint(10, 15)  # 力量
            self.WISDOM = self.WISDOM + random.randint(15, 25)  # 智慧
            self.INTELLIGENCE = (self.INTELLIGENCE + 100) - self.STRENGTH - self.SPEED - self.INTELLIGENCE - self.WISDOM
            self.LIFE = self.STRENGTH * 20  # 生命
            self.MAGIC = (self.INTELLIGENCE + self.WISDOM) * 10  # 魔法
        elif self.Career.currentText()=='祭司':
            self.CARRER = '祭司'
            self.STRENGTH = self.STRENGTH + random.randint(10, 15)
            self.SPEED = self.SPEED + random.randint(15, 20)  # 敏捷
            self.POWER = self.POWER + random.randint(8, 12)  # 力量
            self.WISDOM = self.WISDOM + random.randint(10, 15)  # 智慧
            self.INTELLIGENCE = (self.INTELLIGENCE + 100) - self.STRENGTH - self.SPEED - self.INTELLIGENCE - self.WISDOM
            self.LIFE = self.STRENGTH * 20  # 生命
            self.MAGIC = (self.INTELLIGENCE + self.WISDOM) * 10  # 魔法
        elif self.Career.currentText()=='巫师':
            self.CARRER = '巫师'
            self.STRENGTH = self.STRENGTH + random.randint(5, 10)
            self.SPEED = self.SPEED + random.randint(15, 20)  # 敏捷
            self.INTELLIGENCE = self.INTELLIGENCE + random.randint(15, 20)  # 智力
            self.POWER = self.POWER + random.randint(5, 10)  # 力量
            self.WISDOM = (self.WISDOM + 100) - self.STRENGTH - self.SPEED - self.INTELLIGENCE - self.WISDOM
            self.LIFE = self.STRENGTH * 20  # 生命
            self.MAGIC = (self.INTELLIGENCE + self.WISDOM) * 10  # 魔法
        return self.POWER, self.SPEED, self.STRENGTH, self.INTELLIGENCE, self.WISDOM, self.LIFE, self.MAGIC
if __name__ == '__main__':
    app = QtWidgets.QApplication(sys.argv)
    MainWindow=QtWidgets.QMainWindow()
    ui =Ui_MainWindow()
    ui.setupUi(MainWindow)
    MainWindow.show()
    sys.exit(app.exec_())

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值