ぶつかったときのリアクション

ホーム フォーラム CF2.5使用法全般 ぶつかったときのリアクション

  • このトピックには6件の返信、2人の参加者があり、最後にOtoにより7年、 6ヶ月前に更新されました。
7件の投稿を表示中 - 1 - 7件目 (全7件中)
  • 投稿者
    投稿
  • #12886
    Oto
    参加者

    お世話になっています。
    ボールや弾などに衝突された側のリアクションの設定が分からず悩んでいます。

    オリジナル画像に、
    通常時用の 画像A と、ぶつけられたとき用の 画像B があるのですが、

    ・ボールに衝突された A が、 0.5秒間 だけ B に変わり、また A に戻る。
     B については当たり判定は無い。

    というのを実現しようと、フォーラムやネットを調べましたが、
    決定的な情報がなかったため、質問させていただきました。

    エフェクトイメージパラメータというところや、
    タイマーなどいろいろ操作しましたが、うまくいきませんでした。

    他にも、何種類もオリジナル画像を用意しており、

    ・時間的にランダムで C や D が出現して、
     それぞれの役割を果たして A に戻る。

    などもやりたいのですが、
    衝突で画像を変更する方法すら分からないのに、次には行けないと思いますので、
    アドバイスをいただけると幸いです。

    #12887
    Oto
    参加者

    もし状況が伝わらないといけないと思い、MFAファイルを添付することにしました。

    ボール が当たると、 白のブロック が 茶色のブロック に変わります。
    この 茶色 の状態を 0.5秒 で自動的に解除し、 元の 白 に戻したいということです。

    ブロック を 白 と 茶 の2種類配置しており、 X座標 を変化させているだけですが、
    果たしてこのやり方で正しいのでしょうか。

    • この返信は7年、 7ヶ月前にOtoが編集しました。
    Attachments:
    You must be logged in to view attached files.
    #12890
    Oto
    参加者

    1つ前に投稿のファイルでは、
    衝突されるモノが動いているときに対応できないと分かったので、
    別の方法で作ったものを添付します。

    アニメを使ったものです。
    少し進展したのかもしれませんが、これが正しい方法かは分かりません。
    というのも、 0.5 秒 だと比較しにくいので、
    ボール が ブロック に当たると、約 1秒 の間、 「 1秒 」 と表示されるようにしました。
    しかし、2回目以降当たった時、 「 1秒 」 の表示は、一瞬点滅するだけです。
    何度でも同じ反応をさせたいのですが。

    しかも、このやり方だと、正確な秒数を決めることはできない?ような気もします。
    できるのかもしれませんが、ちょっと分かりません。

    なんにしても日本語の情報が少ないソフトです。
    アドバイスをいただけると助かります。

    Attachments:
    You must be logged in to view attached files.
    #12892
    Oto
    参加者

    カウントダウンを使って、

    ・当たった時に 1秒 を 1秒間 表示。

    ・ 1秒 の表示の当たり判定を無しにする方法が分からなかったため、
     代わりに、当たる度に 1秒 を 1秒間 表示し、
     この 1秒間 の間に当たっても、またそこから 1秒 を 1秒間 表示する、
     多段ヒット可能、とでも言うべき設定。

    を実現できました。
    質問する側なのにおかしな感じですが、MFAファイルを添付していますので、
    万が一誰かの役に立てば幸いです。

    やりたいことの9割はできましたが、
    1秒間 の間の当たり判定の消し方は分からず、更に、最初の質問にも書いた、

    ・何秒置きなどの時間的な部分でランダムに、
     複数の別のオブジェクトに(これもどのオブジェクトが出るかはランダム)数秒間ほど変更し、
     それらのオブジェクトそれぞれに、弾の発射やその他の仕事をしてもらう。

    ということに挑戦していますが、こちらはあまり自信がないため、
    思いつく程度でもアドバイスをいただけると幸いです。

    Attachments:
    You must be logged in to view attached files.
    #12895
    Oto
    参加者

    質問の的を絞った方がアドバイスを得られるかもしれないと思い、
    単純なファイルを用意し、添付しました。
    実現しようとしていることは、以下の通りです。

    実現していること
    ・1秒置き に 3分の1 の確率で 「 行動A 」 に移る。
    ・1秒置き に 6分の1 の確率で 「 行動B 」 に移る。

    実現できていないこと
    ・ 行動A は 3秒間 だけ表示し、その後 デフォルト に戻る。
    ・ 行動B は 6秒間 だけ表示し、その後 デフォルト に戻る。

    カウントダウンを使っていますが、うまくいきません。

    イメージとしては、 フレーム2 や フレーム3 に切り替わっている間だけ、
    変数によるフレームの切り替えを受け付けない設定にできれば、実現できそうなのですが。

    ( イベントエディタ で アニメーションフレーム のナンバーを選択するときは、
     なぜか 0 から数えるため、1つ前倒しになり、
     フレーム2 であれば 1 と入力しなくてはならない仕様も少し気になります。)

    かなり苦戦しており、ヒント程度でもいただけると大変助かります。

    Attachments:
    You must be logged in to view attached files.
    #12906
    ASD
    キーマスター

    >>Otoさん
    最後に提示されたサンプルを改良してみました。
    『特定のイベント実行中は別のイベントを止める』といった処理は、フラグを使って制御することが基本となります。
    また、時間の制御は、タイマーを使わずに変数で行った方が色々と融通が利くだけでなく、動作も安定しますのでそうされることををお勧めいたします。

    なお、イベントでアニメーションフレームを指定する際に0から開始されるのは、ツールの仕様ですので、そういうものだとご理解下さい。同様に、乱数生成も0が含まれますが、こちらは範囲指定乱数で最小の値を1にすることで対応可能です。

    – サンプルプログラム
    https://blog.clickteam.jp/wp-content/uploads/2016/10/cf25_blog_2016-10-03_alterable_value_timer.zip

    #12912
    Oto
    参加者

    ファイルの添付、ありがとうございます。
    これを元に、フラグについて、これから勉強します。

    それと少しだけ追加質問させてください。
    アニメーション を 停止 → 発射 → しゃがむ などに切り替えるごとに、
    弾 を 1発 だけ発射する設定をしたいのですが、できずにいます。
    一応、それに挑戦した添付ファイルもありますが、
    弾が無限に、大量に出てしまいます。

    ・弾の 速さ ・ 数 ・ 発射間隔 などは、どのように決めるのでしょうか?

    Attachments:
    You must be logged in to view attached files.
7件の投稿を表示中 - 1 - 7件目 (全7件中)
  • このトピックに返信するにはログインが必要です。