選択肢 link

In many visual novels, the player is asked to make choices that control the outcome of the story. The Ren'Py language contains a menus statement that makes it easy to present choices to the user.

Here's an example of a menu statement:

menu:
     "What should I do?"

     "Drink coffee.":
         "I drink the coffee, and it's good to the last drop."

     "Drink tea.":
         $ drank_tea = True

         "I drink the tea, trying not to make a political statement as I do."

     "Genuflect.":
         jump genuflect_ending

label after_menu:

     "After having my drink, I got on with my morning."

The menu statement begins with the keyword menu. This may be followed by a label name, in which case it's equivalent to preceding the menu with that label. For example:

menu drink_menu:
    ...

menu ステートメントには、インデントされたブロックを続けます。このブロックには say ステートメント も書くことができ、少なくとも一つ選択肢を書かなければなりません。say ステートメント があれば、選択肢と同時にそれが画面に表示されます。

選択肢 選択肢は、ユーザーが選べる項目です。選択肢は文字列で始まります。その文字列に if 節を続けると、それを選択肢表示の条件に出来ます。選択肢はコロンで終わり、Ren'Py ステートメントのブロックを続けなければなりません。

選択肢が選ばれると、ステートメントのブロックが実行されます。ブロックが最後まで実行されると、menu ステートメント後にあるステートメントに実行が続きます。

An if-clause consists of the keyword if, followed by a python expression. The menu choice is only displayed if the expression is true. In the following menu:

menu:
    "Go left.":
        ...
    "Go right.":
        ...
    "Fly above." if drank_tea:
        ...

The third choice will only be presented if the drank_tea variable is true.