テキスト履歴 link
Ren'Py にはテキストがユーザーに表示された後、テキストの各行を保存するテキスト履歴システムがあります。これはテキストを保存し、取り出してユーザーに再表示します。
テキスト履歴システムは 2 つの変数で制御されます。 config.history_length
変数は保存される履歴の最大数を制御し、履歴を有効化するために設定しなければなりません。 _history
変数は履歴の保存を有効、無効化するために利用出来ます。
最後に、 _history_list
変数は実際の履歴で、HistoryEntry オブジェクトのリストです。 HistoryEntry オブジェクトのフィールドには以下で定義するデータがあります。
- class HistoryEntry link
- kind link
この履歴を作成したキャラクターの種類です。Ren'Py はこれをある台詞行が表示されている間は "current" にその後は "adv" または "nvl" に設定します。
- who link
話しているキャラクターの名前の文字列か、そのような文字列がなければ None です。
- what link
テキストの文字列です。
- who_args link
元のテキストが表示された時に who テキストウィジェットに渡されたプロパティーを与える辞書です。
- what_args link
元のテキストが表示された時に what テキストウィジェットに渡されたプロパティーを与える辞書です。
- window_args link
元のテキストが表示された時に who テキストウィンドウに渡されたプロパティーを与える辞書です。
- show_args link
元のテキストが表示された時に say スクリーンに渡されたプロパティーを与える辞書です。
- image_tag link
Character()
に渡された画像タグか、そのようなタグがなければ None です。
- voice link
これは
_get_voice_info()
から返される、再生されるボイスの情報を保存したオブジェクトです。
- rollback_identifier link
これは
RollbackToIdentifier()
アクションに渡される identifier で、この HistoryEntry を生成したスクリプトコードの行にロールバック出来ます。ロールバックはコードがまだスクリプトログにあれば実行され、そうでなければアクションは無効になります。
いったん HistoryEntry が作成されると、開発者に新しいフィールドを追加出来るようにする config.history_callbacks
を各コールバックに渡されます。