(1) 2 3 4 ... 9 »


Mode achat dans game blender
Fou Furieux du Clan
Inscrit:
22/05/2010 11:23
Post(s): 176
Suite au récentes et multiples modification de mon menu d'achat, il est temps de faire faire des achats !

Tout ceci est en 2.49B

- J'ai crée un inventaire consultable ou on peut voir le nombre de coques, armements, etc. acheté.

- un bouton, à côté de l'article est présent et sert à acheter l'objet concerné.

- Il y a aussi un compteur ou l'on a les fonds initiaux et un autre le prix final.

Tout ceci est en texture text (propriety game blender).

Quand on ajoute des pièces à la liste d'achat, il faut :

- Qu'il soit ajouté 100 dans le compteur prix final.
- Que la pièce soit enregistré dans, ce que l'on m'a conseillé, un script python "dictionnaire".
- Que dans mon inventaire, il y soit affiché "piece", la quantité "1" et un bouton " X " pour annuler cet achat.

Concernant ce dictionnaire, je dois l'expérimenter. Je demandrais si nécessaire.

Je pense avoir été clair. Pour le compteur, j'ai bêtement fais une condition "mouse over" et "left boutton" sur le boutton "acheter" et un effet propriety, nommé Text et "assign 100". Mais ça ne fonctionne pas, même avec "add".

Merci de vos lumière, et que l'empereur vous bénissent.

Contribution le : 21/10/2010 15:07
Créer un fichier PDF de la contribution Imprimer


Re: Mode achat dans game blender
OverdOzed
Inscrit:
24/07/2008 00:45
De Paris
Post(s): 3447
Citation :
Je pense avoir été clair. Pour le compteur, j'ai bêtement fais une condition "mouse over" et "left boutton" sur le boutton "acheter" et un effet propriety, nommé Text et "assign 100". Mais ça ne fonctionne pas, même avec "add".

Ta property Text est, comme son nom l'indique, du texte, et non un nombre. Tu ne peux donc pas lui ajouter 1, ni 100. C'est comme si tu voulais faire "bonjour" + 7.5 = ??
Ça marche pas, et "100" + 1, ça ne marche pas non plus car "100" n'est pas égal à 100 en informatique.

En ce qui concerne le dictionnaire Python, je te le conseille aussi. Il permet de pouvoir ajouter des éléments à ton menu en ne modifiant que le dictionnaire. Ajoutes-y une ligne, et un objet de plus sera en vente. Bien sûr, il faut que ton menu soit créé en conséquence pour que ça marche, ça se fera pas tout seul.
Mais c'est le principe du template : il suffit de modifier les paramètres pour tout modifier.

Bonne chance donc pour ce menu...

Contribution le : 21/10/2010 16:41
_________________
Tuto MaPZone
Créer un fichier PDF de la contribution Imprimer


Re: Mode achat dans game blender
Fou Furieux du Clan
Inscrit:
22/05/2010 11:23
Post(s): 176
Bonjour.

Pour le compteur d'argent, j'ai relus le tuto "creer un hud" sur ce site. Je vais enquêter mais je pense avoir la solution.

Merci, Bobibou, je vais tenter de faire quelquechose d'original même si il ne sera pas parfait...

Contribution le : 22/10/2010 10:51
_________________
Tuer l'alien, écraser le mutant, bruler l'hérétique.
Créer un fichier PDF de la contribution Imprimer


Re: Mode achat dans game blender
Fou Furieux du Clan
Inscrit:
02/11/2008 19:26
Post(s): 238
Pour le compteur d'argent, le plus simple serait de passer par un script.

Tu peux par exemple créer une property qui serait le nombre d'exemplaires d'un objet, pilotée par les logic bricks, et avec le script tu fais ce nombre multiplié par son prix, tu additionnes le résultat de chaque objet et tu rentres ta valeur dans la property "Text" avec str().

Et même chose que Bobibou : dictionnaire !

@+

Contribution le : 22/10/2010 18:09
_________________
Guillaume
Créer un fichier PDF de la contribution Imprimer


Re: Mode achat dans game blender
Fou Furieux du Clan
Inscrit:
22/05/2010 11:23
Post(s): 176
Bonjour.

J'ai régler le problème de compteur d'argent, je devais mettre soit "int" ou "float".

Gui36fr, ce que tu m'écris là m'interesses :
Maintenant que j'ai résolut le souci ci-dessus, je me pose 2 questions :

- Je projettes de faire plusieurs versions de coques ainsi que d'armement, etc. Et le prix sera changent, bien entendu.

Question 1 : Puis-je faire cela comme une sorte de "légende" (ex : coque v1 = 1000$, coque 2 = 2000$) et additionner les différents achats.

- Vu que je vais faire plusieurs versions de mes pièces, une fois que j'aurai passer d'un niveau de technologie, il faut remplacer les ancienne versions par des nouvelles.

Question 2 : Comment faire cela dans le dictionnaire ? En faire plusieurs ? Et pour les "textures text" faire de même que dans la question 1 ?

Merci pour vos réponse très "instructifs".

Contribution le : 23/10/2010 15:29
_________________
Tuer l'alien, écraser le mutant, bruler l'hérétique.
Créer un fichier PDF de la contribution Imprimer


Re: Mode achat dans game blender
Fou Furieux du Clan
Inscrit:
02/11/2008 19:26
Post(s): 238
La "légende" comme tu dis, et bien c'est un dictionnaire

Je vais t'expliquer le principe : un dictionnaire est une sorte de liste, une liste composé d'éléments. Tous ces éléments sont entrés dans le dictionnaire comme une liste, sauf que ce ne sont pas des crochets mais des accolades, et ces éléments sont séparés par une virgule.
Chaque élément comporte une étiquette et d'une variable. L'étiquette correspond à l'indice de la variable ; l'étiquette peut être de n'importe quel type sauf une liste ou un dictionnaire, la variable peut être de n'importe quel type.
On déclare l'élément par son étiquette puis sa variable séparés par 2 points (:).
On appelle cette variable comme pour une liste : dictionnaire[etiquette]

Petit exemple :
>>>dico = {"e1" : 5, "e2" : 6, "ch" : "bonjour", "pos" : [56, -45], 7 : 8, 12 : "douze"}
>>>print(dico["e2"])
6
>>>print(dico[7])
8
>>>print(dico["pos"])
[56, -45]
>>>print(dico[12])
douze

Tu peux de cette manière lister tes prix :
prix = {"casque" : 100, "fusil" : 20000, "gilet" : 250}

Tu peux également ajouter un élément en faisant directement
prix["balles_M16"] = 50
Si l'élément existe déjà, sa valeur sera changée.

Pour supprimer un élément, il faut utiliser del :
del dico["casque"]

Et un dictionnaire ce parcours comme une liste :
>>>dico = {"a":1, "b":2, "c":3}
>>>if "c" in dico:
...	print(dico["c"])
...
3
>>>for element in dico:
...	print(dico[element], " -> ", element)
...
1 -> a
2 -> b
3 -> c

Avec ça tu as tout ce qu'il te faut pour faire ce que tu veux

Pour chaque nouvelle version, tu supprimes et tu ajoutes !

Voila

Contribution le : 23/10/2010 16:27
_________________
Guillaume
Créer un fichier PDF de la contribution Imprimer


Re: Mode achat dans game blender
Fou Furieux du Clan
Inscrit:
22/05/2010 11:23
Post(s): 176
Extramissime !

Cependant, en tenant compte de ce que tu as écris, puis-je faire ceci :

- Au démarrage, le dico "pièce" est vide.

- Quand je clique sur le bouton "acheter coque 1", une commande fait ajouter l'objet coque 1 dans le dictionnaire.

- Si j'achetes d'autres pièces, faire la même opération pour ceux-ci.

- Á la fin, je me retrouve, par exemple, avec un dico qui contient une coque et un canon.

- Dans un menu qui permet d'assembler le navire, j'aurai dans ma liste coque 1 et canon 1. Quand je les aurais placés, il seront supprimés du dico.

- Si j'achete une 3e pièce mais que je ne l'utilise pas, il sera toujour présent, ok. Mais sera-t-il toujours présent dans le dico une fois que j'ai sauvegarder la partie ou un "profil" joueur (je prévois de faire cela aussi).

Je peux avoir ce résultat ?

Contribution le : 24/10/2010 11:08
Créer un fichier PDF de la contribution Imprimer


Re: Mode achat dans game blender
Fou Furieux du Clan
Inscrit:
22/05/2010 11:23
Post(s): 176
Hé bien, pas de réponse

Contribution le : 28/10/2010 18:10
Créer un fichier PDF de la contribution Imprimer


Re: Mode achat dans game blender
Fou Furieux du Clan
Inscrit:
02/11/2008 19:26
Post(s): 238
Heu... Si c'est par rapport à ta question précédente, oui tu peux obtenir ce résultat.

Tu peux créer un dictionnaire pour ton magasin et un autre pour les objets possédés.
Pour enregistrer le dictionnaire, passe par le module pickle, il te permettra de retrouver ton dictionnaire directement en faisant dico = pickle.load(fichier)
Utilise aussi pickle pour toutes les autres données.

Autre chose, lorsque tu "supprimes" un élément du dictionnaire parce que tu l'as placé, n'oublie pas de créer une liste de tout tes éléments placés pour les remplacements ou les annulations à effectuer

Si t'as d'autres questions, au passage...


Contribution le : 28/10/2010 18:49
_________________
Guillaume
Créer un fichier PDF de la contribution Imprimer


Re: Mode achat dans game blender
Fou Furieux du Clan
Inscrit:
22/05/2010 11:23
Post(s): 176
J'ai lu ton intervention au sujet du module pickle :

