Pour ce tuto vous devez vous fournir de ce script la
- Code:
-
#==============================================================================
# ■ Scene_Title
#==============================================================================
class Scene_Title
#--------------------------------------------------------------------------
# ● Initialisation
#--------------------------------------------------------------------------
def main
if $BTEST
battle_test
return
end
# Données
$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
# Commande
s1 = ""
s2 = ""
s3 = ""
@command_window = Window_Command.new(192, [s1, s2,s3])
@command_window.back_opacity = 160
@command_window.x = 850
@command_window.y = 800
@a = Sprite.new
@a.bitmap = RPG::Cache.picture("1")
@a.z = 300
@a.x = 0
@a.y = 0
@a.opacity = 255
@b = Sprite.new
@b.bitmap = RPG::Cache.picture("2")
@b.z = 300
@b.x = 0
@b.y = 0
@b.opacity = 0
@c = Sprite.new
@c.bitmap = RPG::Cache.picture("3")
@c.z = 300
@c.x = 0
@c.y = 0
@c.opacity = 0
# @continue_enabled true, false
@continue_enabled = false
for i in 0..3
if FileTest.exist?("Sauvegarde#{i+1}.rxdata")
@continue_enabled = true
end
end
# continue
if @continue_enabled
@command_window.index = 1
else
@command_window.disable_item(1)
end
# BGM
$game_system.bgm_play($data_system.title_bgm)
# Fin BGS et ME
Audio.me_stop
Audio.bgs_stop
# Transition
Graphics.transition
# メインループ
loop do
# update graphique
Graphics.update
Input.update
update
if $scene != self
break
end
end
# Transitions 2
Graphics.freeze
# Effacement des images
@command_window.dispose
@a.dispose
@b.dispose
@c.dispose
end
#--------------------------------------------------------------------------
# ● Update
#--------------------------------------------------------------------------
def update
# Rafraichissement
@command_window.update
@a.update
@b.update
@c.update
update_command
# Appuis 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
#--------------------------------------------------------------------------
# ● Définition des commandes - Commencer -
#--------------------------------------------------------------------------
def command_new_game
# Nouveau jeu
$game_system.se_play($data_system.decision_se)
# Fin BGM
Audio.bgm_stop
Graphics.frame_count = 0
# Données
$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
$game_map.autoplay
$game_map.update
# Début du jeu
$scene = Scene_Map.new
end
#--------------------------------------------------------------------------
# ● Définition des commandes - Continue -
#--------------------------------------------------------------------------
def command_continue
# Continue
unless @continue_enabled
# SE
$game_system.se_play($data_system.buzzer_se)
return
end
# SE
$game_system.se_play($data_system.decision_se)
# Chargement
$scene = Scene_Load.new
end
#--------------------------------------------------------------------------
# ● Définition des commandes - Quitter -
#--------------------------------------------------------------------------
def command_shutdown
# Fin
$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
#--------------------------------------------------------------------------
# ● Position dans le menu
#--------------------------------------------------------------------------
def update_command
case @command_window.index
when 0
@a.opacity = 255
@b.opacity = 0
@c.opacity = 0
when 1
@a.opacity = 0
@b.opacity = 255
@c.opacity = 0
when 2
@a.opacity = 0
@b.opacity = 0
@c.opacity = 255
end
end
#--------------------------------------------------------------------------
# ● 戦闘テスト
#--------------------------------------------------------------------------
def battle_test
# 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
$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)
# Combat
$scene = Scene_Battle.new
end
end
Par contre je ne sais plus de qui es ce script T.T (avis a celui qui connais ce script si vous avez le nom pourriez vous le signaler, j'éditerai en le nommant et en vous remerciant)
Il vous faudra pour cela un log de dessin (paint est largement suffisant^^) mais, pour ce tuto je vais réaliser mon écran titre sous The gimp. Les image doivent être en 640*480 pixels.
Nous alons commencer par créer la base de travail de cet écran titre.
vous devais la rempliravec le dessin ou la compo 3D de votre choix en respectant la taille.
moi je le fait au ambiance pcyché pour le tuto.
Voila la base est fin prete pour ressevoir les modifications nécessaire.
Vous commencer par l'image qui devra obligatoirement se nommé "1"
Vous devait inserer le mot nouvelle partie (ou tout mot qui vous semble approprier pour votre jeu)
Moi j'ai choisi un nouvelle partie simple en Rocwell bold italic de couleur assez joli vert pomme^^
Voila vous le sauvegarder en le nommant "1" format PNG (cecis est très important)
Venos en a la création de la seconde image.
Nous réutisisons notre base, et fesont la meme chose mais avec le mot continué (ou tout autre mot que vous désirer)
voila le screen pour la réalisation
N'oublier pas cette image doit impérativement se nommé "2" et doit être au format PNG
Puis nous devons réaliser le dernier
Même étape.
Nous reprenons la base sauf que la nous devons inserer le mot quitter.
Comme pour les précedentes image celle si doit être en PNG mais elle se nomme "3"
Voila pour la réalisation.
Passons a l'insertion de ce nouveau bijou.
Allez dans votre projet. Ouvrez les scripts (F11) Remplacer le Scene_Title par celui que j'ai donner au début, garder le nom Scene_Title.
Ici
Une fois cette opération faite ouvrez votre repertoire de gestion de ressources (F10) et placer vos image dans le dossier Pictures.
Ici
maintenant vous pouvez savourez votre travail^^
Vu que vous ne verez pas la différence entre les screens et le In game je ne vais pas remettre 2 fois les meme images^^