忍者ブログ

へぷたなすくろーる

RPGツクールのブログです。イベント講座とRGSS3スクリプト配布をやってます♪

Home > > [PR] Home > イベントのすゝめ > イベントのすゝめ(6b) キー入力コモン、リベンジ

[PR]

×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

イベントのすゝめ(6b) キー入力コモン、リベンジ

このコーナーでは、主に初心者さんに向けたイベントのテクニックを紹介していきます。
RPGツクールVXAceで説明していきますが、多くはVXや他のツクールでも可能です。

第六回の番外編です。
何とかしてInput.trigger?を使えないかなぁと頭をひねってみました。
つづきはこちら、からどうぞ。 そもそも、なぜInput.trigger?にこだわるかというと
「ボタンが押されているか」(Input.press?)の条件分岐が万能じゃないからなんですね。
第六回で触れたように、押しっぱなしで反応してしまう点が足かせになります。

アクションタイプのゲームを作ろうとすると、やはり決定キーやキャンセルキーも使いたいものですが
メッセージを送ったときの決定キーやメニューを閉じたときのキャンセルキーでどうしても暴発してしまいます。
というのも、キーを押してウィンドウが閉じてからイベントがキー入力を判定するまでの数フレームで
押していたキーを離さないと条件を満たしてしまうからです。
他のキーにしても、押しっぱなしが連続入力になってしまう問題は残ります。
Input.trigger?だとこれらが一発で解決するので便利なんですよ。

それならもうスクリプトで作れよという声が聞こえてきそうですが
思いついて作ってみたのがこちら
ループ
  条件分岐:スクリプト「Input.trigger?(:C)」
    スイッチAをonにする
  それ以外の場合
    スイッチAをoffにする
  ウェイト:1F
以上繰り返し

並列処理で作りますが、並列処理による繰り返しではなく
ループによる繰り返しをさせることでやや強引に毎Fチェックさせます。
ウェイトを入れておかないとフリーズするので注意。

一応軽くチェックしてみたところ
・問題となっていた判定もれは解消
・特に重くなったようには見えない
・ページ切り替えや場所移動でちゃんと処理が中断される
という感じなのでこれで大丈夫なんじゃないかと。

拍手[9回]

PR
-->
Responses0 Responses
  • お名前
  • タイトル
  • メールアドレス
  • URL
  • パスワード

ブログ内検索

アーカイブ

最新コメント

[10/13 深海樹]
[08/02 ダイ二ホケンシツ]
[07/29 ダイ二ホケンシツ]
[07/29 ダイ二ホケンシツ]
[07/29 ダイ二ホケンシツ]

プロフィール

バナー

HN:奈々(なな)
RPGツクールVXAceを中心に製作を行っています。 スクリプト、イラスト、ドット絵など広くちょこちょこ手を出していますので、 できる範囲で他のツクーラーさんのお手伝いができたらなと思っています。