PDA

View Full Version : [Script] Animated Title Screen


BenGames,Films, and More!
April 3rd, 2013, 04:51 AM
Hello everyone this is will be a quick and easy script (Beware beginners). I found this script using this starter kit (http://pokemonscriptproject.xooit.fr/t6158-PSP-DS.htm), created by Pαlвσlѕку It is French (Beware anyone who doesn't have Google Translate or isn't French). It was modified by moi.
This works for Essentials
INTRUCTIONS!
Extract all contents to "Titles" Folder
Put the following script in for your title Script (It varies depending on your current title screen)
#==============================================================================
# ■ Scene_Title
#------------------------------------------------------------------------------
#  タイトル画面の処理を行うクラスです。
#==============================================================================

class Scene_Title
#--------------------------------------------------------------------------
# ● メイン処理
#--------------------------------------------------------------------------
def main
# 戦闘テストの場合
if $BTEST
battle_test
return
end
# データベースをロード
$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_system = Game_System.new
# タイトルグラフィックを作成
@sprite = Sprite.new
@sprite.bitmap = RPG::Cache.title($data_system.title_name)
# コマンドウィンドウを作成
s1 = "Nouvelle partie"
s2 = "Charger une partie"
s3 = "Quitter"
@command_window = Window_Command.new(192, [s1, s2, s3])
@command_window.back_opacity = 160
@command_window.x = 320 - @command_window.width / 2
@command_window.y = 288
# コンティニュー有効判定
# セーブファイルがひとつでも存在するかどうかを調べる
# 有効なら @continue_enabled を true、無効なら false にする
@continue_enabled = false
for i in 0..3
if FileTest.exist?("Save#{i+1}.rxdata")
@continue_enabled = true
end
end
# コンティニューが有効な場合、カーソルをコンティニューに合わせる
# 無効な場合、コンティニューの文字をグレー表示にする
if @continue_enabled
@command_window.index = 1
else
@command_window.disable_item(1)
end
# タイトル BGM を演奏
$game_system.bgm_play($data_system.title_bgm)
# ME、BGS の演奏を停止
Audio.me_stop
Audio.bgs_stop
# トランジション実行
Graphics.transition
# メインループ
loop do
# ゲーム画面を更新
Graphics.update
# 入力情報を更新
Input.update
# フレーム更新
update
# 画面が切り替わったらループを中断
if $scene != self
break
end
end
# トランジション準備
Graphics.freeze
# コマンドウィンドウを解放
@command_window.dispose
# タイトルグラフィックを解放
@sprite.bitmap.dispose
@sprite.dispose
end
#--------------------------------------------------------------------------
# ● フレーム更新
#--------------------------------------------------------------------------
def update
# コマンドウィンドウを更新
@command_window.update
# C ボタンが押された場合
if Input.trigger?(Input::C)
# コマンドウィンドウのカーソル位置で分岐
case @command_window.index
when 0 # ニューゲーム
command_new_game
when 1 # コンティニュー
command_continue
when 2 # シャットダウン
command_shutdown
end
end
end
#--------------------------------------------------------------------------
# ● コマンド : ニューゲーム
#--------------------------------------------------------------------------
def command_new_game
# 決定 SE を演奏
$game_system.se_play($data_system.decision_se)
# BGM を停止
Audio.bgm_stop
# プレイ時間計測用のフレームカウントをリセット
Graphics.frame_count = 0
# 各種ゲームオブジェクトを作成
$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
# 初期パーティをセットアップ
$game_party.setup_starting_members
# 初期位置のマップをセットアップ
$game_map.setup($data_system.start_map_id)
# プレイヤーを初期位置に移動
$game_player.moveto($data_system.start_x, $data_system.start_y)
# プレイヤーをリフレッシュ
$game_player.refresh
# マップに設定されている BGM と BGS の自動切り替えを実行
$game_map.autoplay
# マップを更新 (並列イベント実行)
$game_map.update
# マップ画面に切り替え
$scene = Scene_Map.new
end
#--------------------------------------------------------------------------
# ● コマンド : コンティニュー
#--------------------------------------------------------------------------
def command_continue
# コンティニューが無効の場合
unless @continue_enabled
# ブザー SE を演奏
$game_system.se_play($data_system.buzzer_se)
return
end
# 決定 SE を演奏
$game_system.se_play($data_system.decision_se)
# ロード画面に切り替え
$scene = Scene_Load.new
end
#--------------------------------------------------------------------------
# ● コマンド : シャットダウン
#--------------------------------------------------------------------------
def command_shutdown
# 決定 SE を演奏
$game_system.se_play($data_system.decision_se)
# BGM、BGS、ME をフェードアウト
Audio.bgm_fade(800)
Audio.bgs_fade(800)
Audio.me_fade(800)
# シャットダウン
$scene = nil
end
#--------------------------------------------------------------------------
# ● 戦闘テスト
#--------------------------------------------------------------------------
def battle_test
# データベース (戦闘テスト用) をロード
$data_actors = load_data("Data/BT_Actors.rxdata")
$data_classes = load_data("Data/BT_Classes.rxdata")
$data_skills = load_data("Data/BT_Skills.rxdata")
$data_items = load_data("Data/BT_Items.rxdata")
$data_weapons = load_data("Data/BT_Weapons.rxdata")
$data_armors = load_data("Data/BT_Armors.rxdata")
$data_enemies = load_data("Data/BT_Enemies.rxdata")
$data_troops = load_data("Data/BT_Troops.rxdata")
$data_states = load_data("Data/BT_States.rxdata")
$data_animations = load_data("Data/BT_Animations.rxdata")
$data_tilesets = load_data("Data/BT_Tilesets.rxdata")
$data_common_events = load_data("Data/BT_CommonEvents.rxdata")
$data_system = load_data("Data/BT_System.rxdata")
# プレイ時間計測用のフレームカウントをリセット
Graphics.frame_count = 0
# 各種ゲームオブジェクトを作成
$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
# 戦闘テスト用のパーティをセットアップ
$game_party.setup_battle_test_members
# トループ ID、逃走可能フラグ、バトルバックを設定
$game_temp.battle_troop_id = $data_system.test_troop_id
$game_temp.battle_can_escape = true
$game_map.battleback_name = $data_system.battleback_name
# バトル開始 SE を演奏
$game_system.se_play($data_system.battle_start_se)
# バトル BGM を演奏
$game_system.bgm_play($game_system.battle_bgm)
# バトル画面に切り替え
$scene = Scene_Battle.new
end
end

The result should be Lugia swimming in the ocean like in Soul Silver when you open your game.
Please report bugs!

bartyboy6
April 3rd, 2013, 09:40 AM
Does it work on Pokemon Essentials?

BenGames,Films, and More!
April 3rd, 2013, 01:35 PM
Does it work on Pokemon Essentials?

Yeah... I thought I made that kinda clear :P

Rayquaza.
April 3rd, 2013, 11:38 PM
After examining the script it looks very similar to the titlessceen script in the Pokémon Script Project DS, not to mention that the graphics come from there as well. For that reason I would strongly suggest credit to Pablosky is given.

BenGames,Films, and More!
April 4th, 2013, 03:37 AM
After examining the script it looks very similar to the titlessceen script in the Pokémon Script Project DS, not to mention that the graphics come from there as well. For that reason I would strongly suggest credit to Pablosky is given.

I gave credit to the starter kit, but I'll give it to the creator

Tayuya of the Sound Four
April 4th, 2013, 07:54 PM
Where exactly do I put the code? I put the pictures in the right place, and I thought I had to replace "scene_intro" with it, but that didn't work I also tried adding it by itself but that also didn't work, what am I doing wrong

BenGames,Films, and More!
April 5th, 2013, 03:35 AM
Where exactly do I put the code? I put the pictures in the right place, and I thought I had to replace "scene_intro" with it, but that didn't work I also tried adding it by itself but that also didn't work, what am I doing wrong

Scene_Title is where it needs to be

Tayuya of the Sound Four
April 5th, 2013, 05:57 AM
I don't have a scene_title 0.0 I triple checked, I have Scene_Map Scene_Movie Scene_credits and scene intro,, do I have to make Scene_title? I can do that if so

BenGames,Films, and More!
April 5th, 2013, 07:50 AM
I don't have a scene_title 0.0 I triple checked, I have Scene_Map Scene_Movie Scene_credits and scene intro,, do I have to make Scene_title? I can do that if so

My bad...Sorry it's "PokemonLoad" replace the entire script.

Tayuya of the Sound Four
April 5th, 2013, 07:56 AM
Hmmm. A syntax Error on line 13 occured.. That line is " if $ BTEST" I replaced the entirety of PokemonLoad o.o
Thanks for the help btw

BenGames,Films, and More!
April 5th, 2013, 08:24 AM
Hmmm. A syntax Error on line 13 occured.. That line is " if $ BTEST" I replaced the entirety of PokemonLoad o.o
Thanks for the help btw

What version of Essentials are you using?

Tayuya of the Sound Four
April 5th, 2013, 08:27 AM
The most recent one, number 11 0.0

Maruno
April 5th, 2013, 09:33 AM
This script really doesn't look like it'll work with Essentials. Seriously. Essentials just works differently.

BenGames,Films, and More!
April 5th, 2013, 09:34 AM
This script really doesn't look like it'll work with Essentials. Seriously. Essentials just works differently.

:/ It works for me. I included everything I used for the script.

The most recent one, number 11 0.0

Okay. I am going to download an unedited version of Essentials and put the script in to see if it works

Tayuya of the Sound Four
April 5th, 2013, 09:35 AM
That's too bad if it doesn't This would have enable me to do something amazing with the title, Oh well.. Thanks for trying

Maruno
April 5th, 2013, 09:42 AM
No, seriously, it won't work. It doesn't replace any existing script - class Scene_Title doesn't exist in Essentials and is never called anywhere, so the script won't ever run. The intro and title screen in Essentials is in script section Scene_Intro, and is just for those things and looks nothing like the script above.

The script also makes reference to things like $data_troops which Essentials doesn't use, and doesn't make reference to things like $MapFactory which it does use. Further evidence that this script can't be used as-is in Essentials.