AccueilAccueil  PortailPortail  RechercherRechercher  Dernières imagesDernières images  S'enregistrerS'enregistrer  ConnexionConnexion  



-21%
Le deal à ne pas rater :
LEGO® Icons 10329 Les Plantes Miniatures, Collection Botanique
39.59 € 49.99 €
Voir le deal

Partagez
 

 [Résolu] Script - Contrôle de choix

Voir le sujet précédent Voir le sujet suivant Aller en bas 
AuteurMessage
Raizen
Va-nu-pieds Lv.4
Va-nu-pieds Lv.4
Raizen


Masculin Age : 31
Inscrit le : 03/08/2009
Messages : 61

[Résolu] Script - Contrôle de choix Empty
MessageSujet: [Résolu] Script - Contrôle de choix   [Résolu] Script - Contrôle de choix Icon_minitimeLun 17 Aoû 2009 - 17:45

Salut,
Je voudrais savoir comment mieux contrôler les choix en SCRIPT, je vais vous expliquer mon problème :
Créons par exemple une fenêtre :
Code:
@choice_window = Window_Command.new(192, ["1er choix", "2ème choix"])
Moi maintenant, ce que je voudrais faire, c'est ne faire apparaître "1er choix" que si l'interrupteur ou la variable 56 (par exemple) est activée, et le faire disparaître lorsque l'interrupteur ou la variable 65 (par exemple) est activée.
Merci


Dernière édition par Raizen le Lun 17 Aoû 2009 - 23:04, édité 1 fois
Revenir en haut Aller en bas
Zangther
Maître des Duels
Maître des Duels
Zangther


Masculin Age : 31
Inscrit le : 29/07/2009
Messages : 7840

[Résolu] Script - Contrôle de choix Empty
MessageSujet: Re: [Résolu] Script - Contrôle de choix   [Résolu] Script - Contrôle de choix Icon_minitimeLun 17 Aoû 2009 - 18:26

Peut être en faisant

Code:
if $game_switches[56] == true
@choice_window = Window_Command.new(192, ["1er choix", "2ème choix"])
else
@choice_window = Window_Command.new(192, ["2ème choix"])
end

Enfin après je ne suis que novice ( voire très ) dans l'écriture de script. Donc ce que j'ai marqué est encore a confirmer par un vrai scripteur ^^
Revenir en haut Aller en bas
Grazl
Maire Lv.9
Maire Lv.9
avatar


Masculin Age : 36
Inscrit le : 15/07/2009
Messages : 366

[Résolu] Script - Contrôle de choix Empty
MessageSujet: Re: [Résolu] Script - Contrôle de choix   [Résolu] Script - Contrôle de choix Icon_minitimeLun 17 Aoû 2009 - 19:04

Faut pas oublié la vérification de l'interrupteur 65:

Code:
if $game_switches[56] == true
    if $game_switches[65] != true
        @choice_window = Window_Command.new(192, ["1er choix", "2ème choix"])
    end
else
@choice_window = Window_Command.new(192, ["2ème choix"])
end
Revenir en haut Aller en bas
Zangther
Maître des Duels
Maître des Duels
Zangther


Masculin Age : 31
Inscrit le : 29/07/2009
Messages : 7840

[Résolu] Script - Contrôle de choix Empty
MessageSujet: Re: [Résolu] Script - Contrôle de choix   [Résolu] Script - Contrôle de choix Icon_minitimeLun 17 Aoû 2009 - 19:07

Ah oui, j'avais mal lu ( et de toute façon je pense que j'aurais été incapable de trouver ca tout seul xD il me faut encore m'améliorer)
Revenir en haut Aller en bas
Raizen
Va-nu-pieds Lv.4
Va-nu-pieds Lv.4
Raizen


Masculin Age : 31
Inscrit le : 03/08/2009
Messages : 61

[Résolu] Script - Contrôle de choix Empty
MessageSujet: Re: [Résolu] Script - Contrôle de choix   [Résolu] Script - Contrôle de choix Icon_minitimeLun 17 Aoû 2009 - 19:11

C'est que, j'ai voulu tenté ça, mais ce n'est pas très pratique : j'ai plus de 10 choix à faire avec chacun son interrupteur, tu vois. Je sais qu'il existe une autre façon mais laquelle. [Résolu] Script - Contrôle de choix 862850

J'ai vu un script su XP, voici le début de son "main" :
Code:
def main
    @s = []
    @s[0] = "1er choix" #Le 1er choix
    if $game_switches[23] == true
      @s[1] = "2ème choix"

Dans ce dernier les noms des choix sont représentés par " @s "
J'ai vraiment rien compris Étourdi
Quelqu'un pourrait-il m'expliquer ?
Revenir en haut Aller en bas
Sihn
Voyageur Lv.10
Voyageur Lv.10
Sihn


Masculin Age : 35
Inscrit le : 24/04/2009
Messages : 407

[Résolu] Script - Contrôle de choix Empty
MessageSujet: Re: [Résolu] Script - Contrôle de choix   [Résolu] Script - Contrôle de choix Icon_minitimeLun 17 Aoû 2009 - 20:34

Citation :
Dans ce dernier les noms des choix sont représentés par " @s "
En effet, @s contient ce que l'on appelle un tableau.
Mais @s, c'est juste une variable d'instance nommée... s.
Perso j'aurais utilisé tab, plutôt. C'est plus clair.^^
Et un tableau, c'est ce qui contient les éléments pour ton choix.
Traduction :
Code:
@choice_window = Window_Command.new(192, ["1er choix", "2ème choix"])
est la même chose que
Code:
tab = ["1er choix", "2ème choix"]
@choice_window = Window_Command.new(192, tab)


Voici comment tu peux faire, donc :
Code:
# Création d'un tableau vide
tab = []
# Si l'interrupteur 56 est actif, on rajoute "attaquer"
tab.push("Attaquer") if $game_switches[56]
# D'autres interrupteurs, d'autres commandes...
tab.push("Magie blanche") if $game_switches[57]
tab.push("Magie noir") if $game_switches[58]
# L'interrupteur 60 interdit les animaux! (humour)
tab.push("Magie zébré") if $game_switches[57] and $game_switches[58] and not $game_switches[60]
# A ce stade, si tous les interrupteurs sont allumés,
# tab vaudra ["Attaquer", "Magie blanche", "Magie noir"]
@choice_window = Window_Command.new(192, tab)
Y a juste un truc qui "m'inquiète" un peu... c'est comment tu comptes gérer cette fenêtre de choix, après...
Bah, tu pourras toujours utiliser @choice_window.commands[@choice_window.index] pour tester le nom de la commande actuellement sélectionné.
Revenir en haut Aller en bas
http://www.google.fr/
Raizen
Va-nu-pieds Lv.4
Va-nu-pieds Lv.4
Raizen


Masculin Age : 31
Inscrit le : 03/08/2009
Messages : 61

[Résolu] Script - Contrôle de choix Empty
MessageSujet: Re: [Résolu] Script - Contrôle de choix   [Résolu] Script - Contrôle de choix Icon_minitimeLun 17 Aoû 2009 - 23:03

Merci mille fois, avec l'explication que tu viens de me faire maintenant, je viens de comprendre beaucoup de choses, par exemple, maintenant je vais utiliser l'exemple de " @s " que je n'avais pas compris au début :
PS: j'ai ajouté un 3ème et 4ème choix pour mieux comprendre :
Code:

def main

#La création du tableau :
tab = []

#1er choix :
tab[0] = "1er choix" #N.B : On commence par zéro

#Ici, le 2ème et 3ème choix ne s'affichera que si l'interrupteur 56 est activé :
if $game_switches[56] == true
tab[1] = "2ème choix"
tab[2] = "3ème choix"
end

#Ici, le 4ème choix ne s'affichera que si la variable 65 est plus grande que 5 :
if $game_variables[65] > 5
tab[3] = "4ème choix"
end

#Et enfin la fenêtre :
@choice_window = Window_Command.new(192, tab)

#La suite de main...
Citation :

Y a juste un truc qui "m'inquiète" un peu... c'est comment tu comptes gérer cette fenêtre de choix
Ben au faîte, ça va me servir dans mon script, ... je vais faire un bref aperçu :
Je vais utiliser cette fenêtre de choix pour faire apparaître des images selon la position du curseur avec ceci :
Code:
@pics_sprite.bitmap = Cache.picture(@pics[@choice_window.index])
en sachant que "@pics_sprite" est le sprite des images, et "@pics" sont les images elles même. Biensûr, on ne peut faire ça qu'après avoir créer dabords le sprite, mais ça, c'est une autre question à poser sur le forum.

Sihn, merci infiniment, sans toi, je ne crois que je saurais ce que je sais maintenant, ton nom est garantit dans les crédits de mon projet C\\'est bien

Et encore merci Very Happy
Revenir en haut Aller en bas
Sihn
Voyageur Lv.10
Voyageur Lv.10
Sihn


Masculin Age : 35
Inscrit le : 24/04/2009
Messages : 407

[Résolu] Script - Contrôle de choix Empty
MessageSujet: Re: [Résolu] Script - Contrôle de choix   [Résolu] Script - Contrôle de choix Icon_minitimeLun 17 Aoû 2009 - 23:30

Un autre détail...
Code:
if $game_switches[56] == true
Pas besoin de mettre == true.
Une condition, pour fonctionner, à besoin de ce qui s'appelle un booléen. Un booléen ne peut avoir que deux valeurs : true (vrai, oui...) et false (faux, non...).
1 + 1 == 2 est vrai, et renverra donc la valeur booléenne true, d'où la possibilité de l'utiliser en condition.
Sauf que les interrupteurs, eux, renvoient déjà des booléens.
C'est un peu comme si tu écrivais (1 + 1 == 2) == true, quoi.^^
Revenir en haut Aller en bas
http://www.google.fr/
Raizen
Va-nu-pieds Lv.4
Va-nu-pieds Lv.4
Raizen


Masculin Age : 31
Inscrit le : 03/08/2009
Messages : 61

[Résolu] Script - Contrôle de choix Empty
MessageSujet: Re: [Résolu] Script - Contrôle de choix   [Résolu] Script - Contrôle de choix Icon_minitimeMar 18 Aoû 2009 - 7:00

Je ne la savais pas celle là, merci pour l'info.
Encore merci ! C\\'est bien
Revenir en haut Aller en bas
Contenu sponsorisé




[Résolu] Script - Contrôle de choix Empty
MessageSujet: Re: [Résolu] Script - Contrôle de choix   [Résolu] Script - Contrôle de choix Icon_minitime

Revenir en haut Aller en bas
 

[Résolu] Script - Contrôle de choix

Voir le sujet précédent Voir le sujet suivant Revenir en haut 
Page 1 sur 1

 Sujets similaires

-
» [RESOLU]Modification du curseur de choix
» Choix du combattant avant un combat [RESOLU]
» Le choix du nom de personnage [Résolu]
» [Script] Condition: Appui d'une touche (avec l'ABS) et activation d'un interrupteur en script [Résolu]
» [resolu] Hasard du choix de la classe

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
RPG Maker VX :: Entraide :: Problèmes et Solutions :: Résolu-
Créer un forum | ©phpBB | Forum gratuit d'entraide | Signaler un abus | Forum gratuit | Informatique et Internet | Informatique et électronique