Last active
December 14, 2015 08:59
-
-
Save vbkaisetsu/5061797 to your computer and use it in GitHub Desktop.
MultiCharacter example code
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# | |
# MultiCharacter example script for: | |
# https://github.com/vbkaisetsu/renpy/compare/multi-character | |
# | |
# Author: Koichi Akabe <[email protected]> | |
# | |
############################################################################## | |
# DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE | |
# Version 2, December 2004 | |
# | |
# Copyright (C) 2004 Sam Hocevar <[email protected]> | |
# | |
# Everyone is permitted to copy and distribute verbatim or modified | |
# copies of this license document, and changing it is allowed as long | |
# as the name is changed. | |
# | |
# DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE | |
# TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION | |
# | |
# 0. You just DO WHAT THE FUCK YOU WANT TO. | |
# | |
############################################################################## | |
# | |
# 関数: | |
# MultiCharacter(who=renpy.character.NotSet, kind=None, col=0, | |
# group=None, **properties) | |
# 2人以上のキャラクターの台詞を1つの画面に表示します。 | |
# 引数説明: | |
# col ... そのキャラクターの台詞をどの列に表示させるか。一番左が 0 。 | |
# group ... キャラクターが属するグループの名前です。同じグループに属するキャラク | |
# ターの台詞は、同じウィンドウに表示されます。None にした場合は、 | |
# グループ名は dual となります。 | |
# | |
# スタイル: | |
# キャラクターを定義すると、指定されたグループ名に従って次の3つのスタイルが作成されます: | |
# multi_child_label_{group} ... キャラクター名が表示されるウィンドウのスタイル | |
# multi_child_dialogue_{group} ... 台詞が表示されるウィンドウのスタイル | |
# multi_child_window_{group} ... 台詞とキャラクター名を含むウィンドウのスタイル | |
# | |
# これら以外に、デフォルトで2つのスタイルがあります: | |
# multi_window ... MultiCharacterで使用される最上位のウィンドウのスタイル | |
# multi_hbox ... 台詞を横に並べる hbox のスタイル | |
# | |
# ステートメント: | |
# multi clear ... すべてのキャラクター名と台詞を消去します。 | |
# | |
# showlater=True を指定すると、他のセリフの開始と同時に指定した台詞が開始されます。 | |
# 例: | |
# $ yuka("この台詞は同時に流れます", showlater=True) | |
# maria "この台詞は同時に流れます" | |
# | |
# 3人の台詞を同時に表示する場合は、スタイルとキャラクターを例えば次のように定義します: | |
# | |
# define yuka = MultiCharacter("ユカ", col=0, group="triple", color="#c8ffc8") | |
# define maria = MultiCharacter("マリア", col=1, group="triple", color="#ffc8c8") | |
# define me = MultiCharacter("僕", col=2, group="triple", color="#c8c8ff") | |
# | |
# init python: | |
# style.multi_child_window_triple.xminimum = int(config.screen_width / 3) - 7 | |
# style.multi_child_window_triple.xmaximum = int(config.screen_width / 3) - 7 | |
# | |
init python: | |
style.default.font = "YOzFontE-Regular-strip.ttf" | |
style.default.language = "japanese-strict" | |
style.default.layout = "greedy" | |
style.default.line_spacing = 3 | |
style.default.line_leading = 3 | |
define yuka = MultiCharacter("ユカ", col=0, color="#c8ffc8") | |
define maria = MultiCharacter("マリア", col=1, color="#ffc8c8") | |
define me = Character("僕", color="#c8c8ff") | |
label start: | |
yuka "なんでこんなことも分からないの?こんな証明問題、直感的に分かるじゃない!" | |
maria "そんな説明でユウタ君が分かると思ってるの?ユウタ君、気合が大切!気合があれば解けるわ!" | |
yuka "何よ気合って。念力でも使って解くわけ?" | |
maria "は?あんたこそ直感で解くとか言って、カンニングしてるんじゃないの?" | |
$ yuka("ユウタくん、マリアの説明どう思う?", showlater=True) | |
menu: | |
maria "私の説明のほうが分かりやすいよね?" | |
"うーん、正直どっちの説明も分かりづらい": | |
call bad | |
"うん、ありがとう。どっちの説明も分かりやすいよ": | |
call good | |
return | |
label bad: | |
me "うーん、ごめん、正直どっちの説明も分かりづらいなぁ。" | |
yuka "はあ?何でわからないの?" | |
maria "ユウタくん、私の説明がわからないなんてひどい!" | |
me "ああ、ごめんごめん。えっと、ここで何でラグランジュリゾルベントが出てくるの?いきなり過ぎててさぁ。" | |
return | |
label good: | |
me "うん、ありがとう。どっちの説明も分かりやすいよ!{p}{size=12}あとでサトコちゃんに聞いておくか{/size}" | |
yuka "ん?ユウタ君なにか言った?" | |
maria "うん、絶対言った。サトコちゃんって誰?" | |
return |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment