2016-09-14 6 views
0

私はコードの一部を作成しています。小さなAIのクリーチャーが部屋にランダムに入ってきて、そこに何かがあるかどうかを調べます。プレイヤーが以前に触れたことがあれば、そのアイテムを取ります。それに行く次の部屋は、そのアイテムを落とし、新しいものを拾うかもしれません。これまでのところ、私が持っている:私はそれをテストすることができますので、1つ以上のアイテムが存在する場合はドロップする

import random 
rooms = ['kitchen', 'livingroom', 'basement'] 
itemsstatus = {'Umbrella': 1, 'Coin': 1} 
itemsstatus['Umbrella'] = raw_input() 
print "itemstatus['Umbrella']", itemsstatus['Umbrella'] 
roominventory = ['Umbrella', 'Coin'] 
goblininventory = ['baseball'] 
notpickedanythingelse = 'true' 

gotoroom = random.choice(rooms) 
if(gotoroom == 'kitchen') or (gotoroom == 'livingroom') or (gotoroom == 'basement'): 
    ininventory = len(goblininventory) 
    if(ininventory >= 1): 
     roominventory.append(goblininventory[0]) 
     goblininventory.remove([0]) 
    else: 
     print "" 

    for items in roominventory: 
     if(itemsstatus[items] == 1) and (notpickedanythingelse == 'true'): 
      goblininventory.append(items) 
      roominventory.remove(items) 
      notpickedanythingelse = 'false' 
     else: 
      print "" 
    notpickedanythingelse = 'true' 

    print roominventory 
    print goblininventory 

itemstatus [「」] = rawinput()ゲームによって自動的に行われますし、生の入力プログラムではありません、それはちょうどここにあります。同様に、各部屋には独自の在庫とループがありますが、これは単純です。ゴブリンはアイテムを拾い上げて保持しますが、すでに持っているものを削除しません(一度に1つしか持ち運ぶことができません)。新しい部屋に入ると保持しているアイテムを落とすように、どうすれば入手できますか?

+1

、あなたのコードで、特定の問題を抱えていますか?サンプル出力と期待される出力を提供できますか? – alexbclay

+0

'Traceback(直近の最後の呼び出し): ファイル" python "、15行目、 ValueError:list.remove(x):xがリストにありません。 – Adam

+0

何かを削除できないためですそれがリストに含まれていない場合はリストから削除してください。 – RPGillespie

答えて

関連する問題