Partagez
Aller en bas
Nathän
Nathän
Membre

Nombre de messages : 165
Age : 27
Localisation : euh c'est une bonne question , c'est ou nul part ?
Distinction : aucune
Date d'inscription : 03/09/2008

nouvel inventaire Empty nouvel inventaire

le Dim 7 Mar 2010 - 9:48
Bonjour
Type de script: modification du menu de base et plus précisément de l'inventaire
Explication complete:Voilà j'aimerais un script qui modifie l'inventaire de façon assez conséquente.

-Premièrement j'aimerais que la place dans l'inventaire soit limitée à 16*8 objets.
-Deuxièmement les objets ne devrait être représenté que par leur icône et le nombre d'objet possédés
-l'inventaire devrait être séparer en 7 onglets : ("objets de quêtes", "armes", "armures", "potions/aliments", "accessoires", "matériaux", livres/parchemins")
-Quand on sélectionne un objet un choix doit apparaitre : "utiliser ou jeter". Si l'option utiliser est choisie ben l'objet est utiliser ^^; Si l'option jeter est utiliser l'objet apparait au sol. ( donc possibilité de le reprendre si on a faite une erreur cependant si on quitte la map il disparait pour de bon)
-au dessus des icônes une description de l'objets avec possibilité de mettre une image provenant du dossier picture

-les objets devrait être catégorisé à partir du cadre commentaire par exemple : dans les commentaire on aurait : catégorie=1(pour les armes) 2(pour les matériaux) ....
-la description viendrait elle aussi des commentaires


Spécificités:c'est expliquer juste au dessus

Schéma très clair:
Spoiler:
[url=nouvel inventaire Mini_100307094643898366]
Ressources supplémentaires:/

Exemples dans un jeu video:/
Scripts déjà possédés:le SBS 3.3 (enu) ; le script d'enduit (blockade), les effets de lumières(kylock) , distribution des stat (lettuce), le script de crédit (Mac Malone) et le pop-up d'abojet de blockade

Merci d'avance ! Nathän

les édit sont en rouge


Dernière édition par Nathän le Dim 4 Avr 2010 - 15:06, édité 1 fois
Dudu'
Dudu'
Staffeux retraité

