これは、私が今日尋ねた質問 ( "List" Object Not Callable, Syntax Error for Text-Based RPG ) に連結されています。今、私のジレンマは、プレイヤーのハーブ リストにハーブを追加することにあります。
self.herb = []
開始ハーブリストです。関数 collectPlants:
def collectPlants(self):
if self.state == 'normal':
print"%s spends an hour looking for medicinal plants." % self.name
if random.choice([0,1]):
foundHerb = random.choice(herb_dict)
print "You find some %s." % foundHerb[0]
self.herb.append(foundHerb)
print foundHerb
else: print"%s doesn't find anything useful." % self.name
foundHerb がランダムに選択されます。このアイテムをきちんとした方法でリストに追加するにはどうすればよいですか (現在、ハーブの名前が表示されてから「なし」と表示されます)、同じハーブを複数持つことができるようにするにはどうすればよいですか?
ハーブクラスは次のとおりです。
class herb:
def __init__(self, name, effect):
self.name = name
self.effect = effect
ハーブのサンプルリスト (警告: 未成熟):
herb_dict = [
("Aloe Vera", Player().health = Player().health + 2),
("Cannabis", Player().state = 'high'),
("Ergot", Player().state = 'tripping')
]