我正在尝试为游戏创建角色生成向导。在一堂课中,我计算了角色的属性。在不同的班级中,我根据角色的属性向用户显示哪些专业可用。但是,我不记得如何在不同类之间传递变量。
这是我所拥有的示例:
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 类。我已经尝试了互联网上的几种不同的方法,但似乎没有任何效果。我缺少什么?
Edit发完这篇文章后我意识到我没有解释得那么清楚。我正在尝试创建 20 世纪 80 年代 Twilight 2000 RPG 的电脑版本。
我正在使用 wxPython 创建一个向导;我的类的父类是 wxPython 中的 Wizard。该向导将引导用户完成角色的创建,因此基本信息页面(BasicInfoPage 类)允许用户提供角色的名称和角色属性的“滚动”。这就是“自我智慧”的由来。
我正在尝试使用为向导中的后续页面创建的属性,用户可以在其中选择角色的专长。可用的专业取决于角色所具有的属性,例如如果智力足够高,该角色可以成为英特尔分析师。
我已经好几年没有编程了,尤其是使用 OOP 思想。这就是为什么我对如何使用类和方法创建本质上是全局变量的内容感到困惑。