2016-05-24 22 views
0

私はPythonでテキストベースのアドベンチャーゲームを書いています。私はint(input("blah"))ifステートメントで選択をしています。Pythonでコードを実行して端末を別のファイルに送る方法

基本的に私は3つの選択肢を与え、1~3の番号を選択するように指示します。彼らが1を選択すると、端末に一致するものが端末に表示されます。私は1レベルの対話を作ったので、私は2つのレベルを持つことができません。

例:私はそれらに3つの選択肢を与えます。私はifの文を書いているので、端末に1を入力すると 'Blah'が画面に表示されます。それから、私は3つの選択肢を与えます。

私はこれを行うことはできません。なぜなら、ステートメントの最後にコードを実行するだけなので、これはできません。私は別のドキュメントを作ることができるようにする必要があります。異なるオプションを選択すると、入力したデータの負荷を処理でき、さらに1レベル以上のアドベンチャーゲームプレイを持つことができます。

編集:これは可能ですか?

コードは少し次のようになります。

choice1 = int(input("Choose a number ")) 

if choice1 == 1: 
    cho1_1() 
if choice1 == 2: 
    cho1_2() 
if choice1 == 3: 
    cho1_3() 

def cho1_3(): 
     print ("'Say anything like that again to me and the only thing you'll see is the damp ceiling of my cellars.'") 
+0

なぜ、最初からすべてを書くのではなく、http://www.evennia.com/のようなMUDエンジンを使用しないのですか? – Samuel

+1

本当ですが、最初からすべてをやるという満足感はとても良いです。 XD @Samuel –

答えて

0

私が思うに、良い解決策は、レベルごとに独自のデータファイルを作成することです。

ルームオブジェクトは、アイテム、敵のいくつかのインスタンスを保持します...

  • 部屋
  • Itmes
  • クエスト
  • など: これらのファイルには、次のオブジェクトが含まれている必要があります...など

    試験のためいくつかの部屋に入ると、 "あなたの方向を選択"ダイアログが表示されます 方向選択に応じて、ゲームは自分のデータで他の部屋を読み込みます。 次のレベルに移動すると、新しいデータファイルをロードするだけです。

    レベルデータファイルを慎重に設計する場合は、最初にやる必要があります。

関連する問題