>>Spireaさん
こんにちは。
CF2.5における仕様として、イベントは上から順番に「条件を判断し、満たしていればアクションを実行する」という処理をイベント行ごとに行う、というものがあります。
この処理は1フレーム(1/60秒)毎に全てのイベントに対して一回ずつ行われます。
項目のカーソル移動に対して以下のようなイベントを組んだとします。
条件1:下矢印キーを押す
条件2:選択中の項目の番号が 1 である
アクション1:項目の番号を 2 へ
条件1:下矢印キーを押す
条件2:選択中の項目の番号が 2 である
アクション1:項目の番号を 3 へ
条件1:下矢印キーを押す
条件2:選択中の項目の番号が 3 である
アクション1:項目の番号を 4 へ
このとき、最初の項目の番号は1ですから、最初のイベントの行は条件を満たしているので実行されますね。
すると、そのアクションによって2つ目のイベントの条件が満たされてしまいます。
「下矢印キーを押した」という状態はこの1フレームの間は適用されているからです。
そして2つ目のイベントで条件が満たされて、3つ目のイベントが実行…というように、一瞬にして全て実行されてしまうのです。
つまり、連続して実行させないためには「この1フレームの間は他のイベント行の条件を満たさないようにする」ことが必要になります。
サンプルプロジェクトにも説明が記載されています。ぜひご覧ください。
シンプルな仕様なので、試していただければすぐ理解できますよ!
自分は説明下手なので毎回長文になってしまい申し訳ないです(汗)
Attachments:
You must be
logged in to view attached files.