4方向移動(自作)で様々な方向入力に対応させる の変更点

このページは
-''[[プレイヤーの4方向移動を1から作ってみる]]''の続きのページです。

既にある前のページの同じような操作はこのページではかなり省略しています。

#br
#br

前回までのサンプル
-''[[4方向移動を1から作ってみるA.mfa>http://ux.getuploader.com/mmf/download/826/4%E6%96%B9%E5%90%91%E7%A7%BB%E5%8B%95%E3%82%92%EF%BC%91%E3%81%8B%E3%82%89%E4%BD%9C%E3%81%A3%E3%81%A6%E3%81%BF%E3%82%8BA.mfa]]''
#br



#br
#br
#br
#br


    ↓↓↓  現在編集中につき未完成  ↓↓↓   2014/8/16
#br
#br
#br
#br

1、さまざまな方向入力に対応させる。(続き)
  上キーと左キーに絞って入力と動作を見ていくと、
  上を押したまま(画像①)左を押すと左に動きますが、(画像②)
  上を押したまま左を放した時は止まってしまいます。(画像③)
  画像①②③は連続操作

#ref(arpg207.png,left,nowrap)
  今度はこの時に止まらず、上に移動させる動作を作ります。
#br
#br
  なぜ停止してしまうのかは、
  1つのキーを入力すると他のキーのフラグが全てOFFになるイベントを組んだ為です。
  上を押してそのまま左を押した時点で上フラグがOFFになっています。
#br
#br
#br
#br
#br
#br
2、やりたい事と必要な条件を考えていきます。
#ref(arpg207.png,left,nowrap)
  上キーが押されている  + 左キーを放した時 に 上フラグをONにしたい
  画像の②と③の間に新しい条件を実行させ、③の時に上フラグをONにする。
#br
#br
  実際にイベントで組もうとするとどうなるかイメージします。
  条件の数と実行内容を把握します。
   1) 左移動中(最後に押されたキーが左の時)の状態を判断する (条件)
   2) 左キーが放された状態を判断する   (条件)
   3) 上キーが押されている状態を判断する (条件)
   4) その状態が揃った時に上移動を実行する(実行内容)
#br
#br
3、1)の準備をします。
  変数を用意して、どの方向キーが最後に押されていたかを変数に記憶させておきます。
#br
#br
  プレイヤーに新しく変数を作ります。
  名前は[方向ボタンを記憶]とします。
#ref(arpg208.png,left,nowrap)
  ここで、作成した変数[方向ボタンを記憶]の中身がいくつの時、この状態である
  というルール付けを自分で決めていきます。
#br
  今回は変数[方向ボタンを記憶]の中身が
#br
       0 の時 方向キーが何も押されていない
       1 の時 最後に押したキーが上である
       2 の時 最後に押したキーが下である
       3 の時 最後に押したキーが左である
       4 の時 最後に押したキーが右である
#br
  と勝手に決めてしまいます。自分で自由に決める事ができます。
#br
       イベント上では、
       プレイヤーの変数[方向ボタン記憶]が 1 の時  →  何か実行させる
       と番号のみの条件になります。
#br
  あれ?1の時ってなんだったっけ?上?下?左?と混乱する事によくなるので、
  自分流のルールが決まったらメモしておき、再度イベントを見たときに混乱するのを防ぎましょう。
  
#br
#br
#br
4、方向キーが押された時に変数[方向ボタン記憶]の中身が変わる、というイベントを組んでいきます。
  6行目(方向上を押す)とプレイヤーが交差するマスを右クリックして実行内容を作ります。  
#ref(arpg217.png,left,nowrap)
#br
#ref(arpg210.png,left,nowrap)
#br
#br
#br
5、表示されたメニューから  変数 ⇒ 変更  をクリックします。
#ref(arpg211.png,left,nowrap)
#br
#br
#br
6、数式エディタの値を選択にて、変数[方向ボタンを記憶]を選びます。
#ref(arpg212.png,left,nowrap)
#br
#br
#br
7、数式を入力に 1 を入力しOKで決定します。
#ref(arpg214.png,left,nowrap)
#br
#br
  このようになります。
#ref(arpg215.png,left,nowrap)
#br
#br
#br
8、同じ操作で、条件:方向左を押す の行も作ります。
  プレイヤーの変数[方向ボタンを記憶]が3になるように組んでみましょう。
  方向左を押した時の行がこのようになるはずです。
#ref(arpg216.png,left,nowrap)
#br
#br
  上、左キーを押した時に変数[方向ボタンを記憶]に、自分で決めたルールの数字が入るようになりました。
  キーを押した時に1度だけ実行されます。
  1)の準備が整いました。
#br
#br
#br

9、次は、イベントグループを作成します。「移動 右」の下に作成しましょう。
  行番号を右クリックし、 挿入 ⇒ イベントグループ をクリックします。
  イベントグループの名前は「キー入力と動作の補正(2キー同時押し中、片方放し)」とします。
#br
  このようになります。
#ref(arpg223.png,left,nowrap)
#br
#br
#br
10、コメントを作ります。
   今作成したイベントグループの中の新しい条件の行番号を右クリックし、
   挿入 ⇒ コメント をクリックします。
#ref(arpg218.png,left,nowrap)
   コメントに変数の中身に対する動作をメモしておくと便利です。
   背景色や文字の色も変えられるので、自分なりに見やすく工夫できます。 
#br
#br
   このようになります。
#ref(arpg219.png,left,nowrap)
#br
#br
#br
11、コメントの下の新しい条件の行に、イベントグループを作成します。
   行番号を右クリックしてイベントグループを作成しましょう。
   名前は「方向キー放す 組み合わせ 上 左」とします。
#br
   このようになります。
#ref(arpg220.png,left,nowrap)

#br
#br
#br

12、今作成したイベントグループの中に更にイベントグループを作成します。
   名前は「左移動中 上左押し 左放す 上移動させる」とします。
#br
   このようになります。
#ref(arpg222.png,left,nowrap)

#br
#br
#br
13、次は1)~4)までの内容を盛り込んでいきます。
   まずは 1) 左移動中(最後に押されたキーが左の時)の状態を判断する(条件)を作成します。
   29行目の新しい条件をクリックします。
#ref(arpg233.png,left,nowrap)
#br
#br
#br

14、新規条件から プレイヤーをクリックします。
   表示されたメニューから 変数 ⇒ 変数の1つと比較 をクリックします。
#ref(arpg234.png,left,nowrap)
#br
#br
#br
15、数式エディタの値を選択にて、変数[方向ボタンを記憶]を選びます。
#ref(arpg212.png,left,nowrap)
#br
#br
#br
16、比較方法を選択が 等しい になっている事を確認して、
   入力欄に 3 を入力しOKで決定します。
#ref(arpg224.png,left,nowrap)
   これで[方向ボタンを記憶]が3の時 という条件が出来ました。
#br
#br

   このようになります。
#ref(arpg225.png,left,nowrap)
   最後に押されていた方向キーが左キーだった場合 という条件です。
   1) 左移動中(最後に押されたキーが左の時)の状態を判断する (条件) が完成しました。
#br
#br
#br
17、今度は左キーが放された時の条件も追加します。
   2) 左キーが放された状態を判断する   (条件)  です。
   内部フラグで判断させます。
   先ほどの条件を右クリックし、表示されたメニューから挿入をクリックします。
#ref(arpg235.png,left,nowrap)
#br
#br
#br


18、新規条件から、方向制御をクリックし、表示されたメニューから
   変数  ⇒  フラグ  ⇒  フラグが無効  をクリックします。
#ref(arpg236b.png,left,nowrap)
#br
#br
#br


19、数式エディタが表示されるので、方向制御をクリックし、表示されたメニューから
   値  ⇒  値AからM  ⇒  左 を読み出し  をクリックし、OKを押します。
#ref(arpg237b.png,left,nowrap)
#br
#br

   このようになります。
#ref(arpg228.png,left,nowrap)
#br
#br
#br
20、同じ行に更に条件を追加します。
   今度はその時に上キーがまだ押され続けているか とういう条件です。
   3) 上キーが押されている状態を判断する (条件) を作成します。
   先ほどの条件を右クリックし、表示されたメニューから挿入をクリックします。
#ref(arpg239.png,left,nowrap)
#br
#br
#br

21、新規条件から、ジョイスティックをクリックし、表示されたメニューから
   ジョイスティック  ⇒  ボタンや方向キーを押している間繰り返す  をクリックします。
   ジョイスティックアクションは上に設定します。
#ref(arpg240.png,left,nowrap)
#br
#br
   このようになります。
#ref(arpg229.png,left,nowrap)
#br
#br
#br

22、実行内容を作成します。
   4) その状態が揃った時に上移動を実行する(実行内容) を作成していきます。
   29行目の条件とプレイヤーが交差するマスで右クリックし、表示されたメニューから
   変数  ⇒  変更  をクリックします。
#ref(arpg241.png,left,nowrap)
#br
#br
#br
23、値を選択から、[方向ボタンを記憶]を選び、数式入力の欄に1を入力し、OKを押します。
#ref(arpg242.png,left,nowrap)
#br
#br
#br
24、次に今作成した実行内容の右隣のマス(方向制御)を右クリックし、表示されたメニューから
   フラグ  ⇒  有効に設定  をクリックします。
#ref(arpg243c.png,left,nowrap)
#br
#br
#br
25、数式エディタが表示されるので、方向制御をクリックし、表示されたメニューから
   値  ⇒  値AからM  ⇒  上 を読み出し  をクリックします。 
#ref(arpg244.png,left,nowrap)
#br
#br
#br

26、アプリケーションを実行して動作を確認します。
#ref(arpg70.png,left,nowrap)
   上を押しながら左をポン、ポンと押すと止まらずに上移動してくれるはずです。
#br
#br
#br
   後は同様に他の組み合わせも作るのですが、あと11個同じようなイベントが必要です。
   黄色ので塗られた所が今回作成した部分です。
#ref(arpg247.png,left,nowrap)
   イベントフォルダも後16個必要になります。
   慣れていないととても大変だと思いますので、サンプルを用意しました。 準備中です
   慣れていないととても大変だと思いますので、サンプルを用意しました。
-''[[4方向移動を1から作ってみるB.mfa>http://ux.getuploader.com/mmf/download/827/4%E6%96%B9%E5%90%91%E7%A7%BB%E5%8B%95%E3%82%92%EF%BC%91%E3%81%8B%E3%82%89%E4%BD%9C%E3%81%A3%E3%81%A6%E3%81%BF%E3%82%8BB.mfa]]''


#br
   今回作成したイベント(上の画像の黄色の部分)の内容です。
#ref(arpg248d.png,left,nowrap)

#br
#br
#ref(arpg249b.png,left,nowrap)

#br
#br
#br
#br
#br
#br
#br
続きはまた今度!


#br
#br
#br
#br
#br
#br
#br
#br
#br
#br
#br