❤ 0 Voici mon tout premier tutoriel.
Si vous voulez par exemple ajouter une case crédit en plus de continuer, nouveau, quitter, c'est très facile à faire ! Cela fonctionne également pour ajouter un tutoriel, des bonus et presque n'importe quoi !
Il s'agit d'une alternative au tutoriel sur les menus complètement customisés (qui je pense est plus recommandé), mais il peut tout de même servir.
Ouvrez l'éditeur de script et allez à la classe Scene_Title,
Autour de la ligne 37, vous verrez le code suivant :
1
2
3
4
| s1 = "Nouvelle partie"
s2 = "Charger une partie"
s3 = "Quitter"
@command_window = Window_Command.new(192, [s1, s2, s3]) |
Remplacez-le par ceci :
1
2
3
4
5
| s1 = "Nouvelle partie"
s2 = "Continuer"
s3 = "Quitter"
s4 = "Crédits"
@command_window = Window_Command.new(192, [s1, s2, s3, s4]) |
Ici vous rajoutez un élément à la fenêtre de choix. (libre à vous de revoir l'ordre).
Les modifications qui ont été apportées sont les suivantes :
On déclare la variable s4 qui prend pour valeur "Crédits". Ensuite on la rajoute à la fenêtre de sélection (déclarée grâce à Window_Command.new),
Si vous voulez mettre encore plus de choix, rien ne vous interdit de déclarer une variable s5 et de la rajouter à la déclaration de la fenêtre de sélection.
Si jamais le dernier choix n'est pas visible car trop bas, alors vous pouvez baisser ce paramètre afin de remonter la fenêtre de sélection :
1
| @command_window.y = 288 |
Maintenant, on va définir ce qui se passe quand on sélectionne crédits dans notre menu.
Pour cela, rendez-vous autour de la ligne 95 de la classe.
Vous devriez voir apparaître le code suivant :
1
2
3
4
5
6
7
8
9
10
| if Input.trigger?(Input::C)
case @command_window.index
when 0
command_new_game
when 1
command_continue
when 2
command_shutdown
end
end |
Vous vous en doutez, ici, quand on appuie sur entrée, le script repère où on est dans la fenêtre de sélection.
Il va donc falloir rajouter une condition when 3. Dans ce cas, on appelle une méthode command_credits (vous mettez le nom que vous voulez pour la méthode) qu'il faudra définir plus tard.
Cela donne donc :
1
2
3
4
5
6
7
8
9
10
11
12
| if Input.trigger?(Input::C)
case @command_window.index
when 0
command_new_game
when 1
command_continue
when 2
command_shutdown
when 3
command_credits
end
end |
Ensuite, ce que je préconise pour afficher vos crédits, c'est de créer un événement en démarrage automatique qui fait défiler une image sur une map. (Je pense qu'il y a d'autres tutoriels là dessus).
Ce qui va nous intéresser est donc de savoir comment téléporter le héros sur une autre map que celle que l'on a définie dans le jeu (le S encadré).
Juste avant la ligne def command_new_game, insérez le code suivant :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
| def command_credits
$game_system.se_play($data_system.decision_se)
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(185)
$game_player.moveto(1, 1)
$game_player.refresh
$game_map.autoplay
$game_map.update
$scene = Scene_Map.new
end |
En faisant ça, vous avez déclaré et créé la méthode command_credits (que vous appellerez comme vous voulez d'ailleurs selon ce que vous voulez ajouter au menu).
Remplacez 185 par l'ID de la map sur laquelle vous voulez téléporter le héros.
Remplacez le 1,1 de cette ligne :
1
| $game_player.moveto(1, 1) |
par les coordonnées de la map sur laquelle le héros doit être téléporté.
Vous pouvez ajouter d'autres fonctions si vous voulez faire d'autres choix.
Ce tutoriel peut donc servir, comme promis, à insérer un tutoriel pour votre jeu directement à partir du menu qui vous téléporterait sur une map où des PNJ vous expliqueraient comment jouer.
|