私はPrologでテキストベースのアドベンチャーゲームを書こうとしています。したがって、私はたくさんのwriteline文を持っています。私は私のテキストの出力処理を遅くすることができるかどうか疑問に思っていた。したがって、次のシナリオを想像してみてください。Prolog Delay Textの実行
私は印刷されたテキストブロックAを持っています。 テキストブロックBは2秒後に印刷されますが、: - 記号はプロローグなしです。
私の最初のアイデアは、現在の時刻と現在の時刻+2秒を比較するループを書くことでしたが、: - 記号を取り除くことはできません。
残念ながら;私はPrologの初心者であり、Iiはスレッド処理についての手掛かりを持っていません。
文が役に立つかもしれないが、それは全く動作しません:
delayText([H|T]) :-
put_char(H),
flush_output,
sleep(0.1),
delayText(T).
delayText([]).
フラッシュ出力も睡眠どちらも動作するようです。
私はEclipseでProDTを使用しています。 ありがとうございます。 Chris。