_
Messages : 167
| Sujet: Écran-Titre en Événement Sam 27 Nov - 20:10 | |
| Vous êtes fatiguées de toujours voir le même écran-titre par défaut utilisant un windowskin?- Spoiler:
Vous voudriez bien faire votre propre écran-titre mais vous n'avez aucune connaissance en Programmation? Ce tutoriel est fait pour vous. Niveau de difficulté: MoyenCe tutoriel vous permettra de faire votre écran-titre en événements.Pour ce tutoriel, il vous faudra trois images: -Le titre de votre jeu -Les Options (Nouvelle Partie...) -Un curseur Tout d'abord, il vous faut créer une map avec un chipset de votre choix. Vous pouvez créer votre map comme vous voulez, ce sera l'arrière-plan. Par la suite, vous faites un événement en processus parralèle sur la map que vous venez de faire. Dans les commandes d'événement, vous affichez les images de votre écran-titre selon se que vous souhaitez faire. (Effet d'apparition, Flash, Effets sonores, etc.) Dans cet exemple, une image du titre se déplace de la droite de l'écran j'usqu'à la position voulu de celui-ci. Lorsque l'image se rend où il doit aller, un effet sonore est joué un l'écran devient blanc. Pendant ce maigre lapse de temps, toutes les autres images apparaissent. (Les Options: -Nouvelle Partie... + Le curseur) Comment faire cela? Voici le procédé. - Spoiler:
>Variable: [0001: Sélection] = 0 >Afficher l'image: 1, 'Titre du jeu', Le coin suppérieur (640, 0), Taille(100%,100%) Opacité 0 >Bouger l'image: 1, Temps@15 Frames 'Titre du jeu', Le coin suppérieur (210, 10), Taille(100%,100%) Opacité 255 >Attendre: 15 Frames >Jouer un SE: (Le bruit voulu) >Afficher l'image: 50, 'Fondu Blanc', Le coin suppérieur (0, 0), Taille(100%,100%) Opacité 0 >Bouger l'image: 50, Temps@4 Frames 'Fondu Blanc', Le coin suppérieur (0, 0), Taille(100%,100%) Opacité 255 >Attendre: 4 Frames
Ici, nous avons initialisé la variable sélection pour qu'elle soit à 0. Elle nous sera utile plus tard. Nous avons fait entrer l'image du titre de par la droit jusque dans l'écran. À ce moment-là, un effet sonore est joué et l'écran flash, mais puisque nous avons mis une image, nous ne pouvons mettre la commande d'énvénement Flash puisque se ne sera que la map qui "Flashera". Et finalement, on attend que le flash soit effectué. Continuons avec la suite. (Lors du Flash ) - Spoiler:
>Afficher l'image: 2, 'Options', Le coin suppérieur (640, 0), Taille(100%,100%) Opacité 255 >Afficher l'image: 3, 'Curseur', Le coin suppérieur (640, 0), Taille(100%,100%) Opacité 255 >Bouger l'image: 50, Temps@20 Frames 'Fondu Blanc', Le coin suppérieur (210, 10), Taille(100%,100%) Opacité 0 >Attendre: 20 Frames >Loop >>Condition: Si la touche Bas est appuyée: >>>Jouer un SE >>>Variable: [0001: Sélection] +1 >>>Attendre: 3 Frames >>> >>Fin De la Condition >>Condition: Si la touche Haut est appuyée: >>>Jouer un SE >>>Variable: [0001: Sélection] -1 >>>Attendre: 3 Frames >>> >>Fin De la Condition
Alors, ici, on affiche les images restantes dans le flash. Ensuite, on rend l'écran visible et on débute une loop. Une Condition nous permet de jouer l'effet sonore lorsque le curseur sera bougé. Cette même condition ajoute ou soustrait 1 de la varible que nous avons initialisé tout à l'heure. - Spoiler:
>>Condition: Si la Variable [0001: Sélection] < 0: >>>Variable: [0001: Sélection] == 2 >>> >>Fin De la Condition >>Condition: Si la Variable [0001: Sélection] > 2: >>>Variable: [0001: Sélection] == 0 >>> >>Fin De la Condition
Ces commandes d'événements nous permet de faire en sorte que si le joueur maintient Haut tout le temps, le curseur reviendra à Quitter au lieu de rester sur Nouvelle Partie et de même que s'il appuit tout le temps sur Bas.. Maintenant, vous saurez à quoi sert la variable "Sélection". - Spoiler:
>>Condition: Si la Variable [0001: Sélection] == 0: >>>Bouger l'image: 3, Temps@2 Frames 'Curseur', Le coin suppérieur (X, Y), Taille(100%,100%) Opacité 255 >>>Condition: Si la touche C est appuyée: >>>>Jouer un SE >>>>Téléporter le joueur: [002: 'Début de l'histoire'], (0, 0) >>>Fin De la Condition >>> >>Fin De la Condition >> >>Condition: Si la Variable [0001: Sélection] == 1: >>>Bouger l'image: 3, Temps@2 Frames 'Curseur', Le coin suppérieur (X, Y), Taille(100%,100%) Opacité 255 >>>Condition: Si la touche C est appuyée: >>>>Jouer un SE >>>>Script: $scene = Scene_Continue.new >>>Fin De la Condition >>> >>Fin De la Condition >> >>Condition: Si la Variable [0001: Sélection] == 2: >>>Bouger l'image: 3, Temps@2 Frames 'Curseur', Le coin suppérieur (X, Y), Taille(100%,100%) Opacité 255 >>>Condition: Si la touche C est appuyée: >>>>Jouer un SE >>>>Script: Audio.bgm_fade(800) >>>>______Audio.bgs_fade(800) >>>>______Audio.me_fade(800) >>>>______$scene = nil >>>Fin De la Condition >>> >>Fin De la Condition >> >Attendre: 1 Frames >Répéter la Loop
Ici, nous faisons une condition pour déterminer où le curseur sera. La variable Sélection: - 0 = Nouvelle Partie - 1 = Continuer - 2 = Quitter Bien sûr, vous pouvez ajouter des options tels que Credits, Options, Bonus, etc. Lorsque la condition est remplie, le curseur est bougé à l'endroit que vous voulez selon vos image. Par la suite, une nouvelle condition nous permet de savoir si la touche C est appuyée. Si la condition est remplie, nous téléportons le joueur à la map du début. Nous répétons la même chose pour les autres options. Le code au complet devrais ressembler à cela: - Spoiler:
>Variable: [0001: Sélection] = 0 >Afficher l'image: 1, 'Titre du jeu', Le coin suppérieur (640, 0), Taille(100%,100%) Opacité 0 >Bouger l'image: 1, Temps@15 Frames 'Titre du jeu', Le coin suppérieur (210, 10), Taille(100%,100%) Opacité 255 >Attendre: 15 Frames >Jouer un SE: (Le bruit voulu) >Afficher l'image: 50, 'Fondu Blanc', Le coin suppérieur (0, 0), Taille(100%,100%) Opacité 0 >Bouger l'image: 50, Temps@4 Frames 'Fondu Blanc', Le coin suppérieur (0, 0), Taille(100%,100%) Opacité 255 >Attendre: 4 Frames >Afficher l'image: 2, 'Options', Le coin suppérieur (640, 0), Taille(100%,100%) Opacité 255 >Afficher l'image: 3, 'Curseur', Le coin suppérieur (640, 0), Taille(100%,100%) Opacité 255 >Bouger l'image: 50, Temps@20 Frames 'Fondu Blanc', Le coin suppérieur (210, 10), Taille(100%,100%) Opacité 0 >Attendre: 20 Frames >Loop >>Condition: Si la touche Bas est appuyée: >>>Jouer un SE >>>Variable: [0001: Sélection] +1 >>>Attendre: 3 Frames >>> >>Fin De la Condition >>Condition: Si la touche Haut est appuyée: >>>Jouer un SE >>>Variable: [0001: Sélection] -1 >>>Attendre: 3 Frames >>> >>Fin De la Condition >>Condition: Si la Variable [0001: Sélection] < 0: >>>Variable: [0001: Sélection] == 2 >>> >>Fin De la Condition >>Condition: Si la Variable [0001: Sélection] > 2: >>>Variable: [0001: Sélection] == 0 >>> >>Fin De la Condition >>Condition: Si la Variable [0001: Sélection] == 0: >>>Bouger l'image: 3, Temps@2 Frames 'Curseur', Le coin suppérieur (X, Y), Taille(100%,100%) Opacité 255 >>>Condition: Si la touche C est appuyée: >>>>Jouer un SE >>>>Téléporter le joueur: [002: 'Début de l'histoire'], (0, 0) >>>Fin De la Condition >>> >>Fin De la Condition >> >>Condition: Si la Variable [0001: Sélection] == 1: >>>Bouger l'image: 3, Temps@2 Frames 'Curseur', Le coin suppérieur (X, Y), Taille(100%,100%) Opacité 255 >>>Condition: Si la touche C est appuyée: >>>>Jouer un SE >>>>Script: $scene = Scene_Continue.new >>>Fin De la Condition >>> >>Fin De la Condition >> >>Condition: Si la Variable [0001: Sélection] == 2: >>>Bouger l'image: 3, Temps@2 Frames 'Curseur', Le coin suppérieur (X, Y), Taille(100%,100%) Opacité 255 >>>Condition: Si la touche C est appuyée: >>>>Jouer un SE >>>>Script: Audio.bgm_fade(800) >>>>______Audio.bgs_fade(800) >>>>______Audio.me_fade(800) >>>>______$scene = nil >>>Fin De la Condition >>> >>Fin De la Condition >> >Attendre: 1 Frames >Répéter la Loop
Maintenant, il nous faut un script. Placez-le au-dessu de Main saus n'importe quel nom. - Code:
-
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 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 $game_map.autoplay $game_map.update $scene = Scene_Map.new end end
Ce code vous permettera de sauter l'écran-titre en script et d'apparaître sur la Map avec la première position du Héros. (Dans RMXP: le S encadré.) Voilà!J'espère que vous avez tout compris puisque ce procédé peut être utilisé pour tout type de menu.J'epère que ce tutoriel vous sera utile!Aperçu Final:
Dernière édition par Dark Guardian le Sam 27 Nov - 23:22, édité 1 fois | |
|