如果我有一个为基于文本的RPG生成项目的类,比如--请记住这是我使用的代码的简化版本:
from random import choice, randint
class Weapon(object):
def __init__(self, name, value, damage):
self.name = name
self.value = value
self.damage = damage
class CreateWeapon(object):
def __init__(self):
self.prefix = ['rusty', 'polished', 'blessed']
self.weaponType = ['long sword', 'halberd', 'axe']
def generate(self):
weaponName = choice(self.prefix) + ' ' + choice(self.weaponType)
print weaponName
if weaponName[0] == 'r':
weaponDamage = randint(5, 20)
else:
weaponDamage = randint(20, 40)
weaponValue = randint(1, weaponDamage * 3)
return Weapon(weaponName, weaponValue, weaponDamage)
我的问题是:如何操作我通过createwealth类的generate()
方法创建的武器对象?例如,如果我有一个具有inventory属性的player类:
class Player(object):
def __init__(self):
self.inventory = {'weapons': []}
def addWeaponDrop(self):
createweapon = CreateWeapon()
createweapon.generate()
print 'What do?'
"""self.inventory['weapons'].append()"""
player = Player()
。。。我调用player方法addWeaponDrop()
来创建一个随机的武器,如何将这个武器对象添加到玩家的库存中?谢谢你的帮助。你知道吗
生成函数返回一个武器。您只需要分配它(或直接存储它)。你知道吗
例如
或者直接储存
generate()
返回一个武器实例,您只需将其附加到库存中即可。你知道吗我必须说,我不认为CreateWealth应该是一个类。类是为武器本身而设的;
generate
应该是武器的类方法。你知道吗相关问题 更多 >
编程相关推荐