9

アクションの途中でユーザーにテキスト行を要求したいだけです。効果は次のようになります。

> north

The robot steps in front of you as you approach the gate.
"PAASSWAAAAWRD!!" it bellows.

Enter the password: _

この時点で、ゲームが一時停止し、プレーヤーがパスワードを推測できるようになります。たとえば、パスワードではない「フリブル」と推測するとします。

Enter the password: fribble

"WRONG PASSWAAARD!" roars the robot. "CHECK CAPS LAAAWWWWK!"

>

必要な動作は に似てif the player consentsいますが、単に yes または no ではなく、入力行全体が必要です。

4

3 に答える 3

13

Inform ではこれを行う簡単な方法はありませんが、Inform 6 にドロップすることでキーボード プリミティブにアクセスできる場合があります。

ただし、目的の効果を達成することは可能です。

The Loading Zone is a room. "Concrete with yellow stripes. The Hold is north."
The robot is an animal in the Loading Zone. "However, a robot the size of an Arcturan megaladon guards the way."

North of the Loading Zone is the Hold.

Instead of going north from the Loading Zone:
    say "The robot steps in front of you as you approach the gate. 'PAASSWAAAAWRD!!' it bellows.";
    now the command prompt is "Enter password: ".

After reading a command when the command prompt is "Enter password: ":
    if the player's command matches "xyzzy":
        say "The robot folds itself up into a cube to let you pass.";
        move the player to the Hold;
    otherwise:
        say "'WRONG PASSWAAARD!' roars the robot. 'CHECK CAPS LAAAWWWWK!'";
    now the command prompt is ">";
    reject the player's command.

この種のことは、ゲームプレイが貧弱であると考えられていると思います。プレイヤーに推測を強いることになり、プレイヤーのコントロールと選択の幻想が損なわれます。より一般的な方法は、プレーヤーにパスワードを言うように要求することです。

The Loading Zone is a room. "Concrete with yellow stripes. The Hold is north."
The robot is an animal in the Loading Zone. The robot is either awake or asleep. The robot is awake. "[if awake]However, a robot the size of an Arcturan megaladon guards the way.[otherwise]A cube of metal the size of an Arctural megaladon snores loudly.[end if]".
North of the Loading Zone is the Hold.

Instead of going north from the Loading Zone when the robot is awake:
    say "The robot steps in front of you as you approach the gate. 'PAASSWAAAAWRD!!' it bellows."

Instead of answering the robot that some text:
    if the topic understood matches "xyzzy":
        say "The robot folds itself up into a cube to let you pass.";
        now the robot is asleep;
    otherwise:
        say "'WRONG PASSWAAARD!' roars the robot. 'CHECK CAPS LAAAWWWWK!'"

コマンドsay xyzzy and answer xyzzy and robot, xyzzy and say xyzzy to robotはすべて機能します。

于 2012-11-08T13:48:35.653 に答える
5

これには、Michael Callaghan による拡張機能の質問が役立ちます。入力の大文字と小文字を区別して確実にテストできない場合があることに注意してください。

于 2013-10-07T10:44:32.203 に答える