だから私の最初の大きな python プロジェクトでは、テキスト ベースのゲームを構築しています。モジュール化されているため、実際のソース コードを少し編集するだけで、ストーリーやアイテムなどを編集および置換できます。基本的に、ユーザーコマンドは文字列として保存され、すぐにリストに分割されます。最初の要素は 'inspect' のようなアクションで、2 番目の要素は 'location' や 'item' のようなそのアクションの疑似引数です。コマンドが解釈された後、「item_or_loc」という実行モジュールに移動します。ここでエラーが発生します。誰でも助けることができますか?役立つ場合は、詳細情報またはソース コード全体を提供します。
コマンド モジュール:
def item_or_loc(iolo):
if iolo in items.items_f():
print (items.iolo(1))
elif iolo in locations.locations_f():
print (locations.iolo(1))
else:
print ('Command not recognized, try again.')
def location(loco):
plo_l = PlayerClass #(player location object_location)
if loco == 'location':
plo_l.player_loc(0)
def abort(abo):
sys.exit()
def inventory(invo):
pio_i = PlayerClass #(player inventory object_inventory)
if invo == 'inventory':
pio_i.player_inv(0)
アイテム モジュール:
patient_gown=('Patient gown', 'A light blue patient\'s gown.')
wrench=('Wrench','')
stick=('Stick','')
prybar=('Prybar','')
screwdriver=('Screwdriver','')
scalpel=('Scalpel','')
broken_tile=('Broken tile','')
hatchet=('Hatchet','')
janitor_suit=('Janitor suit','')
Locations モジュール: 基本的に Items モジュールと同じ
プレーヤー モジュール:
import items
import locations
class PlayerClass:
def player_inv(inv_index):
pinventory = [items.patient_gown[inv_index]]
print (pinventory)
def player_loc(loc_index):
ploc = [locations.cell[loc_index]]
print (ploc)