解決済【質問】マップ上でアニメーションを表示しながら、決定ボタンでアイテム入手できる方法について

アバター
TEN
記事: 197
登録日時: 2018年9月04日(火) 14:48
お住まい: TEN_GAME
連絡を取る:

解決済【質問】マップ上でアニメーションを表示しながら、決定ボタンでアイテム入手できる方法について

投稿記事by TEN » 2018年10月03日(水) 17:29

こんにちは。お世話になっております。
マップ上にてアニメーションを表示したいのですが、アニメーションを並列処理で実行するとそのイベントに対して決定ボタンも何も押せなくなってしまいます。
少し説明が難しいので下記にしたいことを書きます。

――――――――――
■トリガー並列処理
 アニメーションの表示
条件分岐:決定ボタンを押したとき
 アイテム1入手
 お金入手
分岐終了
――――――――――

こういうふうにしたいのですが、可能でしょうか?
アニメーションは宝箱のようなアニメーションです。
並列処理でアニメーションを常に表示しておきながら、そのイベントに対して決定ボタンを押すとアイテム等を入手できるというイベントを作りたいのです。

しかし条件分岐に「決定ボタンを押したとき」を条件にすると、並列処理にしているがためにイベントに対して決定ボタンを押さなくても、どこの位置で決定ボタンを押しても実行されてしまいます……

何かいい方法はないでしょうか? ご助力願いたいです。よろしくお願いいたします。
最後に編集したユーザー TEN on 2018年10月04日(木) 14:25 [ 編集 1 回目 ]

===============================
公開ゲーム/小説ブログ
『 TEN_GAME / https://ten-game.hatenablog.com/
制作初心者が作ったゲームですので暖かい目で見てください( ̄▽ ̄;)
                        ◇◆――――
                          TEN
―――――――――――――――――――――――――――――――――――――――◆◇
アバター
WTR
記事: 558
登録日時: 2015年12月22日(火) 19:14

Re: 【質問】マップ上でアニメーションを表示しながら、決定ボタンでアイテム入手できる方法について

投稿記事by WTR » 2018年10月03日(水) 18:34

ここでいうアニメーションがどういうものなのかまだはっきりわからないんですが
並列処理は条件が満たされている限り毎フレーム繰り返される処理です。

60フレームかけてアニメーションするような一連のスプライトがあるとしても
アニメーションが最後まで実行される前に、もう一度最初からアニメーションが実行されることになるのでは?
並列処理だとそもそもアニメーションにならない気がします。

>並列処理にしているがためにイベントに対して決定ボタンを押さなくても、どこの位置で決定ボタンを押しても実行されてしまいます……

これもちょっとわからないです。
並列処理であってもなくても、条件分岐は条件分岐です。
決定ボタンが押されていなければ処理は実行されないはずです。

もしかして、、と思うのは
実はイベントコマンドの条件分岐では『決定ボタンを押した瞬間』を条件にすることができません。
『決定ボタンが押されている間ずっと』になってしまいます。

微妙な日本語の違いで何が何だかと思うかもしれませんが
一旦押されたボタンが離される前、という状況にも反応してしまう、ということです。

新たにボタンが押された、まさにその瞬間を条件にするためにはスクリプトが必要で
条件分岐のスクリプトに Input.isTriggered('ok')
と書けばできます。
これで動作が変わるでしょうか?
Twitter、はじめました。
https://twitter.com/wtr_in_reverie/
アバター
WTR
記事: 558
登録日時: 2015年12月22日(火) 19:14

Re: 【質問】マップ上でアニメーションを表示しながら、決定ボタンでアイテム入手できる方法について

投稿記事by WTR » 2018年10月03日(水) 18:52

なんか勘違いした気がします。。

タイミングじゃなくて、位置が問題なんですね。
マップ上のどこで決定ボタンを押しても条件分岐してしまう、っていう。
無理やりですけど、プレイヤーの位置と向きも条件にしてしまえば出来なくはないような。

あとは
アニメーションを表示する並列処理イベントを別にしてしまうとか?
普通の宝箱イベントのグラフィックをなしで設置しておいて
別の並列処理イベントで透明宝箱の上にアニメーションを表示する、みたいな。
最後に編集したユーザー WTR on 2018年10月03日(水) 18:58 [ 編集 1 回目 ]
Twitter、はじめました。
https://twitter.com/wtr_in_reverie/
tubo
記事: 57
登録日時: 2017年10月11日(水) 16:29
お住まい: 兵庫県
連絡を取る:

Re: 【質問】マップ上でアニメーションを表示しながら、決定ボタンでアイテム入手できる方法について

投稿記事by tubo » 2018年10月03日(水) 18:53

全アイテムイベントのアニメーションを管理する並列処理イベントを作るのはどうですか?
アバター
TEN
記事: 197
登録日時: 2018年9月04日(火) 14:48
お住まい: TEN_GAME
連絡を取る:

Re: 【質問】マップ上でアニメーションを表示しながら、決定ボタンでアイテム入手できる方法について

投稿記事by TEN » 2018年10月03日(水) 20:10

お返事ありがとうございます。
説明力がなく、上手く伝えられなくて申し訳ありません。

添付画像のアニメーションを使用したいのですが、マップに点々とある宝箱のアニメーションなのですが、一つのマップに5つ宝箱を置くとして、

〇 〇 〇
 〇
   〇

上記は宝箱の位置です。こういうふうに宝箱を数個置くとしたら、アニメーションを置く並列処理のイベントを別につくり、イベント一つで管理するというのは難しいですよね?
そして、アニメーションを表示しつつ、プライヤーが宝箱を調べるとアイテムを入手できるというふうにしたいのです。
一度調べたらアニメーションが消えるもしくは停止するような感じにしたいのです。

トリガーを並列処理+決定ボタンなんてことはできないので、困っています。
決定ボタンにすればイベント内容のアニメーションが表示されないし、並列処理にすれば、イベント内容をどう組めばいいのかわからないのです……
宝箱(アニメーションを表示しているイベント)をプレイヤーが調べたときに、アイテムを入手できるようにするには、どういったイベントの組み方をすればいいのでしょうか?
もしくは、そういったプラグインなどはあるのでしょうか?
===============================
公開ゲーム/小説ブログ
『 TEN_GAME / https://ten-game.hatenablog.com/
制作初心者が作ったゲームですので暖かい目で見てください( ̄▽ ̄;)
                        ◇◆――――
                          TEN
―――――――――――――――――――――――――――――――――――――――◆◇
アバター
TEN
記事: 197
登録日時: 2018年9月04日(火) 14:48
お住まい: TEN_GAME
連絡を取る:

Re: 【質問】マップ上でアニメーションを表示しながら、決定ボタンでアイテム入手できる方法について

投稿記事by TEN » 2018年10月03日(水) 20:24

画像を添付していませんでした……
こちらが使用したいアニメーションです。
添付ファイル
pipo-nazoobj01a.png
===============================
公開ゲーム/小説ブログ
『 TEN_GAME / https://ten-game.hatenablog.com/
制作初心者が作ったゲームですので暖かい目で見てください( ̄▽ ̄;)
                        ◇◆――――
                          TEN
―――――――――――――――――――――――――――――――――――――――◆◇
アバター
TEN
記事: 197
登録日時: 2018年9月04日(火) 14:48
お住まい: TEN_GAME
連絡を取る:

Re: 【質問】マップ上でアニメーションを表示しながら、決定ボタンでアイテム入手できる方法について

投稿記事by TEN » 2018年10月03日(水) 20:43

何度も申し訳ありません。
プレイヤーの位置を取得してテストしてみたのですが、決定ボタンを押しているときが、やはりずっと押しているときらしく、スクリプトに変えてみたのですが、上手く機能しません。

取り敢えず条件を決定ボタンを押しているとき+位置でやってみたスクショを載せます。
添付の一枚目がイベント内容
添付の二枚目がアニメーションを表示したテスト画像
添付の三枚目が決定ボタンを押したとき(押しているとき)の動作
になります。

これだと決定ボタンを押したときに、アニメーションが一時画面から消えてしまうようです。(おそらくアニメーションを並列で実行しているためだと思いますが)
あとは、決定ボタンを「押しているとき」ではなく、「押したとき」にしたいのですが、教えていただいたスクリプトが上手く動作しないようです。
実際に条件分岐の「決定ボタンを押したとき」のところをスクリプトにしてテストしてみたのですが、なにも起こりませんでした。
何か間違っているのでしょうか?

あと、並列処理でアニメーションを表示しても、途切れないようにアニメーションをループさせるみたいなことができればいいのですが、やり方&プラグインなどをご存知でしたら教えていただきたいです。

長くなり、申し訳ありませんがよろしくお願いいたします。
添付ファイル
テスト.PNG
テスト2.PNG
テスト2.PNG (139.86 KiB) 閲覧数: 4303 回
テスト3.PNG
テスト3.PNG (188.14 KiB) 閲覧数: 4303 回
===============================
公開ゲーム/小説ブログ
『 TEN_GAME / https://ten-game.hatenablog.com/
制作初心者が作ったゲームですので暖かい目で見てください( ̄▽ ̄;)
                        ◇◆――――
                          TEN
―――――――――――――――――――――――――――――――――――――――◆◇
tubo
記事: 57
登録日時: 2017年10月11日(水) 16:29
お住まい: 兵庫県
連絡を取る:

Re: 【質問】マップ上でアニメーションを表示しながら、決定ボタンでアイテム入手できる方法について

投稿記事by tubo » 2018年10月03日(水) 22:00

宝箱のセルフスイッチを調べるにはスクリプトで条件分岐するしかなさそうですね

コード: 全て選択

$gameSelfSwitches.value([$gameMap.mapId(),16,'A']) !== true

これを条件にすれば宝箱が空いているか判定できます
16の所は宝箱のイベントIDです
アバター
WTR
記事: 558
登録日時: 2015年12月22日(火) 19:14

Re: 【質問】マップ上でアニメーションを表示しながら、決定ボタンでアイテム入手できる方法について

投稿記事by WTR » 2018年10月03日(水) 22:22

試しもせずに適当なことを書いてしまいました。すみません。

Input.isTriggered('ok') で条件分岐できないのは、おそらくアニメーションのウェイトのせいです。
ウェイト中はボタン入力を受け付けません。

やっぱりアニメーションの表示をする並列イベントと
アイテム入手するイベントを分けないとダメな気がしてきたんですが
アニメーションの表示ってマップの座標指定できないんですね。。
Twitter、はじめました。
https://twitter.com/wtr_in_reverie/
アバター
TEN
記事: 197
登録日時: 2018年9月04日(火) 14:48
お住まい: TEN_GAME
連絡を取る:

Re: 【質問】マップ上でアニメーションを表示しながら、決定ボタンでアイテム入手できる方法について

投稿記事by TEN » 2018年10月03日(水) 22:30

そうなんですよね……
アニメーションの表示をするときに、イベントをマップ位置指定できないので、どうすればいいんでしょうか?
どなたか解決法がわかる方いましたらご助力お願いいたします。
===============================
公開ゲーム/小説ブログ
『 TEN_GAME / https://ten-game.hatenablog.com/
制作初心者が作ったゲームですので暖かい目で見てください( ̄▽ ̄;)
                        ◇◆――――
                          TEN
―――――――――――――――――――――――――――――――――――――――◆◇

“MV:質問” へ戻る