Partagez
Aller en bas
avatar
Adrezo
Membre

Nombre de messages : 233
Age : 31
Distinction : aucune
Date d'inscription : 29/01/2008

Comment : Rajouter option dans menu en fonction des objets possédés. Empty Comment : Rajouter option dans menu en fonction des objets possédés.

le Sam 19 Juil 2008 - 9:26
Bonjour à tous,

J'aimerai inclure dans mon jeu plusieurs options dans le menu :
- Bestiaire
- Alchimie

J'ai trouvé un tuto pour ajouter une option dans le menu, qui est d'ailleurs très clair. Mais j'aimerai savoir comment faire pour que cette option soit visible uniquement si on possèdent un objets particulier.

Exemple :
Tant que le joueur ne possède pas l'objet "Bestiaire" l'option bestiaire n'est pas affichée dans le menu.
De plus j'aimerai que cela s'affiche à un emplacement prévu, pas en dernier après l'option "Quitter Partie"

Je voudrais faire de même avec l'alchimie.

Voila voila, merci de votre aide Smile
A bientôt
avatar
Az'
Membre

Nombre de messages : 3318
Age : 74
Date d'inscription : 22/12/2007

Comment : Rajouter option dans menu en fonction des objets possédés. Empty Re: Comment : Rajouter option dans menu en fonction des objets possédés.

le Sam 19 Juil 2008 - 14:05
Je sais combien ça peut être utilie ça...

Donc, je te fais un bout de code, et je t'explique comment ça s'utilise Wink
Comme je suis un gros compliqué de la vie (création d'un module), ce code est celui-ci :

Code:

module Mister_D_MenuOptionSystem

$bestiaire_possede = false
$alchimie_possede = false

end

Ensuite, pour l'utilisation :

Dès que tu veux attribuer l'objet bestiaire, dans le même évent que celui où tu le donnes au héros, insère un script :

Code:

$bestiaire_possede = true

Pareil pour le systeme alchimique, ça sert à montrer que l'objet en question est possedé.

Ensuite, dans le menu, juste avant le end qui ferme la méthode de création de la command_window, rajoutes ce code :

Code:

if $bestiaire_possede == false # Si le bestiaire n'est pas possedé
command.delete("Bestiaire") # Remplace ce qui est entre "" par le nom de ta commande ;)
end
if $alchimie_possede == false # Si l'alchimie n'est pas possedé
command.delete("Alchimie") # Pareil que plus haut
end

J'espère avoir aidé ^^
J'vais peut-être même faire un tuto sur ça quand j'aurais l'temps.
avatar
Adrezo
Membre

Nombre de messages : 233
Age : 31
Distinction : aucune
Date d'inscription : 29/01/2008

Comment : Rajouter option dans menu en fonction des objets possédés. Empty Re: Comment : Rajouter option dans menu en fonction des objets possédés.

le Sam 19 Juil 2008 - 18:35
Salut,
Merci mais je n'y arrive pas... Tu peux être plus précis sur les points suivants :
- je ne sais pas ou mettre ce que tu appels module.
- je ne sais pas dans quel script rajouter les quelques lignes...

Je tourne sous VX je précise au cas où ...

EDIT :
Il me dit que la commande :"command.delete" n'est pas valide, c'est la ligne où on dit de fermer si y a pas l'objet qui bug...
avatar
Az'
Membre

Nombre de messages : 3318
Age : 74
Date d'inscription : 22/12/2007

Comment : Rajouter option dans menu en fonction des objets possédés. Empty Re: Comment : Rajouter option dans menu en fonction des objets possédés.

le Sam 19 Juil 2008 - 20:48
Mon module, place-le au dessus de main, dans un nouveau script (Inser).
De plus, j't'ai dit, le bout de code, place-le dans le Scene_Menu :

Pour VX : Dans la méthode "create_command window", avant son dernier end, ce serait mieux.
Pour XP : En dessous des lignes de "@command_window = Window_Command.new" etc.

J'espère que ça marchera, si oui, ce sera le premier de mes scripts que j'fais en m'levant qui marche \o/
avatar
Adrezo
Membre

Nombre de messages : 233
Age : 31
Distinction : aucune
Date d'inscription : 29/01/2008

Comment : Rajouter option dans menu en fonction des objets possédés. Empty Re: Comment : Rajouter option dans menu en fonction des objets possédés.

le Sam 19 Juil 2008 - 21:05
Ca ne fonctionne pas, il dit qu'il y a un bug à la 2eme ligne de ce que tu ma mis comme code...
essaie chez toi.
je epnse que c'est la" command.delete" qui foire...
avatar
Az'
Membre

Nombre de messages : 3318
Age : 74
Date d'inscription : 22/12/2007

Comment : Rajouter option dans menu en fonction des objets possédés. Empty Re: Comment : Rajouter option dans menu en fonction des objets possédés.

le Sam 19 Juil 2008 - 21:23
Ah, j'me disais bien aussi.

Le mot delete n'est pas défini ni dans une méthode, ni dans une variable, command non plus d'ailleurs.

Remplace command.delete par ceci :

Code:

@command_window.command.delete("") # Le nom de la commande à effacer doit être entre les "" (Genre : "Bestiaire")

Et là, pouf magie ! Ca devrait marcher !
avatar
Adrezo
Membre

Nombre de messages : 233
Age : 31
Distinction : aucune
Date d'inscription : 29/01/2008

Comment : Rajouter option dans menu en fonction des objets possédés. Empty Re: Comment : Rajouter option dans menu en fonction des objets possédés.

le Sam 19 Juil 2008 - 23:40
Je test ca demain et te dis Smile
avatar
Adrezo
Membre

Nombre de messages : 233
Age : 31
Distinction : aucune
Date d'inscription : 29/01/2008

Comment : Rajouter option dans menu en fonction des objets possédés. Empty Re: Comment : Rajouter option dans menu en fonction des objets possédés.

le Dim 20 Juil 2008 - 9:07
Ca ne fonctionne pas non plus
(je fais un double post pour que on voit que j'ai répondu désolé)

Message d'erreur :
Code:
Script 'Scene_Menu' line 73: NoMethodError occured.
Undefined method 'command' for#<Window_Command:0x31b2570W>
avatar
Adrezo
Membre

Nombre de messages : 233
Age : 31
Distinction : aucune
Date d'inscription : 29/01/2008

Comment : Rajouter option dans menu en fonction des objets possédés. Empty Re: Comment : Rajouter option dans menu en fonction des objets possédés.

le Ven 1 Aoû 2008 - 11:41
je n'y arrive toujours pas... si quelqu'un pouvait m'aider
avatar
Az'
Membre

Nombre de messages : 3318
Age : 74
Date d'inscription : 22/12/2007

Comment : Rajouter option dans menu en fonction des objets possédés. Empty Re: Comment : Rajouter option dans menu en fonction des objets possédés.

le Ven 1 Aoû 2008 - 14:27
J'ai toruvé, j'avais pas vu mais à la place de l'ancien code que j't'ai filé en dernier, insère ça :

Code:

@command_window.delete("") # Le nom de la commande à effacer doit être entre les "" (Genre : "Bestiaire")
Pourquoi ? Bah, parce que c'est un tableau, et que j'utilise la méthode.delete c'est tout ^^
Contenu sponsorisé

Comment : Rajouter option dans menu en fonction des objets possédés. Empty Re: Comment : Rajouter option dans menu en fonction des objets possédés.

Revenir en haut
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum