Template: Fenêtre de choix
Publié : lun. nov. 10, 2008 9:41 pm
par Monos
Voici un petit script que j'ai réalisé avec pas mal d'exemple.
Un template pour apparaître une fenêtre de choix. (2 choix possibles dans l'exemple chaque choix fait un bruit ^^)
Vu que j'arrive pas vraiment à scripter, j'ai décidé de me faire des templates pour pouvoir les réutiliser plus tard. Et je fais partager.
Voila.
Un template pour apparaître une fenêtre de choix. (2 choix possibles dans l'exemple chaque choix fait un bruit ^^)
Vu que j'arrive pas vraiment à scripter, j'ai décidé de me faire des templates pour pouvoir les réutiliser plus tard. Et je fais partager.
Voila.
Spoiler!
Code : Tout sélectionner
#================================== ====
#
#Template de Script Ruby pour faire un Choix. "Prévue pour Vx" Version 1.0
#Exemple sur 2 choix
#Création par Jean Monos le 10 novembre 2008.
#
#=======================================
class Scene_Choix
# Ce script sera appelé par le code suivant à placer dans apelez script (ou dans un autre script)
# $scene = Scene_Choix.new
def initialize (index = 0)
@index = index
#Le chiffre index permet de savoir sur quelle emplacement débute le curseur au démarage de la fenêtre de choix
#(même numéro que les cases) vous pouvez via à l'appelle de script choisir aussi l'index.
#Scene_Choix.new(1)
#L'emplacement par défaut sera sur la case 1. (2em choix)
end
def main
@fond_map = Spriteset_Map.new #appelle la fenetre lié au windowskin en gros
s1 = "Choix 1"
s2 = "Choix 2"
#s1,s2 ect c'est une zone de choix. La phase entre "" c'est le texte qui va apparaitre.
@commandes = Window_Command.new(230, [s1, s2]) #Le 1er chiffre c'est la largeur de la fenêtre option.
@commandes.index = @index
#Window_Commeand.new appelle les fonctions lié au choix de menu. C'est pré programmé.
#Le reste de la ligne permet de faire quelque réglage. (Largeur et les nombre de choix lié au case + affichage
#du texte.
# toujours placer ça
Graphics.transition
loop do
Graphics.update
Input.update
update
if $scene != self
break
end
end
Graphics.freeze
# Fin ^^
#on efface pour éviter les superpositions du script en gros
@commandes.dispose
@fond_map.dispose
end
#mise a jour du script
def update
# Mise à jour la fenêtre des commandes
@commandes.update
#anulation, Input.trigger permet attendre une action sur la clavier. le B est la touche annulé.
if Input.trigger?(Input::B)
Sound.play_cancel #Pour jouer le bruitage Cancel
#Retour sur la carte
$scene = Scene_Map.new
end
#Entrer #le C est la touche validation.
if Input.trigger?(Input::C)
case @commandes.index # Les cases permette de désigner le choix et ses effets.
#on débute toujours par le chiffre 0. Si vous avez trois choix, vous rajoutez When 2 ect
when 0
#Placer les effets ici pour le 1er choix
Sound.play_buzzer #Jouer le son Buzzer
when 1
#Placer les effets ici pour le 2em choix
Sound.play_decision #Jouer le son decision
end
#C'est le end de la case
return
end
end
end