RPGツクールXP/VX用のRGSS素材です。
一部英語版対応です。
(A few materials can be used for English RPG MAKER XP/VX.)
競合率はルファーの独断と偏見なのでたまにハズレます。
#==============================================================================
# ■ オープニングムービー軽
#------------------------------------------------------------------------------
# オープニングにマップイベントを流せるようにします。
# (C) ルファー
# WebSite https://tkoolerlufar.pages.dev/
#==============================================================================
=begin
=対応RGSS
1 2
=必要なライブラリ
ルファー作スクリプト素材共通ライブラリ
=他の素材との競合の可能性
!.. 独自のゲームオブジェクトを使うRPGツクールXP作品への導入では要改造
(この素材は改造自由です)
=RPGツクールXPでの導入方法
Scene_Title より下に新セクションを作成して、
このプログラムをそこにコピーする
=使い方
「=」の後の数字を適当な値に書き換えるだけ。
=ヒント
C ボタンでスキップ、というのはこの素材ではできません。
が、マップイベントの並列処理でタイトルに戻るイベントを指定すれば
不可能でもないです。
=更新履歴
2010/04/13 RPGツクールVXで正しくフェードしない仕様を修正
2010/03/01 RPGツクールVXに対応
2009/06/24 公開
=再定義しているメソッド
Scene_Title#main (エイリアス使用)
Scene_Title#update (エイリアス使用)
=新規定義しているメソッド
Scene_Title#opening
=end
#----------------------------------------------------------------------------
# ◇ Lufar モジュール
#----------------------------------------------------------------------------
module Lufar
#--------------------------------------------------------------------------
# ○ 定数
#--------------------------------------------------------------------------
OPENINGMOVIELIGHT_MAPID = 2 # オープニングマップの ID
OPENINGMOVIELIGHT_X = 9 # オープニングマップの X 座標
OPENINGMOVIELIGHT_Y = 7 # オープニングマップの Y 座標
end
#----------------------------------------------------------------------------
# ◆ Scene_Title クラス
#----------------------------------------------------------------------------
class Scene_Title
#--------------------------------------------------------------------------
# ● メイン処理
#--------------------------------------------------------------------------
alias _Lufar_Oml_old_main main
def main
unless $BTEST or $_Lufar_Oml_Seen
opening
return
end
@opening_autoplay_duration = Graphics.frame_rate * 60
_Lufar_Oml_old_main
end
#--------------------------------------------------------------------------
# ● フレーム更新
#--------------------------------------------------------------------------
alias _Lufar_Oml_old_ud update
def update
@opening_autoplay_duration = Graphics.frame_rate * 60 if Input.dir4 != 0
if Input.trigger?(Input::B) or (@opening_autoplay_duration -= 1) == 0
if Input.trigger?(Input::B)
if rpgxp?
$game_system.se_play($data_system.cancel_se)
else
Sound.play_cancel
end
end
opening
return
end
_Lufar_Oml_old_ud
end
#--------------------------------------------------------------------------
# ○ オープニング
#--------------------------------------------------------------------------
def opening
# BGM を停止
Audio.bgm_stop
# RPGツクールXPなら
if rpgxp?
# データベースをロード
$data_actors = load_data("Data/Actors.rxdata")
$data_classes = load_data("Data/Classes.rxdata")
$data_skills = load_data("Data/Skills.rxdata")
$data_items = load_data("Data/Items.rxdata")
$data_weapons = load_data("Data/Weapons.rxdata")
$data_armors = load_data("Data/Armors.rxdata")
$data_enemies = load_data("Data/Enemies.rxdata")
$data_troops = load_data("Data/Troops.rxdata")
$data_states = load_data("Data/States.rxdata")
$data_animations = load_data("Data/Animations.rxdata")
$data_tilesets = load_data("Data/Tilesets.rxdata")
$data_common_events = load_data("Data/CommonEvents.rxdata")
$data_system = load_data("Data/System.rxdata")
# 各種ゲームオブジェクトを作成
$game_temp = Game_Temp.new
$game_system = Game_System.new
$game_switches = Game_Switches.new
$game_variables = Game_Variables.new
$game_self_switches = Game_SelfSwitches.new
$game_screen = Game_Screen.new
$game_actors = Game_Actors.new
$game_party = Game_Party.new
$game_troop = Game_Troop.new
$game_map = Game_Map.new
$game_player = Game_Player.new
# RPGツクールVXなら
else
load_database # データベースをロード
create_game_objects # ゲームオブジェクトを作成
end
# 初期パーティをセットアップ
$game_party.setup_starting_members
# 初期位置のマップをセットアップ
$game_map.setup(Lufar::OPENINGMOVIELIGHT_MAPID)
# プレイヤーを初期位置に移動
$game_player.moveto(
Lufar::OPENINGMOVIELIGHT_X,
Lufar::OPENINGMOVIELIGHT_Y)
# プレイヤーをリフレッシュ
$game_player.refresh
# RPGツクールXPなら
if rpgxp?
# マップに設定されている BGM と BGS の自動切り替えを実行
$game_map.autoplay
# マップを更新 (並列イベント実行)
$game_map.update
end
# マップ画面に切り替え
$scene = Scene_Map.new
# RPGツクールVXなら
unless rpgxp?
if $_Lufar_Oml_Seen
RPG::BGM.fade(1500)
close_command_window
Graphics.fadeout(60)
Graphics.wait(40)
RPG::BGM.stop
else
Graphics.brightness = 0
end
$game_map.autoplay
end
$_Lufar_Oml_Seen = true
end
end
#----------------------------------------------------------------------------
# ○ グローバル変数
#----------------------------------------------------------------------------
$_Lufar_Oml_Seen = false
戻る