戦闘アニメーションをスクリプトから制御
ミニゲーム等で「よーい!どん!」みたいな開始の合図を表示し、 その後ゲームを開始するような場合に使えます!
「開始の合図」については、戦闘アニメーションを設定しておき、 スクリプトから呼び出し、終了まで待ちます。
前提
- ミニゲーム専用マップを作成しておく
- ミニゲーム専用マップの座標(x=10, y=10)に戦闘アニメーション表示対象のイベントを配置しておく
- 戦闘アニメーションの100番目に、「開始の合図」用のアニメーションを設定しておく
スクリプト
class Scene_MiniGame < Scane_Map def start super # 現在のマップでx=10, y=10に存在するイベントIDを取得 event_id = $game_map.event_id_xy(10, 10) # イベントIDからイベントを取得 char = $game_map.events[event_id] # イベントに対して、アニメーションを設定 char.animation_id = 100 # イベントのアニメーションが終了するまで待つ f = Fiber.new do Fiber.yield while char.animation_id > 0 end end end
イベントコマンドからしか、実行できないとか、アニメーション終了まで待ってくれないと思っていたのですが、以外と短いコードで実現することができました。
スクリプトから制御できると、ミニゲーム以外にも色々と使えそうですね!
それでは、皆様も楽しいツクールライフを!