タイマーの操作 / ツクールVXAceスクリプト(RGSS3)wiki
ツクールVXAceでタイマーの操作をスクリプトで行うなら以下の通りです。
$game_timer.start(設定フレーム数) #タイマースタート
$game_timer.stop #タイマーストップ
サンプルコード(1分で設定し、タイマーをスタート)
$game_timer.start(3600)
コード解説
1フレームは1/60秒、つまり、一秒当たり60フレームがツクールのデフォルトの設定です。
このタイマーは本来戦闘中に使用され、タイマーが0になったら戦闘が中断される処理ですが、マップ上で使いたいときがままあります。
例えば0秒になったらゲームオーバーにしたい、10秒以下になったら危機的な音楽を流したいということがあるかと思います。
タイマーの秒数を取得して条件分岐により判断するサンプルコードを以下で紹介します。
コモンイベントやマップ上のイベントにトリガーを並列処理にして条件スイッチを適当なスイッチを指定してください。(サンプルでは1番のスイッチを条件スイッチにしています。)
サンプルコード(タイマーが0秒になったら終了のメッセージを表示する)
$game_timer.update #取得するタイマーの更新
wait(60) #1秒待つ
if $game_timer.sec <= 0
#「$game_timer.sec」で現在の秒数を取得。今回は0秒以下かどうかで条件分岐
$game_timer.stop #タイマーをストップ
$game_message.add("終了") #終了のメッセージを出す。
$game_switches[1] = false #コモンイベント等を発動するスイッチをOFFにする。
end
こちらの方がタイマーを操作するよりも少しややこしいかもしれません。
指定した時間になったときの処理はif~endの間に書いてください。
ツクールVXAceスクリプトリファレンスwikiトップページへ戻る
オリジナルシステムなどの製作依頼・相談があればプラグイン・マップ等個別製作依頼のページまでお願いします。