コピペで脱出ゲームを作る~エンディングを分岐させる~

どうもこんにちは
フラッシュからの脱出公開から一週間ほどたちました

いかがでしたでしょうか?
やってないという方は是非!今すぐ!さあ!!フラッシュからの脱出

というわけで今回はフラッシュからの脱出でやりましたエンディングの分岐についてやっていきたいと思います

スポンサードリンク
    
まずは大体必要なとこだけ抜き出したのがこちら

最初に12~14行目のsceneをまたがって使う変数について
今までhonpenの中で使っていたものはhonpenでしか使えませんでしたが、こちらはhonpenでもエンディングのSceneでも使えるというわけです

といっても見ての通り書き方に変わりがあるわけではありません
書く場所が違うだけです

簡単に言うとこのvar なんちゃらかんちゃら っていうのを書いた{}内でしか使えないということなんです
今まではvar Honpen_tukuruyo = function() {← から  return honpen; };←の間で書いていたのでそこでしか使えなかったんですね
それがgame.onload = function(){← から };← game.start(); の間に書いたので他のSceneでも使えるとそういうわけです

この二つの変数は分岐の条件と、条件が変化するときに消費するアイテムを持っているかどうかの変数です
つまりアイテムを消費する前のエンディング(ED)から分岐点に戻るときはいいのですが、アイテムを消費してからのエンディング(ED1)から分岐に戻るときはアイテムを消費していない状態に戻さなければいけないのでhonpenとED1で使えなくてはいけないんですね


では次行きましょう 22行目、こちらは出口のドアの後ろにあるSpriteです、こちらをクリックしたらエンディングにScene移動するやつです

先ほどの変数kusisonaeの値によって移動するSceneを変えているのがわかると思います
以前sceneを作るよの回でやりましたがpushSceneは今のsceneの上に新しいsceneを乗せるものです
つまり移動してもhonpenは残っているわけです

それではEDに行きます
まず流れを見てみましょう、90行目の変数edpageの値によってLabelのtextを変えている、それだけです
ここまで見てくれている方なら特に問題はないでしょう
今回はオープニングがありませんがそちらでも流用できるでしょう

今見るとswitch文何でこんな書き方してるんだろうと思わなくもないですがそれは置いといて、saisyoheとbunkiを見てください
saisyoheはsceneをまたがって使える変数を初期値に戻してgame.replaceScene(Honpen_tukuruyo());
bunkiはgame.popScene(); しています

replaceSceneは今のsceneを消して新しいsceneを乗せる
popSceneは今のsceneを消す
でしたね

つまりhonpenを改めて0から作り直しているのがsaisyohe、EDを消して下にあったhonpenになるのがbunkiです

作り直すのはhonpenだけですからsceneをまたがって使える変数は自分で戻さなければいけないのに注意です


最後にED1です
アニメーションについてはいいとしてbunkiが違うのがわかるでしょうか?
(一緒に使える状態でなければ同じ名前が使えます、紛らわしいからしないほうがいいかもしれませんが)
アイテムを使う前が分岐点ですから、消費したアイテムを使っていないように戻しています

と、こんな感じでいいでしょうか
お疲れ様でした
スポンサードリンク
関連記事
スポンサーサイト

Comment

Comment Form
公開設定

Trackback


→ この記事にトラックバックする(FC2ブログユーザー)
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。