チャプターごとにゲームを開始できるようにする

提供:Ren'Py Snippets
移動: 案内, 検索

メニュー上にチャプターごとのボタンを配置し、それぞれの位置からシナリオを開始するには、チャプターごとにラベルブロックを作り、Screen Language の Start アクションにパラメーターを設定することで実現できます。

次の例では、メインメニュー画面にチャプター開始ボタンを追加しています。もちろん、新しくチャプター選択画面を作り、そこでプレイヤーに選んでもらうこともできます。

screens.rpy # screen main_menu
         textbutton _("Start Game") action Start()
+
+        # chapter2 ラベルからスタートするボタンを追加
+        textbutton _("Start Chapter 2") action Start("chapter2") 
+
         textbutton _("Load Game") action ShowMenu("load")
         textbutton _("Preferences") action ShowMenu("preferences")
         textbutton _("Help") action Help()
         textbutton _("Quit") action Quit(confirm=False)
init:
    define e = Character("アイリーン", image="eileen")
    image bg washington = "washington.jpg"
    image eileen happy = "eileen_happy.png"
    image eileen concerned = "eileen_concerned.png"
 
# スタートブロック(チャプター1)
label start:
 
    scene bg washington
    show eileen happy
    e "「チャプター1、はじまります!」"
 
    # jump や return をしない場合、そのまま次のラベルブロックに進む 
 
# チャプター2
label chapter2:
 
    scene bg washington
    show eileen concerned
 
    e "「え、もうチャプター2なの?」"

Start アクションにパラメーターを指定しないと、どうなるのでしょう?パラメーターを省略した場合は、start がパラメーターとして渡されたと解釈されます。逆に言えば、通常のゲーム開始ボタンに設定された Start アクションにパラメーターを設定すれば、start ラベルブロック以外からシナリオを開始することも可能だということです。

関連項目

個人用ツール
名前空間
変種
操作
コンテンツ
案内
ツールボックス