ティラノゲームフェス2017入賞作品決定!

  • iPhone・Androidアプリ化対応。HTML5で動くノベルゲーム製作キット

キャラクター操作を詳しく

キャラクター操作タグについて詳しく見ていきます。
今回制作するのは以下のサンプルです。

画面サンプル


ティラノスクリプトはノベルゲームの基本であるキャラクター操作について、豊富な機能が 最初から用意されています。主なキャラクター操作関連のタグは以下のとおりです。

  • [chara_config] キャラクター表示に関する基本設定
  • [chara_new] 新しいキャラクターを定義
  • [chara_show] 定義したキャラクターを表示
  • [chara_hide] 表示されたキャラクターを退場
  • [chara_mod] キャラクターの画像を変更(表情切り替えなど)
  • [chara_delete] キャラクター定義の削除

  • まず、キャラクターを表示する前にキャラクターの情報を定義剃る必要があります。 以下のコードをみてください。 ;キャラクターミクを登録
    [chara_new name="miku" storage="miku1.png" jname="ミク"]
    ;キャラクターレンを登録
    [chara_new name="ren" storage="ren1.png" jname="レン"]


    この例では「miku」「ren」という2人のキャラクターを定義しました。 この時点ではまだ、画面にキャラクターは表示されていません。

    その後に、キャラクターを表示させる命令を入れることで画面にキャラクターが登場します。
    jname 属性はそのキャラクターの名前を日本語で設定しておきます。
    ;キャラクターミクを登録
    [chara_new name="miku" storage="miku1.png" jname="ミク"]
    ;キャラクターレンを登録
    [chara_new name="ren" storage="ren1.png" jname="レン"]

    ;キャラクターミクを表示
    [chara_show name="miku"]
    ;キャラクターレンを表示
    [chara_show name="ren"]


    いかがでしょう。シンプルで簡単ですね。
    キャラクターの位置も表示される人数によって、自動的に計算されます。


キャラクター名の表示

ただ、これだと誰がしゃべっているかわかりにくいですね。
いましゃべっているキャラクターの名前を表示してみましょう。

まず、キャラクターの名前を表示する領域を確保しましょう。 [ptext name="chara_name_area" layer=message0 width="200" color=white x=40 y=300 size=26]
このようにメッセージエリアに[ptext]タグを配置します。
次にこの[ptext]をキャラクター表示用に使いますよー。という宣言をします。
[ptext name="chara_name_area" layer=message0 width="200" color=white x=40 y=300 size=26]
[chara_config ptext="chara_name_area"]

これで、先に宣言指定はptextをキャラクター名前用に使用することができるようになりました。 以下のようなコードを実行してみましょう。
#miku
はじめまして。ミクだよ[l][cm]
#ren
こんにちは。レンです。 [l][cm]



実行結果


#(シャープ)【キャラクターのname属性】と指定することで、そのキャラクターに設定された(jname)がptextに表示されている事がわかります。

表示を消したい場合は # のみ記述することで非表示にできます。

キャラクター表情登録

キャラクターの表情を変更するたびに画像を指定するのは手間がかかりますね。
事前にキャラクターの表情と画像を登録しておくと、表情を指定するだけで立ち絵を変更できるようになりました。

;表情の登録
[chara_face name="yuko" face="angry" storage="newface.png"]

;表情の適応
[chara_mod name="yuko" face="angry"]

;発言者の名前も同時にかえたい場合
[chara_ptext name="yuko" face="angry"]

;短縮して書けます。以下も同じ意味
#yuko:angry

;chara_new で登録した画像はdefaultという名前で指定可能
#yuko:default

まとめ

いかがでしょう。その他にもキャラクターの退場や表情変更などもあります。
使い方は全く同じで、定義したキャラクターのname属性を指定するだけです。

それらを含めたサンプルを以下に記述しておくので参考にしてください
@wait time=1000
[title name="キャラクタータグサンプル"]

;メッセージウィンドウのサイズ調整

;ノベルゲームで便利なプラグインの読み込み
[call target=*start storage="tyrano.ks"]

;文字スピード調整
[delay speed=30]

;一旦メッセージウィンドウを非表示にする
@layopt layer=message0 page=fore visible=false
@layopt layer=message0 page=back visible=false

;背景の表示
[back storage="stage.jpg" ]

;名前表示用のptextを設定
[ptext name="chara_name_area" layer=message0 width="200" color=white x=40 y=300 size=26]

;メッセージエリアを下部に持ってきて、フレーム画像の設定
[position height=200 top=280 ]
[position layer=message0 page=fore frame="frame.png" margint="50" marginl="30" marginr="40" marginb="30"]
[cm]

;レイヤの表示
@layopt layer=message0 visible=true

[chara_config ptext="chara_name_area"]

[chara_new name="miku" storage="miku1.png" jname="ミク"]
[chara_new name="ren" storage="ren1.png" jname="レン"]
キャラクター表示します[l][r][cm]
[chara_show name="miku"]
[chara_show name="ren"]


#miku
はじめまして。ミクだよ[l][cm]
#ren
こんにちは。レンです。 [l][cm]
ぼくは退場するね[l][cm]
[chara_hide name=ren]

#miku
レンはいなくなったね。[l][cm]

#ren
私も消えるね[l][cm]
[chara_hide name=miku]

;#のみの記述だと、非表示状態に出来ます。
#
だれもいなくなった。[l][cm]
ミクさん再登場[l][cm]

[chara_show name="miku"]

表情を変更します[l][cm]

[chara_mod name="miku" storage="miku2.png"]

[l]

サンプルを終了します

[s]