CGモードを使おう

CGモードを使用可能にする

まずはCGモードを使えるようにするために、プラグインを読み込むことが必要です。 AlmightではCGモードのプラグインを用意してありますので、libフォルダ内のconfigフォルダにあるalmight.config.jsをテキストエディタで開いて下さい。

以下のように記載されている箇所があるので、//'cgmode.html',となっている部分のスラッシュ二つを削除し、'cgmode.html',と書き換えて下さい。

// Almightプラグイン
plugin: [
    'blue-ui.html', // ナビゲーションバーや各種UI部品を追加(青テーマ)
    'history.html', // メッセージ履歴機能を追加
    'save.html', // セーブ画面を追加
    'load.html', // ロード画面を追加
    'setting.html', // 環境設定画面を追加
    //'title.html', // タイトル画面を追加
    //'cgmode.html', // CGモードを追加
    'sidebar.html' // サイドバー機能を追加
],

プラグインが正常に読み込まれている場合は、サイドバーを表示した際に「CGモード」というボタンが表示されます。

CGモードを編集する

それでは「tutorial」フォルダの中にある「lib」フォルダを開き、「plugin」フォルダ内にある「cgmode.html」というファイルをテキストエディタで開いてください。 以下のように記載されている部分を編集するとCGモードに画像を表示することができます。

var cgdata = [
    // 1枚目
    [
    { exp:'sf.ev001a', img:'ev001a.jpg' },
    { exp:'sf.ev001b', img:'ev001b.jpg' },
    { exp:'sf.ev001c', img:'ev001c.jpg' }
    ],
    // 2枚目
    [
    { exp:'sf.ev002a', img:'ev002a.jpg' }
    ],
    // 3枚目
    [
    { exp:'sf.ev003a', img:'ev003a.jpg' },
    { exp:'sf.ev003b', img:'ev003b.jpg' }
    ],
    // 4枚目
    [
    { exp:'sf.ev004a', img:'ev004a.jpg' },
    { exp:'sf.ev004b', img:'ev004b.jpg' }
    ],
    // 5枚目
    [
    { exp:'sf.ev005a', img:'ev005a.jpg' },
    { exp:'sf.ev005b', img:'ev005b.jpg' }
    ]
];

CGモードで必要になるものは、変数名と画像名です。 expには変数名を、imgには画像名を指定します。 システム変数であるsf変数に1かtrueが代入されているとCGが解放され、imgに登録されている画像ファイルが表示可能になります。 expに式を書く場合は'sf.ev001a == true'のように書くべきですが、CGモードでは、代入されている値がtrue1の場合は'sf.ev001a'と省略形で書くことができます。 imgに画像名を登録する際には、 'ev001a.jpg' というように拡張子まで書くように注意して下さい。

そして、上記のように初期状態だと画像の窓が5つですが、

画像

以下のように6枚目を追加すると、

var cgdata = [
    // 1枚目
    [
    { exp:'sf.ev001a', img:'ev001a.jpg' },
    { exp:'sf.ev001b', img:'ev001b.jpg' },
    { exp:'sf.ev001c', img:'ev001c.jpg' }
    ],
    // 2枚目
    [
    { exp:'sf.ev002a', img:'ev002a.jpg' }
    ],
    // 3枚目
    [
    { exp:'sf.ev003a', img:'ev003a.jpg' },
    { exp:'sf.ev003b', img:'ev003b.jpg' }
    ],
    // 4枚目
    [
    { exp:'sf.ev004a', img:'ev004a.jpg' },
    { exp:'sf.ev004b', img:'ev004b.jpg' }
    ],
    // 5枚目
    [
    { exp:'sf.ev005a', img:'ev005a.jpg' },
    { exp:'sf.ev005b', img:'ev005b.jpg' }
    ],
    // 6枚目
    [
    { exp:'sf.ev006a', img:'ev006a.jpg' },
    { exp:'sf.ev006b', img:'ev006b.jpg' }
    ]
];

画像

このように画像の窓が6つに増やせます。

CGのフラグを立てる

本編シナリオ中のある地点を通過したら画像を解放する、という動作するのがCGモードですが、 そのある地点は該当画像が表示された瞬間であることが殆どだと思います。

ですから、たとえば以下のように、画像を表示する[image]タグの後に、 [eval]タグでsf.ev001aというシステム変数にtrueが代入すると、その瞬間にCGモードの1枚目が解放されるわけです。

// 画像を背景に表示後、システム変数 sf.ev001a に true が代入される。
[image storage="ev001a.jpg" layer="base" page="fore"]
[eval exp="sf.ev001a = true"]

ですが、以下のように[show_ev]タグを使って背景にCGを表示すると自動的に画像名と同名のシステム変数にtrueを代入します。 本編シナリオ中に表示する画像を全て[show_ev]タグで表示していただけるとCGモードのexpとimgの編集が楽になるはずです。

// 画像の表示と同時に、システム変数 sf.ev001a に true が代入される。
[show_ev file="ev001a.jpg"]
[action]

そうして、一枚目のsf.ev001aのフラグが立つとこのように表示されます。

画像

画像が表示された窓をクリックすると、画像が全画面で表示されます。