SRC ヘルプ

Talkコマンド

キャラクター間の会話などのメッセージを表示

書式

Talk [character position option]

messages

End (またはSuspend)

指定項目説明

character喋らせるパイロット・非戦闘員の名称もしくは愛称

特殊なパターンとしてナレーター、システムがある

省略も可能

positionメッセージ表示時にマップ画面中央に表示する座標(省略可)

以下の3種類の指定が可能

X Y の場合には座標(X, Y)を中央に表示

母艦の場合には母艦を中央に表示

中央の場合は本来なら中央表示されない場合でも中央表示を行う

固定の場合は中央表示をキャンセルする

option表示に関するオプション。

messages表示させるメッセージ。複数行指定可能

解説

メッセージを表示させるコマンドです。他のコマンドと異なり、複数行から構成されています。Talk行の後の行がメッセージとして一行ずつメッセージウィンドウに表示され、End行(またはSuspend行)までくるとメッセージは終了します。途中で話者を変えるときは再度Talk行を使ってください。

End行が無い場合、Talk行以降の行がすべてメッセージと解釈されます。

Endの付け忘れに注意してください。

characterにナレーターを指定すると、顔グラフィックが空白のままでメッセージが表示されます。システムを指定するとメッセージからパイロット名とかぎ括弧が省略されます。

characterに愛称を指定した場合、同じ愛称を持つパイロットや非戦闘員が複数存在する際のデータの優先度は以下のようになります。

(1) CreateコマンドまたはPilotコマンドで作成されたパイロット

(2) 作成されていないパイロット

(3) 非戦闘員

同じ優先度のデータ同士の場合はデータファイル中で先に定義されているものが優先されます。

character を省略した場合はcharacter にシステムを指定した時と同様、メッセージからパイロット名とかぎ括弧が省略され、かつ顔グラフィックの更新が行われません。

例

Talk 刑事

この男に見覚えがないか?

Talk 怪しい男

Talk

写真

End

話者がパイロットの場合にはそのパイロットが乗っているユニットがメッセージ表示時にマップ中央に表示されます。また、待機中や破壊された味方ユニットのパイロットの場合はそのパイロットが母艦にいるものとみなされ、味方ユニットのうちで母艦能力を持つユニットが中央に表示されます。母艦がマップ上に存在しない場合は中央表示は行われません。また、指定したパイロットがユニットに乗っていない場合も中央表示は行われません。

character に括弧付きの名前のパイロット名を指定したとき(例 アリス(笑顔))、指定したパイロットが存在しなければ括弧部分を削除した名前のパイロットが乗るユニットが画面中央に表示されます。このため、パイロット名ではなくパイロットの表情名を指定しても中央表示は行われます。

未作成のパイロットもしくは非戦闘員が喋る際や、プロローグイベント時及びエピローグイベント時には中央表示が行われません。また、PaintPictureコマンド等で画面上に描画が行われている場合も描画内容を消さないようにするため、中央表示は行われません。ただし、これらの場合でもposition に固定以外を指定した場合は強制的に中央表示が行われます。

中央表示が自動で行われない場合や、中央表示する位置を変更したい場合はposition に表示したい座標を指定します。X Y と指定した場合にはその地点が表示されます(「1 1」がマップ左上隅に対応)。 指定した座標がマップ外にある場合は座標指定は無視されます。母艦と指定した場合には味方ユニットのうちで母艦能力を持つユニットが中央に表示されます。また中央を指定した場合は話者が乗るユニットを中央表示します。

これとは逆に話者の中央表示をキャンセルしたい場合もposition を使います。position に固定と指定します。

ユニットの中央表示が行われる場合、中央表示されたユニット上にカーソルが表示されます。このカーソルを表示したくない場合はoption に非表示と指定して下さい。

option には上で述べた非表示以外に白黒、左右反転等のPaintPictureコマンドに指定可能なオプションが指定できるようになっています(「透過」と「背景」を除く)。これらの描画系オプションはキャラクター画像の描画の際に使われます。

メッセージ中にスペースや「、」や「。」がある場合にはその場所で優先的に改行を行いますが、意図したように改行が入らない場合もあります。その場合には改行して欲しい個所に「;」(半角文字)を挿入して強制的に改行してください。メッセージを一部ずつ段階的に表示したい場合は、区切りたい場所に「:」(半角文字)を挿入してい下さい。

例

Talk 霞

ほんとほんと、もっとしょぼいのかと思ってたけど…:;ありゃ!?

End

メッセージがモノローグ(独り言)の場合はメッセージ全体を「()」(半角文字)で囲ってください。メッセージが「」の代わりに()で囲まれるようになります。

例

Talk 霞

(大ピンチ、って事ね…)

End

メッセージ中に「ーー」という文字列が含まれている場合、文字列は「──」のように罫線に置換されて表示されます。これはメッセージウィンドウの表示を漫画等での台詞や擬音の表示に似せるための処理です。

メッセージ内に「$(式)」という文字列を入れることで任意の式の値を表示することもできます。

例

破壊 敵:

Talk 烈

あと$(敵数)機!

End

character の先頭に「@」をつけるとcharacter ではなくcharacter が乗っているユニットのメインパイロットが指定されたと見なします。変身ヒーローなど、追加パイロットによってメインパイロットが変化するキャラのせりふを表示する場合に使います。

例 Talk @藤堂光

Talkコマンドの終わりをEnd行の代わりにSuspend行を使って指定した場合、メッセージウィンドウがそのまま表示され続けます。会話中に効果音の演奏や画像の表示などを行いたい場合に利用して下さい。

例

Talk 霞

きゃーっ!! どこ触ってんのよ!!

Suspend

PlaySound Slap.wav

Talk 烈

な、なんでこうなるの……

End

HTMLのようにTalkコマンドのメッセージ中にタグを入れることでフォントの属性を変更することができます。下記のタグが利用可能です。

<B>太字にします。

<I>斜体にします。

<BIG>文字サイズを2大きくします。

<SMALL>文字サイズを2小さくします。

<SIZE=数値>文字のサイズを指定された数値に設定します。デフォルトでは12になっています。

<COLOR=色指定>文字の色を指定された色に設定します。色指定には次の3つの方法があります。

・RGB16進を使用。(例 <COLOR=#ff0000>)

・RGB関数を使用。(例 <COLOR=RGB(255,0,0)>)

・HTML3.2で定義された色名を使う

Black, Gray, Silver, White, Red, Yellow, Lime, Aqua

Blue, Fuchsia, Maroon, Olive, Green, Teal, Navy, Purple

(例 <COLOR=Red>)

タグの効果を終了させるには</タグ名>を使います。

例 <BIG>なんですって!</BIG>

「<」や「>」を表示させたい場合、そのままではそれぞれがタグの一部として解釈されてしまうため、タグを使って表示する必要があります。それぞれ<LT>、<GT>を使います。

メッセージに空行がある場合、SRCはEnd行の付け忘れと判断してエラーメッセージを表示します。メッセージ中に空行は作らないで下さい。