Nombre de messages : 2060
Age : 28
Distinction : Apprenti KGB-boy en avenir
[Coco' Smile]
Hamsterphile de service ^^
[Balby' le Fake]
Grand prof de la MA
[Skillo]
Ce grand programmateur, mon coeur, ma vie ! [Hamu']
Date d'inscription : 22/06/2009

nouvel inventaire Empty Re: nouvel inventaire

le Dim 7 Mar 2010 - 11:45
mwai je vais voire ce que je peut faire mais s'est un travail asser conséquent alors je suis pas sur du tout d'y arriver
donc si il y a quelqu'un d'autre qui veux je faire je suis pas contre^^
ZangtherOld
ZangtherOld
Membre

Nombre de messages : 1711
Date d'inscription : 07/08/2009

nouvel inventaire Empty Re: nouvel inventaire

le Dim 7 Mar 2010 - 12:45
Voici un tuto pour un inventaire en event, avec un peu de technique tu pourras le personaliser.

@fablemai a écrit:Salut tout le monde Smile , je sais qu'un tuto comme celui ci est déjà sur le forum mais le miens
est dans un autre style. Je vous conseille d'aller voir la démo avant de faire le tuto pour savoir à
quoi vous attendre puisque c'est un event assé complexe et si vous n'aimez pas le rendu, inutile de se donner
autant de mal.
Il nécessitera un peu de connaissance d'un programme de retouche d'image et une bonne base
en eventing.

La Démo

Difficulté : Difficile (novices s'abstenir Wink )

Matériel
-Les objets que vous désirez afficher.
-Les images précisées plus bas.
-2 events communs
-2 interrupteurs
-4 variables dont 1 défini par un script (pour les besoins de la cause désolé Laughing)

Description.
1- Cet event permettra d'afficher un petit inventaire sur votre map.
2- Le personnage pourra bouger même si l'inventaire est activé.
3- Il sera activable à partir du menu, vous aurez donc besoin du script Common Event in Menu par puppeto4.
Pour avoir le script déjà configuré pour activer l'inventaire via le menu, il suffit de le prendre dans la démo.


Les scripts présents sur la démo
MenuEventCommuns (pour activer l'inventaire)
Max Items (il n'est pas obligatoire mais je l'ai mis pour vous éviter de le chercher, mais vous n'êtes pas
obligé de l'utiliser)
Réserve (encore une fois ce script n'est pas obligatoire c'est juste pour vous permettre d'expérimenter avec
les items).
Pour vous faire un résumé et que tout le monde comprenne, les seules choses en rapport avec le tuto dans
cette démo sont : Le script du MenuEventCommuns et il sert simplement à l'activation de l'event commun.
Les autres choses importantes sont les 2 seuls events communs qui sont présents dans la démo.

Inconvénients d'un inventaire en Event
Même si vous êtes un des meilleurs eventmaker, il y a quand même des inconvénients et des contraintes à faire un inventaire en event.
1- Les objets sont limités puisqu'on ne peut pas mettre plus de 20 images. Neutral (hé oui la limite de numéro
d'image est de 20)
2- Il faudra baisser la limite d'objet du même type si vous ne voulez pas passer la journée sur
votre event (vous comprendrez plus loin).

Le Tuto

Les images
Les images à enregistrer dans le dossier pictures de votre projet.
Spoiler:
La base de l'inventaire (100% custom par moi :P )
nouvel inventaire Invent10
Vous devez faire tout les chiffres jusqu'au nombre maximum d'item de même
sorte que vous mettez. Ex: vous avez un nombre d'item de même sorte max de 20, vous devez faire tout les
nombres jusqu'à 20 sur des images séparées.
Spoiler:
nouvel inventaire 110
nouvel inventaire 210
nouvel inventaire 310
Et ainsi de suite...La couleur d'écriture blanche est celle qui paraitra le mieux quand elle sera placée par
dessus les items.
***Important***
Les images des chiffres ne doivent pas dépasser le format 24x24 autrement ils ne seront plus dans la case des
items. Même que je recommande qu'ils soient seulement 10x14. Il est aussi important que le fond de l'image
soit transparent pour voir les items quand les chiffres seront affichés par dessus eux.

Les dernière images à enregistrer dans pictures sont celles de chaque item que vous désirez mettre dans votre
inventaire. Ex : Vous voulez afficher les pommes, raisins, fraises. Vous devrez alors découper les images sur
votre iconset en format 24x24 puisqu'une icône mesure 24x24. J'ai utilisé Paint.Net pour ce faire. Le fond doit
également être transparent. Quelques images pour vous montrer à quoi va ressembler vos images après le
découpage.
Spoiler:
nouvel inventaire Apple10
nouvel inventaire Grappe10
nouvel inventaire Strawb10

Bon en résumé, je viens simplement de vous montrer les ressources graphiques que vous aurez besoin pour
l'inventaire en event.
Tous les formats d'images.
Base de l'inventaire : 250x150
Image d'un chiffre : maximum 24x24 (formats de la démo : 10x14)
Image d'un objet : 24x24 (la taille d'une image sur l'iconset et la taille disponible dans un slot de l'inventaire).

L'event

Fonctionnement
Le premier event affiche l'image de la base de l'inventaire, l'image de l'objet s'affiche sur une case de
l'inventaire (on a seulement à indiquer les coordonnées de la première case et les coordonnées des
autres cases se calculera automatiquement magique non?Very Happy Le deuxième event sert seulement à actualiser
l'inventaire s'il est activé en utilisant le même principe que le premier event.

Bon, c'est la que ça commence à être plus chaud à expliquer avec tout les numéros d'image.
Voici un screen de l'inventaire que vous seriez supposé avoir après le tuto. (si vous n'avez pas ajouté plus
d'objets bien sur).
Spoiler:
nouvel inventaire Rendu10
Je vous
recommande aussi de prendre les mêmes images que je vous donnerai tout de suite après
cette phrase.
Spoiler:
Les images des objets utilisés sur l'event présenté
nouvel inventaire Apple10
nouvel inventaire Mushro10
Puisque je suis généreux, je vous donne déja les chiffres jusqu'à 20!
nouvel inventaire 110
nouvel inventaire 210
nouvel inventaire 310
nouvel inventaire 410
nouvel inventaire 510
nouvel inventaire 610
nouvel inventaire 710
nouvel inventaire 810
nouvel inventaire 910
nouvel inventaire 1010
nouvel inventaire 1110
nouvel inventaire 1210
nouvel inventaire 1310
nouvel inventaire 1410
nouvel inventaire 1510
nouvel inventaire 1610
nouvel inventaire 1710
nouvel inventaire 1810
nouvel inventaire 1910
nouvel inventaire 2010 (Max représente 20)
***Important*** Je vous conseille de prendre les images à partir de la démo parce
que la transparence est changé pour un fond noir sur ces images.

Bon maintenant que vous avez tout ce qu'il faut graphiquement pour ce tuto, passons à l'action!
Il y aura 2 events communs J'ai appelé le premier : Inventaire et le deuxième : RefreshInventaire.
Le premier servira à afficher l'inventaire quand on l'appelle via le menu, hé oui voila l'utilité du script pour
afficher des événements communs sur le menu! Et le deuxième servira à actualiser l'inventaire de sorte que
vous n'aurez pas besoin de fermer et de rouvrir l'inventaire pour voir si vous avez des nouveaux objets.
Premier Event

Spoiler:
nouvel inventaire Evenem10

Cette partie est pour déterminer si le menu doit être fermé ou ouvert puisqu'on utilise la même commande du
menu pour l'ouvrir ou le fermer. Si l'interrupteur InventaireOn est activé on ferme l'inventaire donc on efface
toute les images et on désactive l'interrupteur. Le contraire, on affiche l'inventaire et on active l'interrupteur. Wink
L'affichage de l'inventaire se passe après le "sinon".

Spoiler:
nouvel inventaire Evenem13

Donc l'interrupteur InventaireOn activé est pour indiquer que l'inventaire est ouvert. Ensuite le afficher image1
est pour afficher l'image de la base de l'inventaire.

Cette partie affiche l'image de la base de l'inventaire aux coordonnées indiquées. (celles
présentes sur ce screen feront apparaitre la base de l'inventaire dans le coin inférieur droit de l'écran. Les
variables EmplacementX et EmplacementY représentent l'emplacement où le premier item apparaitra.
La valeur EmplacementX est simplement «les coordonnéesX que vous avez mis pour la base» + 17
Celle de EmplacementY est »les coordonnéesY que vous avez mis pour la base« + 42
Comme vous pouvez le constater, EmplacementX a la même valeur que EmplacementY peu importe où vous
placerez la base de l'inventaire. Un bon moyen pour savoir si vous vous êtes trompé dans les calculs.
Finalement, le appeler script @i=0 sera utile plus tard, je vous l'expliquerai après le prochain screen.

Spoiler:
nouvel inventaire Evenem17
nouvel inventaire Evenem19
Premièrement je vais expliquer le principe. @i est simplement une variable que l'event utilise pour compter à
quel slot de l'inventaire il est rendu à afficher l'item et le chiffre. Donc @i augmente de 1 à chaque fois que la
boucle revient pour indiquer qu'il est rendu au slot suivant.

La condition que vous avez vu plus tôt Script @i < 21 signifie que tant que la valeur de @i est en dessous de 21
(nombre maximum de slot), la boucle continue pour afficher l'item suivant. Ensuite la condition Script @i == 1
signifie que si l'event est rendu au slot1 il affichera les éléments qu'on mettra après cette condition. :cheers:
J'ai décidé d'afficher les pommes dans le premier slot alors il faut faire afficher l'image de pomme qu'on a
découpé ou que je vous ai donné Wink. Les coordonnées de l'image seront définies avec les variables
EmplacementX et EmplacementY qu'on a défini plus tôt. La variable NombreObjet sert seulement à indiquer
combien vous avez d'objet. Ensuite la tonne de condition qui fait peut n'est en fait qu'une répétition... Elle sert
à indiquer que si la variable NombreObjet == X, l'image du chiffre X sera affichée.
Ex: Condition variable NombreObjet == 4 l'image du chiffre 4 sera affiché par dessus notre item qui a été
affiché plus tôt. Vous remarquez pas une similitude entre le code après Afficher les pommes et le code Afficher
les Champirgnons? Hé bien c'est presque pareil à l'exception de quelques petites choses :
L'image à afficher, la valeur de la variable NombreObjet et le numéro des images. Donc si vous voulez ajouter
plus d'objet vous devez copier le code contenant la tonne de condition variable NombreObjet == X. Les
modifications à apporter au code sont :
-Numéros d'images différent
-Image différente, SEULEMENT l'image de l'objet et non les images des chiffres (les images
après les condition variable NombreObjet == X) les N° d'image pour les chiffres doivent être différents des
autres images mais le N° d'image des chiffres d'un même objet doit être identique. Si vous ne comprenez pas,
regardez quels sont les numéros d'image sur le screen présenté ou voici une légende :
1: Base de l'inventaire
2: Image de l'objet "Pomme"
3: Chiffre indiquant combien d'objet "Pomme" possédé
4: Image de l'objet "Champignon"
5: Chiffre indiquant combien d'objet "Champignon" possédé.


***Important***
Les numéro de l'image est très important. Si l'image de la pomme a le même N° que la base de l'inventaire, il
remplacera l'image de la base. Vous comprenez? Vous pouvez aller voir le résumé des chiffres que j'ai fait
plus haut dans le tutoriel pour comprendre comment je les ai organisé pour éviter de se mélanger. *Ouf c'est
un long tuto en? C'est pas facile à expliquer non plus :cyclops:*

Bon maintenant j'explique la suite du screen présenté plus haut. La variable EmplacementX est additionnée de
32 (c'est le nombre de pixel entre chaque slot). Tadam! Cette seule commande permet aux items de se placer
à la bonne place automatiquement (si vous avez mis la bonne valeur initiale au début). En fait non il y a les 2
conditions juste en dessous qui permettent à la variable EmplacementY de changer de ligne quand elle arrive
au bout d'une ligne de l'inventaire. Puisqu'il y a 7 slots dans une ligne de l'inventaire, quand @i arrive à 7, la
variable EmplacementY est augmentée de 32 et la variable EmplacementX est diminuée de 224 pour revenir
au premier slot de la deuxième ligne. Même chose quand @i arrive à 14. Le "Sortir de la Boucle" après le
"sinon" est TRÈS important, car c'est grace à lui que l'event va sortir de sa boucle quand
l'inventaire est fini d'être créé. Sinon le jeu bug parce que les boucle n'arrêtent plus. affraid

Deuxième Event
Le deuxième event maintenant Very Happy!! Yay vous vous dites tous, on a encore des ***** réglages à faire. Mais
cet event sera beaucoup moins compliqué que le deuxième, si vous avez bien compris le premier. Parce qu'en
fait c'est le même event que le premier mais avec quelques petites différences.
1- Il n'y a pas de boucle puisqu'il est en processus parallèle donc il n'y a pas de "Sortir de la Boucle à la fin
2- Il y a un petit code de plus au début et un interrupteur de plus dans ce code.

Spoiler:
nouvel inventaire Evenem11
...
nouvel inventaire Evenem13
...
nouvel inventaire Evenem14

La partie rajoutée en haut est pour que les variables EmplacementX et EmplacementY ne reviennent pas aux
coordonnées du premier slot à chaque fois que la boucle revient (puisqu'il est en processus parallèle). Voilà
l'utilité de l'interrupteur ValeurRéinitialize, à chaque fois que la boucle arrive au 21e slot l'interrupteur
ValeurRéinitialize est désactivé de sorte que les variables EmplacementX et EmplacementY reviennent au
premier slot.

Donc en résumé voici le premier event au complet.
Spoiler:
nouvel inventaire Evenem20
nouvel inventaire Evenem17

Le Deuxième.
Spoiler:
nouvel inventaire Evenem15
nouvel inventaire Evenem16

Si vous avez des questions par rapport au fonctionnement ou des problèmes n'hésitez pas à les poser! Very Happy
J'espère que ça vous sera utile.
Nathän
Nathän
Membre

Nombre de messages : 165
Age : 27
Localisation : euh c'est une bonne question , c'est ou nul part ?
Distinction : aucune
Date d'inscription : 03/09/2008

nouvel inventaire Empty Re: nouvel inventaire

le Dim 7 Mar 2010 - 13:35
j'avais déjà vu un tutoriel de ce genre, si on fait un jeu avec autant d'objet que chez Mario ça marche mais le mien contient déjà des centaine d'objet ce qui rend cet inventaire là .... disons très long et pour un résultat qui ne correspond pas vraiment à ce que je cherche ^^

sinon merci pour l'aide ^^ j'utiliserai ça si personne n'y arrive en script ^^

Nathän
Nathän
Nathän
Membre

Nombre de messages : 165
Age : 27
Localisation : euh c'est une bonne question , c'est ou nul part ?
Distinction : aucune
Date d'inscription : 03/09/2008

nouvel inventaire Empty Re: nouvel inventaire

le Jeu 11 Mar 2010 - 16:19
désolé du double post mais je up le topic car j'aimerais savoir si quelqu'un s occupe de mon script

Merci d'avance ^^
Dudu'
Dudu'
Staffeux retraité

Nombre de messages : 2060
Age : 28
Distinction : Apprenti KGB-boy en avenir
[Coco' Smile]
Hamsterphile de service ^^
[Balby' le Fake]
Grand prof de la MA
[Skillo]
Ce grand programmateur, mon coeur, ma vie ! [Hamu']
Date d'inscription : 22/06/2009

nouvel inventaire Empty Re: nouvel inventaire

le Jeu 11 Mar 2010 - 18:22
désolé j'ai pas us le temps!!!
Nathän
Nathän
Membre

Nombre de messages : 165
Age : 27
Localisation : euh c'est une bonne question , c'est ou nul part ?
Distinction : aucune
Date d'inscription : 03/09/2008

nouvel inventaire Empty Re: nouvel inventaire

le Jeu 11 Mar 2010 - 20:08
pas de problème ^^ En même temps si plusieurs personnes pouvaient s'en occupé ce ne serait pas plus mal ^^
ZangtherOld
ZangtherOld
Membre

Nombre de messages : 1711
Date d'inscription : 07/08/2009

nouvel inventaire Empty Re: nouvel inventaire

le Jeu 11 Mar 2010 - 21:03
Attention aux double post, édite au lieu de double poster ( copie de l'ancien message, suppression puis nouveau message avec le contunu de l'ancien + l'edit )
Merci.
Balbereith
Balbereith
Staffeux retraité

Nombre de messages : 4129
Age : 26
Localisation : dans l'ombre...
Distinction : Péripatéticienne à temps perdu
Helly n°666 [Coco' ;D]
mon ptit balbounet p'tit jardinier en herbe(les râteaux ça le connait) [tonton Adurna]
Cultivateur professionnel de la commu' (il a de bons outils en de nombreux exemplaires nouvel inventaire 522164 ) [Coco' Smile]
Date d'inscription : 13/05/2009

nouvel inventaire Empty Re: nouvel inventaire

le Ven 19 Mar 2010 - 20:43
Résolu ? Dans une semaine, je sanctionne, s'il y a pas de relance ou de réponse, résolvant le problème.
Nathän
Nathän
Membre

Nombre de messages : 165
Age : 27
Localisation : euh c'est une bonne question , c'est ou nul part ?
Distinction : aucune
Date d'inscription : 03/09/2008

nouvel inventaire Empty Re: nouvel inventaire

le Ven 19 Mar 2010 - 21:49
Berka m'a dit qu'il allait s'en occupé, si dans une semaine il n'a rien poster je lui demanderai de ma l'envoyer par MP et tu pourras locké ^^

Balbereith : Pas de problème ^^
mister.darcy
mister.darcy
Membre

Nombre de messages : 53
Distinction : aucune
Date d'inscription : 13/02/2009

nouvel inventaire Empty Re: nouvel inventaire

le Dim 4 Avr 2010 - 1:58
si tu a la réponse pourrait tu la poster s'il-vous plait?
Nathän
Nathän
Membre

Nombre de messages : 165
Age : 27
Localisation : euh c'est une bonne question , c'est ou nul part ?
Distinction : aucune
Date d'inscription : 03/09/2008

nouvel inventaire Empty Re: nouvel inventaire

le Dim 4 Avr 2010 - 10:04
désolé je n'ai pas encore eu la réponse ^^
mister.darcy
mister.darcy
Membre

Nombre de messages : 53
Distinction : aucune
Date d'inscription : 13/02/2009

nouvel inventaire Empty Re: nouvel inventaire

le Dim 4 Avr 2010 - 19:34
ok :P
Berka
Berka
Administrateur

Nombre de messages : 1832
Age : 29
Localisation : Paris
Distinction : rubyste déglingué
9ème dan en scripting-no-jutsu

Nouveau Justine Beber ;P
Date d'inscription : 16/12/2007
http://rpgruby.olympe-network.com

nouvel inventaire Empty Re: nouvel inventaire

le Dim 4 Avr 2010 - 20:13
Comment distingue tu tes objets ?
Les armes sont-elles considérées comme des objets ?
Nathän
Nathän
Membre

Nombre de messages : 165
Age : 27
Localisation : euh c'est une bonne question , c'est ou nul part ?
Distinction : aucune
Date d'inscription : 03/09/2008

nouvel inventaire Empty Re: nouvel inventaire

le Dim 4 Avr 2010 - 23:19
ben les armes sont les même que celle de la BDD, l'inventaire sépare juste les différentes catégories d'objets pour plus de clarté; pour ce qui est des armures elles seront séparer en deux (casque bouclier et plastron d'un coté, et accessoire dans une autres parties). En fait dans les armes restent dans la catégorie arme de la BDD mais il faut quand même préciser leur catégorie dans l'inventaire via les commentaires.

Si tu as besoin de plus de précision n'hésite pas

Nathän
Nathän
Nathän
Membre

Nombre de messages : 165
Age : 27
Localisation : euh c'est une bonne question , c'est ou nul part ?
Distinction : aucune
Date d'inscription : 03/09/2008

nouvel inventaire Empty Re: nouvel inventaire

le Dim 9 Mai 2010 - 10:28
Je up pour savoir si berka pourrais me donner des nouvelles^^
Coco'
Coco'
Staffeux retraité

Nombre de messages : 6577
Age : 26
Localisation : Nord/Douai
Distinction : EL DICTATOR COCO'
Coco-Dieu en puissance

nouvel inventaire Magikarpe Grand gourou suppléant de la secte des MAGIKARP
Leader charismatique des 2beStaffieux

N°1 du forum
Président, vice-présidents et membres honoraires de la cour suprême du forum
Président de l'association des grosses distinctions CMB
Date d'inscription : 02/07/2008
https://www.rpgmakervx-fr.com

nouvel inventaire Empty Re: nouvel inventaire

le Lun 28 Juin 2010 - 13:08
Dudu'
Dudu'
Staffeux retraité

Nombre de messages : 2060
Age : 28
Distinction : Apprenti KGB-boy en avenir
[Coco' Smile]
Hamsterphile de service ^^
[Balby' le Fake]
Grand prof de la MA
[Skillo]
Ce grand programmateur, mon coeur, ma vie ! [Hamu']
Date d'inscription : 22/06/2009

nouvel inventaire Empty Re: nouvel inventaire

le Mer 1 Sep 2010 - 23:12
du nouveau berber?
Revenir en haut
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum