我正在尝试为游戏创建角色生成向导。在一类中,我计算了角色的属性。在另一个类中,我根据角色的属性向用户显示哪些专业可用。但是,我不记得如何在不同的类之间传递变量。
这是我所拥有的一个例子:
class BasicInfoPage(wx.wizard.WizardPageSimple):
def __init__(self, parent, title):
wiz.WizardPageSimple.__init__(self, parent)
self.next = self.prev = None
self.sizer = makePageTitle(self, title)
<---snip--->
self.intelligence = self.genAttribs()
class MOS(wx.wizard.WizardPageSimple):
def __init__(self, parent, title):
wiz.WizardPageSimple.__init__(self, parent)
self.next = self.prev = None
self.sizer = makePageTitle(self, title)
def eligibleMOS(self, event):
if self.intelligence >= 12:
self.MOS_list.append("Analyst")
问题是我不知道如何使用从 BasicInfoPage 类到 MOS 类的“智能”变量。我尝试了互联网上的几种不同的方法,但似乎没有任何效果。我错过了什么?
编辑我在发布此内容后意识到我没有很好地解释它。我正在尝试从 1980 年代创建 Twilight 2000 RPG 的计算机版本。
我正在使用 wxPython 创建一个向导;我的类的父类是来自 wxPython 的向导。该向导将引导用户创建角色,因此基本信息页面(BasicInfoPage 类)允许用户提供角色的名称和角色属性的“滚动”。这就是“self.intelligence”的来源。
我正在尝试将她创建的属性用于向导中进一步的页面,用户可以在其中选择角色的专业。可用的专长取决于角色的属性,例如,如果智力足够高,则角色可以是 Intel Anaylst。
自从我编程以来已经有好几年了,尤其是在 OOP 的想法方面。这就是为什么我对如何使用类和方法创建本质上是全局变量的东西感到困惑。