Voici ce que tu écris au sujet du chargement du dico :

import pickle  

fichier = open("NomDuFichier.extension", "rb")  

variable_1 = pickle.load(fichier) 
variable_2 = pickle.load(fichier)  

print(variable_1) 
print(variable_2) 
print(variable_2 + 10.75)  

fichier.close()


Je supposes que je ne dois pas écrire que "pickle.load(fichier)" dans mon cas. Si ?

Et pour l'enregistrement d'objets, dois-je écrire des commandes comme "getcurrent controller" ou autre ?

Ensuite, j'ai fais ceci pour mon jeu :

Un dico vide pour le départ :

piece = { }


l'ajout de pièce au dico (c'est là que ça va pas) :

piece["coque 1"] = ("OBcoque 1")
print (piece) # vérifie par ligne de commande si enregistré dans dico

Contribution le : 29/10/2010 10:28
Créer un fichier PDF de la contribution Imprimer



 Haut   Précédent   Suivant
(1) 2 3 4 ... 9 »




Enregistrer votre réponse
Compte*
Nom   Mot de passe   Authentification
Message:*



[Recherche avancée]



Sujets récemment répondus
Forums Sujets Réponses Lus Dernières contributions
[WIP] et travaux terminés [WIP] La gabarre '' Le Gros Ventre''    [1][2][3]...[10] 97 17476 Hier 17:59:57
blend74 
Questions & Réponses [résolu] Os et FBX 3 223 Hier 16:15:38
zeromeetsinfinity 
Questions & Réponses Pousser le pc au max 2 57 Hier 13:20:28
Bibi09 
Moteur de jeu GameBlender et alternatives [non résolu] Cs (vaisseau)    [1][2][3]...[56] 559 170640 Hier 11:06:51
Redstar 
Questions & Réponses texture procédurale qui suis une plane 2 89 Hier 10:19:22
Many 
Questions & Réponses Vertex groups qui disparaissent 0 27 Hier 09:09:22
Melodicpinpon 
Questions & Réponses MeasureIt et dpi 4 900 Hier 09:02:36
jcnouveau 
Questions & Réponses De Maya vers Blender concordance de axes. 9 122 19/10 17:04:59
Bibi09 
Questions & Réponses Armature en IK sur squelette complexe 0 39 19/10 16:40:33
Melodicpinpon 
Hors Sujet !! les tutos de Moonboots    [1][2][3]...[22] 214 21186 19/10 10:54:10
moonboots 
Questions & Réponses [résolu] Enlever "snapping" dans la timeline ? 6 114 19/10 09:47:12
CBY 
[WIP] et travaux terminés [terminé] Appli Blender de Poche en FR    [1][2][3] 29 1165 18/10 19:14:29
moonboots 
Questions & Réponses Débutant Blender, temps de travail pour un rendu ? 2 92 18/10 11:37:55
Jalis 
Questions & Réponses [WIP] Dragster-Tracteur pour Bécassine    [1][2][3] 24 5736 17/10 18:37:48
Laorz 
Graphisme alternatif faire de la bd avec blender    [1][2][3]...[13] 123 9140 17/10 14:20:26
blend74 
Questions & Réponses Bug texture sur plane avec bevel 1 199 16/10 08:09:13
Laorz 
Questions & Réponses [terminé] Supprimer le lien d'un objet entre 2 scènes 4 147 15/10 12:52:21
Horemheb 
Questions & Réponses Blender kit : barre d'assets 0 94 15/10 09:26:52
Sphere3d 
Questions & Réponses MeasureIt et dpi 3 140 15/10 08:39:25
Cdric 
Questions & Réponses Comment faire la symétrie d’une multitude d’éléments.    [1][2] 13 76460 14/10 23:35:18
meltingman 

Qui est en ligne
187 utilisateur(s) en ligne (dont 75 sur Forums)

Membre(s): 7
Invité(s): 180


LinaDesimo, KeartlandKristie, Tara361433, VelascoDarby, SikoraQuinton, LibbyKean, LutherEleanore, plus...
Nouveaux membres
MaeCarmona 21/10/2021
Andy82G47 21/10/2021
HenrySkers 21/10/2021
DarinRot85 21/10/2021
Domenic96D 21/10/2021
DanaSalgad 21/10/2021
BriannePal 21/10/2021
PKTMerri40 21/10/2021
AdrianHart 21/10/2021
BobbieKohl 21/10/2021
Dernier Ajout
2020-09-24.jpg

Evènements à venir
Nov 18
Anniversaire de RichDeg
Dec 29
Anniversaire d'ebrain
Jan 8
BUG de Lyon
plus 247 plus d'élément(s)
 Par Mickaël Guédon [ebrain] © 2003-2021 The Blender Clan - hébergé par TuxFamily - Site déclaré à la CNIL sous le numéro 1155445