スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

カテゴリ : スポンサー広告

KAGEX講座(4) - 背景表示

前回 KAGEX講座(3) - ワールド拡張
今回は背景を表示してみます。
前回書きましたが背景は舞台レイヤ(ステージレイヤ)に表示されます。

今回は背景として画像を二枚使用します。
必要なら↓二枚を持って行ってください。
bg01_01.pngbg01_02.png
昼間の画像の方を「bg01_01.png」、暗くなった画像の方を「bg01_02.png」とします。
プロジェクトフォルダのbgimageフォルダにいれておきます。

まずはenvinit.tjsに背景の定義を書きます。
※envinit.tjsには辞書配列と配列の形で定義を書いていきます。
※辞書配列そのものについては気が向けば解説します。→書きました
第一回で準備したenvinit.tjsを開いて以下のように書いてください。%[];とだけ書いていると思いますがそれは消していいです。
%[
    times : %[
         : %[
            prefix : "01",
        ],
         : %[
            prefix : "02",
        ],
    ],
    
    defaultTime : "昼",
    
    stages : %[
        道路 : %[
            image : "bg01_TIME",
        ],
    ],
];


次にfirst.ksを開いて以下のスクリプトを書きます。
@stage stage=道路
背景を表示しました。[l][r]

@stage stime=
舞台時間を切り替えました。[l][r]

実行すると背景としてbg01_01とbg01_02が表示されます。

以下解説。

背景を表示するには[stage]タグを使います。
[stage]タグのstage属性にenvinit.tjsのstagesに定義した背景を指定します。
ここではstage属性に「道路」が指定されています。
envinitの道路の定義としてはimageにbg01_TIMEが定義されています。
imageには背景画像のファイル名を定義するのですが、「TIME」の部分は舞台時間によって変わる部分です。
舞台時間はenvinitのtimesとして定義されています。ここでは「昼」と「夜」が定義されています。
TIMEの部分が舞台時間が昼のときには「01」、夜のときには「02」に入れ替わります。
つまり、timesの各定義(ここでは「昼」と「夜」)の「prefix」に指定されているものに入れ替わる、ということです。

今回のenvinit.tjsにはtimesとstagesのほかにdefaultTimeが定義されています。
defaultTimeにはデフォルトの舞台時間を指定します。ここでは「昼」となっています。
first.ksの最初の[stage]タグの時点では舞台時間がなにも指定されていません。(もちろん指定することは出来ますが)
このときにdefaultTimeに指定された舞台時間の画像が表示されます。
結果として、最初の[stage]タグでは「道路」の「昼」の画像、つまり「bg01_TIME」のTIME部分を「01」に入れ替えた「bg01_01」が背景として表示されます。

2つ目の[stage]タグでは舞台時間を設定しています(舞台時間はstime属性で指定します)
現在背景に設定されているのは「道路」なので、「bg01_TIME」のTIME部分を「02」に入れ替えた「bg01_02」が背景として表示されます。


当然[stage]タグにstage属性とstime属性を同時に指定することもできます。
@stage stage=道路 stime=
夜の道路を表示しました。



stage属性とstime属性については省略記法が使えます。
省略記法ではタグの名前や属性などを書く必要がありません。
↓のスクリプトで動いてしまいます。
@道路
; @stage stage=道路 と同じ
背景を表示しました。[l][r]

@
; @stage stime=夜 と同じ
舞台時間を切り替えました。[l][r]

これは先のスクリプトと同じ動きをします。

stage属性とstime属性を同時に指定するときには以下のようになります。
@道路 
; @stage stage=道路 stime=夜 と同じ
夜の道路を表示しました。

なんだかKAGEXっぽくなってきましたが今回はここまで。

簡単なまとめとして
・envinit.tjsに配列と辞書配列の形で定義を書く
・stagesに背景の定義を書く。
・timesに舞台時間の定義を書く。
・defaultTimeにデフォルトの舞台時間を定義する。

今回はstagesとtimesの各定義でprefixとimageを使いましたがその他にもいろいろあります。
それらについては順次紹介していきます。
馬鹿丁寧に[stage]タグを使いましたが普通使いません。
実際にシナリオを書くときは最後に紹介した省略記法で書いてください。
スポンサーサイト

タグ : 吉里吉里 KAGEX 講座

カテゴリ : KAGEX

コメントの投稿

非公開コメント

最新記事
カテゴリ

openclose

記事一覧
Twitter
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。