回想モードの使い方:Almightに触れる13

そろそろ回想モードを触ってみようと思います。

使用する画像や音はフリー素材を使用しています。

びたちー素材感 URL http://www.vita-chi.net/sozai1.htm

ゆんフリー者新素材集 URL http://www.yunphoto.net

回想モードを使用するには、CGモードと同じようにまずalmight.config.js の一部を書き換えます。

/**
* **シーン回想モードを利用するか**
*
* シーン回想モードを使うかどうか指定します。
*
* @property sceneWindow
* @type Boolean
*/
sceneWindow: false,

この部分の sceneWindow: false,sceneWindow: true, に書き換えることで回想モードが利用可能になります。

ゲーム画面で確認してみるとこうなります。

赤枠で囲ったシーン回想のボタンを押すと

という具合に、空のシーン回想のボタンが三つ用意されています。

この空のボタンの中身を書き換えて回想モードを使えるようにしようと思います。

回想モードを書き換えるには、scene.php というファイルをエディターで開きます。

そして

// シーンデータを作成
var scenedata = {
  slots: [
  {
    open: 'sf.flag1 == 1',
    title: '回想その1',
    target: '*kaisou1',
    storage: 'scenario.ks'
  },
  {
    open: 'sf.flag2 == 1',
    title: '回想その2',
    target: '*kaisou2',
    storage: 'scenario.ks'
  },
  {
    open: 'sf.flag3 == 1',
    title: '回想その3',
    target: '*kaisou3',
    storage: 'scenario.ks'
  }
]};

という部分があるので、ここを書き換えます。

open: 'sf.flag1 == 1' は変数のフラグに 1 が入っていたら、ボタンを選択可能なようにするという意味です。

title: '回想その1', はオープンになったボタンに表示されるテキストを指定できます。CGモードでは画像を使用できましたが、回想モードでは画像は使えないようですね。

target: '*kaisou1', はジャンプする先のラベル名を指定します。

storage: 'scenario.ks' はジャンプするファイル名を指定します。

今回は、試しに一つだけ回想モードを使えるようにしてみようと思います。

変数はそのまま sf.flag1 というものを流用します。

回想シーンのフラグを立たせたい場所に @eval exp="sf.flag1=1" と書きます。

以前に、選択肢を複数作ったので、選択肢2を選択した時にフラグが立つようにしてみます。

first.ks の中に @eval exp="sf.flag1=1" を書きます。

@choices target1="*select1" text1="選択肢1" target2="*select2" text2="選択肢2" target3="*select3" text3="選択肢3" target4="*select4" text4="選択肢4" target5="*select5" text5="選択肢5" target6="*select6" text6="選択肢6"

*select1
選択肢1です。[c]

〜中略〜

*select2
選択肢2です。[c]
@eval exp="sf.flag1=1"
@s

と書きました。

次に、回想シーンが始まる部分にラベルを作ります。

ラベル名も既に用意されている *kaisou1 というものを流用します。

今回は試しなので、回想シーンが始まるところというよりは、適当なところに書いてみます。

first.ks の最後あたりに

*kaisou1
回想シーン1にジャンプしました。
@s

とかきました。

これで回想モードを使うための下準備ができました。

今度は scene.php の中身を触っていきます。

といっても、変数やラベル名は流用してあるので書き換える部分は少ないです。

storage: 'scenario.ks' はジャンプするファイル名であると書きましたが、今回ジャンプしたいラベルが書いてあるファイル名が first.ks なので

storage: 'scenario.ks'storage: 'first.ks' と書き換えます。

空のボタンは三つありましたが今回使うのは一つだけなので

{
  open: 'sf.flag2 == 1',
  title: '回想その2',
  target: '*kaisou2',
  storage: 'scenario.ks'
},
{
  open: 'sf.flag3 == 1',
  title: '回想その3',
  target: '*kaisou3',
  storage: 'scenario.ks'
}

は消しておきます。

最終的に scene.php は

// シーンデータを作成
var scenedata = {
  slots: [
    {
      open: 'sf.flag1 == 1',
      title: '回想その1',
      target: '*kaisou1',
      storage: 'first.ks'
    }
  ]
}

こうなりました。

ゲームを起動してみると

となっています。

フラグが立つ選択肢2を選択する前なのでまだボタンがオープンになっていません。

選択肢2を選択すると

ボタンがオープンな状態になりました。

試しにコンソール画面でシステム変数である sf を調べてみると

flag1 に 数字の 1 が入っていることがわかります。

では、実際にボタンを押して回想モードを使ってみます。

scene.php で指定したファイル名とラベル名にジャンプしました。

因みに、回想シーン中は disablestorestore=true restore=true となっているみたいで、セーブ・ロード機能が使えないようになっているみたいです。

なので、回想シーンが終わったら @disablestore store=true restore=false と書いてある部分(タイトル画面等)にジャンプして戻るようにしてあげた方がよさそうです。

人気記事すべて表示

AlmightJSすべて表示