Worldedit
  Worldedit
Le site sur l'éditeur de warcraft 3 !
 
  FAQFAQ   RechercherRechercher   Liste des MembresListe des Membres    Groupes d'utilisateursGroupes d'utilisateurs   medals.phpMédailles   S'enregistrerS'enregistrer 
 ProfilProfil   Se connecter pour vérifier ses messages privésSe connecter pour vérifier ses messages privés   ConnexionConnexion 
  FAQFAQ World Editor   UploadUploader une map ou une image    UploadAjouter sa map à l'annuaire   UploadConsulter l'annuaire

Système de banque

 
Poster un nouveau sujet   Répondre au sujet    Worldedit Index du Forum -> Tutoriels
Voir le sujet précédent :: Voir le sujet suivant  
Auteur Message
 Titiplouf11
Ptit Nouveau


Inscrit le: 12 Nov 2009
Messages: 4
Sujets: 1
Spécialité en worldedit: déclencheur


MessagePosté le: 14/11/09 13:18    Sujet du message: Système de banque Citer

Ce tuto va vous permettre de créer votre propre banque utile pour les "LOAP". Ça vous servira à placer et retirer de l'or de votre compte.
Je vais aussi vous montrer comment consulter votre compte.

I/ Les variables
Bon pour commencer on va créer 8 variables.

Secret:

Nom de variable----------Type de variable-----------|Valeur initiale
---------------------------------------------------------------------------------
Banque -----------------Réel Déploiement... -------- 0 (Par défaut)
Banque_consul -------- Entier Déploiement... ------- 0 (Par défaut)
date ------------------- Entier ------------------------ 1
Gold ------------------ Réel Déploiement... -------- 0 (Par défaut)
Gold_retirer ------------ Entier Déploiement... ------ 0 (Par défaut)
golds_placer ---------- Entier Déploiement... ------ 0 (Par défaut)
Player ---------------- Joueur Déploiement... ------ Aucun
Player_groupe -------- Groupe joueur Dépl... -------Vider le groupe de j.
Enterbank---------------Booléén Déploiement ---------False (Par défaut)
---------------------------------------------------------------------------------



II/ Les déclencheurs

Maintenant, on va créer le déclencheur pour définir des valeurs aux 3 variables (Gold , Player , Player_groupe )
Secret:

Gui:
Trigger:
Evénements
Temps - Every 0.10 seconds game time
Conditions
Actions
Set Gold[1] = (Real((Joueur 1 (Rouge) Or actuel)))
Set Player[1] = Joueur 1 (Rouge)
Collapse Groupe joueur - Add Joueur 1 (Rouge) to Player_groupe[1]



On fait la même chose pour chaque joueur.( [1] est égal au numéro du joueur, 1 pour Joueur 1 (rouge) )

Là, on va faire le déclencheur pour placer de l'argent sur le compte:
Secret:

Gui:
Trigger:
Evénements
Joueur - Joueur 1 (Rouge) types a chat message containing -placer  as Une sous-chaîne
Conditions
(Substring((Entered chat string), 1, 8)) Egal à -placer
Actions
Set golds_placer[(Player number of (Triggering player))] = (Integer((Substring((Entered chat string), 9, 20))))
Collapse If (All Conditions are True) then do (Then Actions) else do (Else Actions)
Si - Condition
Enterbank[(Player number of (Triggering player)) Egal à TRUE
Collapse Alors - Actions
Collapse If (All Conditions are True) then do (Then Actions) else do (Else Actions)
Collapse Si - Conditions
(Real((Substring((Entered chat string),9,20)))) Inférieur ou égal à Gold[(Player number of (Triggering player))]
Collapse Alors - Actions
Joueur - Set Player[(Player number of (Triggering player))]Or actuel to ((Player[(Player number of (Triggering player))] Or actuel) - golds_placer[(Player number of (Triggering player))])
Set Banque[(Player number of (Triggering player))] = (Banque[(Player number of triggering player))] + (Real((Substring((Entered chat string), 9, 20)))))
Partie - Display to Player_groupe[(Player number of (Triggering player))] the text: Votre argent est bien placer.
Collapse Sinon - Actions
Partie - Display to Player_groupe[(Player number of (Triggering player))] the text: Vous n'avez pas asser d'argent!
Collapse Sinon - Actions
Partie - Display to Player_groupe[(Player number of (Triggering player))] the texte : Vous devez être a la banque pour effectuer des transactions !



L'évènement peut être ajouté pour chaque joueur ; il suffit de copier l'évènement et de remplacer Joueur 1 (Rouge) par Joueur2 (Bleu) par exemple.
La condition est très importante car elle vérifie si il y a bien le message "-placer" entre la 1ère et 8ème lettre entrée par le joueur car si on écrivait 123 -placer il y aurait des bugs.
On vérifie aussi que le joueur est bien à la banque et pas autre part.
Et on définit la somme voulu par le joueur à la variable "Golds_palcer"[numéro du joueur marquant le message]
Si : La somme à placer demandé par le joueur est Inférieure ou égale à son or actuel alors:
On accepte la demande et on place l'argent sur son compte
On définit bien sur une variable " banque " qui correspond à son compte
Si : La somme à placer demander par le joueur est SUPÉRIEURE à son or actuel alors
On lui envoie un message d'erreur et on annule le placement

Maintenant on va créer le déclencheur pour retirer l'argent du compte.

Secret:

Gui:
Trigger:
Evénements
Joueur - Joueur 1 (Rouge) types a chat message containing -retirer  as Une sous-chaine
Conditions
(Substring((Entered chat string), 1, 9)) Egal à -retirer
Actions
Set golds_retirer[(Player number of (Triggering player))] = (Integer((Substring((Entered chat string), 10, 20))))
Collapse If (All Conditions are True) then do (Then Actions) else do (Else Actions)
Si - Condition
Enterbank[(Player number of (Triggering player)) Egal à TRUE
Collapse Alors - Actions
Collapse If (All Conditions are True) then do (Then Actions) else do (Else Actions)
Collapse Si - Conditions
(Real((Substring((Entered chat string),10,20)))) Inférieur ou égal à Banque[(Player number of (Triggering player))]
Collapse Alors - Actions
Joueur - Add Gold_retirer[(Player number of (Triggering player))] to Player[(Player number of (Triggering player))] Or actuel
Set Banque[(Player number of (Triggering player)) = (Banque[(Player number of triggering player))] - (Real((Substring((Entered chat string), 10, 20)))))
Partie - Display to Player_groupe[(Player number of (Triggering player))] the text: Votre retrait est effectué..
Collapse Sinon - Actions
Partie - Display to Player_groupe[(Player number of (Triggering player))] the text: Il n'y a pas asser d'argent sur votre compte pour effectuer la transaction!
Collapse Sinon - Actions
Partie - Display to Player_groupe[(Player number of (Triggering player))] the text : Vous devez etre a la banque pour effectuer des transactions !


L'évènement peut etre ajouté pour chaque joueur ; il suffit de copier l'évènement et de remplacer Joueur 1 (Rouge) par Joueur 2 (Bleu) par exemple
La condition est très importante car elle vérifie si il y a bien le message "-retirer" entre la 1ère et 9ème lettre entrée par le joueur.
Là, on definit la somme voulue par le joueur à la variable "Golds_retirer"[numeros du joueur marquant le message]
Si : La somme à retirer demander par le joueur est Inférieure ou égale à son or actuel sur son compte alors
On donne la somme voulue et on diminue l'argent du compte
Si : La somme à retirer demandé par le joueur est SUPÉRIEURE à l'or de son compte alors:
On lui envoie un message d'erreur et on annule le retrait.

Maintenant on va voir comment indiquer au joueur l'argent de son compte SANS UTILISER LE BOIS !!
Je veux dire par là, sans utiliser l'unité de bois (par défaut) qui pourra être utilisé autre part dans votre map (point d'honneur par exemple)
Voila le déclencheur à faire :
Secret:

Gui:
Trigger:
Evénement
Joueur 1 (Rouge)  types a chat message containing -consulter as Résultat équivalent
Condition
Actions
Set Banque_consul[(Player number of (Triggering player))] = (integer(Banque[(Player number of (Triggering player))]
Partie - Display to Player_groupe[(Player number of (Triggering player))] the text: (Vous avez  +((String(Banque_consul[(Player number of (Triggering player))]+  pièces sur votre compte.))



Vous pouvez rajouter la condition:
Secret:

Gui:
Trigger:
Condition
Enterbank[(Player number of (Triggering player))] Egal à TRUE


Pour obliger la personne à être a la banque pour consulter son compte.

Bon. Il ne nous reste plus que 2 déclencheurs à créer ; montrer que l'on est à la banque et l'autre pour l'inverse.
Il faut juste créer une région (Bank enter) pour définir la banque.
Elle doit être placée dans l'endroit que vous considérez comme la banque.

Voila le déclencheur pour entrer dans la banque :
Secret:

Gui:
Trigger:
Evénements
Unité - A unit enter Bank enter <gen>
Conditions
Actions
Collapse If (All Conditions are True) then do (Then Actions) else do (Else Actions)
Collapse Si - Conditions
((Entering unit) is Un héros) Egal à TRUE
Collapse Alors - Actions
Set Enterbank[(Player number of (Triggering player))] = TRUE
Collapse Sinon - Actions



Là, dés que l'on entre, la variable nous identifie comme dans la banque.

Voici le contraire:
Secret:

Gui:
Trigger:
Evénements
Unité - A unit leaves Bank enter <gen>
Conditions
Actions
Collapse If (All Conditions are True) then do (Then Actions) else do (Else Actions)
Collapse Si - Conditions
((Leaving unit) is Un héros) Egal à TRUE
Collapse Alors - Actions
Set Enterbank[(Player number of (Triggering player))] = FALSE
Collapse Sinon - Actions



Voila je vous ai tout dit.
Si vous voulez des précisions, me signaler des bugs,des ameliorations, ou des erreurs de rédaction merci de me le dire.

II/ EN CREATION
--> Un système de gain d'argent par intérêt.
Voilà ma map bien expliquée :
MAP : Télécharger la map
_________________


Dernière édition par Titiplouf11 le 30/11/09 18:42; édité 12 fois
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé
 shiryu
Membre honoraire


Inscrit le: 05 Mar 2008
Messages: 364
Sujets: 26
Spécialité en worldedit: Faire apparaitre des démons en masse


MessagePosté le: 22/11/09 19:24    Sujet du message: Citer

Euh,je crois qu'il y a des fautes d'orthographe(non sérieux???)
_________________
Choisissez votre camp:

Le jugement dernier approche!
Lord of Hell 2
Si vous avez aimé ces maps,n'hésitez pas à participer à mon travail!
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé Envoyer l'e-mail Visiter le site web du posteur
 Ayane
Bot administrateur


Inscrit le: 17 Sep 2007
Messages: 2012
Sujets: 49

Médailles: 2 (En savoir plus...)
Ayane (Quantité : 1) Rédacteur de tuto #1 (Quantité : 1)

MessagePosté le: 22/11/09 22:32    Sujet du message: Citer

Ce qui est toujours marrant dans les cartes qui implémentent un système comme celui-ci dans son état actuel, c'est de mettre en paramètre des nombres négatifs.
Exemple simple:
-give player1 -50000
_________________
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé MSN Messenger
 Doubotis
Membre honoraire


Inscrit le: 10 Mai 2008
Messages: 246
Sujets: 15
Spécialité en worldedit: Worldediter ²


MessagePosté le: 22/11/09 23:03    Sujet du message: Citer

Auquel cas il suffit de faire passer l'argument en absolue pour que le problème soit réglé.
_________________


Soigner est la plus noble tâche que l'humanité puisse accomplir.
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé
 Rommstein60
MODÉRATEUR À LA RETRAITE


Inscrit le: 23 Aoû 2007
Messages: 4767
Sujets: 136
Spécialité en worldedit: Keskesapeutfout'
Médailles: 1 (En savoir plus...)
Rédacteur de tuto #1 (Quantité : 1)

MessagePosté le: 27/11/09 21:37    Sujet du message: Citer

Salut, déjà première grosse remarque : corrige toutes les fautes d'orthographe, aussi bien dans le texte que dans les déclencheurs, après on verra si d'autres points ne vont pas...
_________________
Leçon n°1 du WorldEdit : « Le violet > Troll-Brain »
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé
 Titiplouf11
Ptit Nouveau


Inscrit le: 12 Nov 2009
Messages: 4
Sujets: 1
Spécialité en worldedit: déclencheur


MessagePosté le: 28/11/09 16:22    Sujet du message: ERREUR Citer

LA je croi que j'ai tout corriger
_________________
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé
 shiryu
Membre honoraire


Inscrit le: 05 Mar 2008
Messages: 364
Sujets: 26
Spécialité en worldedit: Faire apparaitre des démons en masse


MessagePosté le: 28/11/09 16:29    Sujet du message: Citer

Nope,c'est loin d'être tout corrigé(mode gros lourd OFF)
PS:Télécharge firefox,il corrige les fautes d'orthographes
_________________
Choisissez votre camp:

Le jugement dernier approche!
Lord of Hell 2
Si vous avez aimé ces maps,n'hésitez pas à participer à mon travail!
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé Envoyer l'e-mail Visiter le site web du posteur
 Bleeded.Heart
Membre actif


Inscrit le: 15 Nov 2009
Messages: 104
Sujets: 2



MessagePosté le: 28/11/09 18:17    Sujet du message: Re: Systeme de banque Citer

Titiplouf11 a écrit:
Ce tuto va vous permettre de créer votre propre banque utile pour les "LOAP". Ça vous servira à placer et retirer de l'or de votre compte.
Je vais aussi vous montrer comment consulter votre compte.

I/ Les variables
Bon pour commencer on va créer 8 variables.

Secret:

Nom de variable----------Type de variable-----------|Valeur initiale
---------------------------------------------------------------------------------
Banque -----------------Réel Déploiement... -------- 0 (Par défaut)
Banque_consul -------- Entier Déploiement... ------- 0 (Par défaut)
date ------------------- Entier ------------------------ 1
Gold ------------------ Réel Déploiement... -------- 0 (Par défaut)
Gold_retirer ------------ Entier Déploiement... ------ 0 (Par défaut)
golds_placer ---------- Entier Déploiement... ------ 0 (Par défaut)
Player ---------------- Joueur Déploiement... ------ Aucun
Player_groupe -------- Groupe joueur Dépl... -------Vider le groupe de j.
Enterbank---------------Booléén Déploiement ---------False (Par défaut)
---------------------------------------------------------------------------------



II/ Les déclencheurs

Maintenant, on va créer le déclencheur pour définir des valeurs aux 3 variables (Gold , Player , Player_groupe )
Secret:

Gui:
Trigger:
Evénements
Temps - Every 0.10 seconds game time
Conditions
Actions
Set Gold[1] = (Real((Joueur 1 (Rouge) Or actuel)))
Set Player[1] = Joueur 1 (Rouge)
Collapse Groupe joueur - Add Joueur 1 (Rouge) to Player_groupe[1]



On fait la même chose pour chaque joueur.( [1] est égal au numéro du joueur, 1 pour Joueur 1 (rouge) )

Là, on va faire le déclencheur pour placer de l'argent sur le compte:
Secret:

Gui:
Trigger:
Evénements
Joueur - Joueur 1 (Rouge) types a chat message containing -placer  as Une sous-chaîne
Conditions
(Substring((Entered chat string), 1, 8)) Egal à -placer
Actions
Set golds_placer[(Player number of (Triggering player))] = (Integer((Substring((Entered chat string), 9, 20))))
Collapse If (All Conditions are True) then do (Then Actions) else do (Else Actions)
Si - Condition
Enterbank[(Player number of (Triggering player)) Egal à TRUE
Collapse Alors - Actions
Collapse If (All Conditions are True) then do (Then Actions) else do (Else Actions)
Collapse Si - Conditions
(Real((Substring((Entered chat string),9,20)))) Inférieur ou égal à Gold[(Player number of (Triggering player))]
Collapse Alors - Actions
Joueur - Set Player[(Player number of (Triggering player))]Or actuel to ((Player[(Player number of (Triggering player))] Or actuel) - golds_placer[(Player number of (Triggering player))])
Set Banque[(Player number of (Triggering player))] = (Banque[(Player number of triggering player))] + (Real((Substring((Entered chat string), 9, 20)))))
Partie - Display to Player_groupe[(Player number of (Triggering player))] the text: Votre argent est bien placer.
Collapse Sinon - Actions
Partie - Display to Player_groupe[(Player number of (Triggering player))] the text: Vous n'avez pas asser d'argent!
Collapse Sinon - Actions
Partie - Display to Player_groupe[(Player number of (Triggering player))] the texte : Vous devez être a la banque pour effectuer des transactions !



L'évènement peut être ajouté pour chaque joueur ; il suffit de copier l'évènement et de remplacer Joueur 1 (Rouge) par Joueur2 (Bleu) par exemple.
La condition est très importante car elle vérifie si il y a bien le message "-placer" entre la 1ère et 8ème lettre entrée par le joueur car si on écrivait 123 -placer il y aurait des bugs.
On vérifie aussi que le joueur est bien à la banque et pas autre part.
Et on définit la somme voulu par le joueur à la variable "Golds_palcer"[numéro du joueur marquant le message]
Si : La somme à placer demandé par le joueur est Inférieure ou égale à son or actuel alors:
On accepte la demande et on place l'argent sur son compte
On définit bien sur une variable " banque " qui correspond à son compte
Si : La somme à placer demander par le joueur est SUPÉRIEURE à son or actuel alors
On lui envoie un message d'erreur et on annule le placement

Maintenant on va créer le déclencheur pour retirer l'argent du compte.

Secret:

Gui:
Trigger:
Evénements
Joueur - Joueur 1 (Rouge) types a chat message containing -retirer  as Une sous-chaine
Conditions
(Substring((Entered chat string), 1, 9)) Egal à -retirer
Actions
Set golds_retirer[(Player number of (Triggering player))] = (Integer((Substring((Entered chat string), 10, 20))))
Collapse If (All Conditions are True) then do (Then Actions) else do (Else Actions)
Si - Condition
Enterbank[(Player number of (Triggering player)) Egal à TRUE
Collapse Alors - Actions
Collapse If (All Conditions are True) then do (Then Actions) else do (Else Actions)
Collapse Si - Conditions
(Real((Substring((Entered chat string),10,20)))) Inférieur ou égal à Banque[(Player number of (Triggering player))]
Collapse Alors - Actions
Joueur - Add Gold_retirer[(Player number of (Triggering player))] to Player[(Player number of (Triggering player))] Or actuel
Set Banque[(Player number of (Triggering player)) = (Banque[(Player number of triggering player))] - (Real((Substring((Entered chat string), 10, 20)))))
Partie - Display to Player_groupe[(Player number of (Triggering player))] the text: Votre retrait est effectué..
Collapse Sinon - Actions
Partie - Display to Player_groupe[(Player number of (Triggering player))] the text: Il n'y a pas asser d'argent sur votre compte pour effectuer la transaction!
Collapse Sinon - Actions
Partie - Display to Player_groupe[(Player number of (Triggering player))] the text : Vous devez etre a la banque pour effectuer des transactions !


L'évènement peut etre ajouté pour chaque joueur ; il suffit de copier l'évènement et de remplacer Joueur 1 (Rouge) par Joueur 2 (Bleu) par exemple
La condition est très importante car elle vérifie si il y a bien le message "-retirer" entre la 1ère et 9ème lettre entrée par le joueur.
Là, on definit la somme voulue par le joueur à la variable "Golds_retirer"[numeros du joueur marquant le message]
Si : La somme à retirer demander par le joueur est Inférieure ou égale à son or actuel sur son compte alors
On donne la somme voulue et on diminue l'argent du compte
Si : La somme à retirer demandé par le joueur est SUPÉRIEURE à l'or de son compte alors:
On lui envoie un message d'erreur et on annule le retrait.

Maintenant on va voir comment indiquer au joueur l'argent de son compte SANS UTILISER LE BOIS !!
Je veux dire par là, sans utiliser l'unité de bois (par défaut) qui pourra être utilisé autre part dans votre map (point d'honneur par exemple)
Voila le déclencheur à faire :
Secret:

Gui:
Trigger:
Evénement
Joueur 1 (Rouge)  types a chat message containing -consulter as Résultat équivalent
Condition
Actions
Set Banque_consul[(Player number of (Triggering player))] = (integer(Banque[(Player number of (Triggering player))]
Partie - Display to Player_groupe[(Player number of (Triggering player))] the text: (Vous avez  +((String(Banque_consul[(Player number of (Triggering player))]+  pièces sur votre compte.))



Vous pouvez rajouter la condition:
Secret:

Gui:
Trigger:
Condition
Enterbank[(Player number of (Triggering player))] Egal à TRUE


Pour obliger la personne à être a la banque pour consulter son compte.

Bon. Il ne nous reste plus que 2 déclencheurs à créer ; montrer que l'on est à la banque et l'autre pour l'inverse.
Il faut juste créer une région (Bank enter) pour définir la banque.
Elle doit être placée dans l'endroit que vous considérez comme la banque.

Voila le déclencheur pour entrer dans la banque :
Secret:

Gui:
Trigger:
Evénements
Unité - A unit enter Bank enter <gen>
Conditions
Actions
Collapse If (All Conditions are True) then do (Then Actions) else do (Else Actions)
Collapse Si - Conditions
((Entering unit) is Un héros) Egal à TRUE
Collapse Alors - Actions
Set Enterbank[(Player number of (Triggering player))] = TRUE
Collapse Sinon - Actions



Là, dés que l'on entre, la variable nous identifie comme dans la banque.

Voici le contraire:
Secret:

Gui:
Trigger:
Evénements
Unité - A unit leaves Bank enter <gen>
Conditions
Actions
Collapse If (All Conditions are True) then do (Then Actions) else do (Else Actions)
Collapse Si - Conditions
((Leaving unit) is Un héros) Egal à TRUE
Collapse Alors - Actions
Set Enterbank[(Player number of (Triggering player))] = FALSE
Collapse Sinon - Actions



Voila je vous ai tout dit.
Si vous voulez des précisions, me signaler des bugs,des ameliorations, ou des erreurs de rédaction merci de me le dire.

II/ EN CREATION
--> Un système de gain d'argent par intérêt.
[/spoiler][/Gui]Voilà ma map bien expliqué :
MAP : Télécharger la map


Ton message corrigé. Tu peux le copier/coller car les codes BBcodes et autres y sont.
_________________
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé Envoyer l'e-mail MSN Messenger
 Titiplouf11
Ptit Nouveau


Inscrit le: 12 Nov 2009
Messages: 4
Sujets: 1
Spécialité en worldedit: déclencheur


MessagePosté le: 29/11/09 09:03    Sujet du message: Citer

shiryu a écrit:
Nope,c'est loin d'être tout corrigé(mode gros lourd OFF)
PS:Télécharge Firefox,il corrige les fautes d'orthographes


Merci ca m'a vraiment aidé.
La j'ai tout corrigé.
_________________
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé
 Bleeded.Heart
Membre actif


Inscrit le: 15 Nov 2009
Messages: 104
Sujets: 2



MessagePosté le: 29/11/09 10:31    Sujet du message: Citer

Tu te fous de ma gueule ?

J'ai corrigé tout ton message.

Le défaut du correcteur orthographique de Firefox c'est qu'il ne connait pas la grammaires et la conjugaison. Il a juste en données des mots, donc si tu écris un mot qui n'existe pas, il te corrige, mais tu peux bien écrire : "je trouvera" il ne me corrige pas le verbe, car il existe, mais dans la phrase, la conjugaison est mauvaise.

Au fait, à l'infinitif c'est "créer" et non pas "crée"
Citation:
va vous permettre de crée

va vous permettre de vendre
Donc le verbe est à l'infinitif. Donc tu dois écrire "créer". Et tu as fait cette erreur une dizaine de fois dans ton message.

Voici ton message corrigé, tu copies et colles, je n'ai rien changé aux informations (j'ai juste rajouté quelques virgules) :
Code:
Ce tuto va vous permettre de créer votre propre banque utile pour les "LOAP". Ça vous servira à placer et retirer de l'or de votre compte.
Je vais aussi vous montrer comment consulter votre compte.

[size=20][color=blue]I/ [u]Les variables[/u][/color][/size]
Bon pour commencer on va créer 8 variables.

[spoiler]Nom de variable----------Type de variable-----------|Valeur initiale
---------------------------------------------------------------------------------
Banque -----------------Réel Déploiement... -------- 0 (Par défaut)
Banque_consul -------- Entier Déploiement... ------- 0 (Par défaut)
date  ------------------- Entier ------------------------   1
Gold  ------------------  Réel Déploiement... -------- 0 (Par défaut)
Gold_retirer ------------ Entier Déploiement...  ------  0 (Par défaut)
golds_placer  ---------- Entier Déploiement...  ------  0 (Par défaut)
Player  ----------------  Joueur Déploiement... ------  Aucun
Player_groupe -------- Groupe joueur Dépl...  -------Vider le groupe de j.
Enterbank---------------Booléén Déploiement ---------False (Par défaut)
---------------------------------------------------------------------------------[/spoiler]

[size=20][color=blue]II/ [u]Les déclencheurs[/u][/color][/size]

Maintenant, on va créer le déclencheur pour définir des valeurs aux 3 variables (Gold , Player , Player_groupe )
[spoiler][Gui]Evénements
        Temps - Every 0.10 seconds game time
Conditions
Actions
        Set Gold[1] = (Real((Joueur 1 (Rouge) Or actuel)))
        Set Player[1] = Joueur 1 (Rouge)
        Groupe joueur - Add Joueur 1 (Rouge) to Player_groupe[1][/Gui][/spoiler]

On fait la même chose pour chaque joueur.( [1] est égal au numéro du joueur, 1 pour Joueur 1 (rouge) )

Là, on va faire le déclencheur pour placer de l'argent sur le compte:
[spoiler][Gui]
Evénements
        Joueur - Joueur 1 (Rouge) types a chat message containing -placer  as Une sous-chaîne
Conditions
        (Substring((Entered chat string), 1, 8)) Egal à -placer
Actions
        Set golds_placer[(Player number of (Triggering player))] = (Integer((Substring((Entered chat string), 9, 20))))
        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                Si - Condition
                        Enterbank[(Player number of (Triggering player)) Egal à TRUE
                Alors - Actions
                        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                                Si - Conditions
                                        (Real((Substring((Entered chat string),9,20)))) Inférieur ou égal à Gold[(Player number of (Triggering player))]
                       
                                Alors - Actions
                                        Joueur - Set Player[(Player number of (Triggering player))]Or actuel to ((Player[(Player number of (Triggering player))] Or actuel) - golds_placer[(Player number of (Triggering player))])
                                        Set Banque[(Player number of (Triggering player))] = (Banque[(Player number of triggering player))] + (Real((Substring((Entered chat string), 9, 20)))))
                                        Partie - Display to Player_groupe[(Player number of (Triggering player))] the text: Votre argent est bien placer.
                                Sinon - Actions
                                        Partie - Display to Player_groupe[(Player number of (Triggering player))] the text: Vous n'avez pas asser d'argent!
                Sinon - Actions
                        Partie - Display to Player_groupe[(Player number of (Triggering player))] the texte : Vous devez être a la banque pour effectuer des transactions !
[/Gui][/spoiler]

L'évènement peut être ajouté pour chaque joueur ; il suffit de copier l'évènement et de remplacer Joueur 1 (Rouge) par Joueur2 (Bleu) par exemple.
La condition est très importante car elle vérifie si il y a bien le message "-placer" entre la 1ère et 8ème lettre entrée par le joueur car si on écrivait 123 -placer il y aurait des bugs.
On vérifie aussi que le joueur est bien à la banque et pas autre part.
Et on définit la somme voulu par le joueur à la variable "Golds_palcer"[numéro du joueur marquant le message]
Si : La somme à placer demandé par le joueur est Inférieure ou égale à son or actuel alors:
On accepte la demande et on place l'argent sur son compte
On définit bien sur une variable " banque " qui correspond à son compte
Si : La somme à placer demander par le joueur est SUPÉRIEURE à son or actuel alors
On lui envoie un message d'erreur et on annule le placement

Maintenant on va créer le déclencheur pour retirer l'argent du compte.

[spoiler][Gui]
Evénements
        Joueur - Joueur 1 (Rouge) types a chat message containing -retirer  as Une sous-chaine
Conditions
        (Substring((Entered chat string), 1, 9)) Egal à -retirer
Actions
        Set golds_retirer[(Player number of (Triggering player))] = (Integer((Substring((Entered chat string), 10, 20))))
        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                Si - Condition
                        Enterbank[(Player number of (Triggering player)) Egal à TRUE
                Alors - Actions
                        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                                Si - Conditions
                                        (Real((Substring((Entered chat string),10,20)))) Inférieur ou égal à Banque[(Player number of (Triggering player))]
                       
                                Alors - Actions
                                        Joueur - Add Gold_retirer[(Player number of (Triggering player))] to Player[(Player number of (Triggering player))] Or actuel
                                        Set Banque[(Player number of (Triggering player)) = (Banque[(Player number of triggering player))] - (Real((Substring((Entered chat string), 10, 20)))))
                                        Partie - Display to Player_groupe[(Player number of (Triggering player))] the text: Votre retrait est effectué..
                                Sinon - Actions
                                        Partie - Display to Player_groupe[(Player number of (Triggering player))] the text: Il n'y a pas asser d'argent sur votre compte pour effectuer la transaction!
                Sinon - Actions
                        Partie - Display to Player_groupe[(Player number of (Triggering player))] the text : Vous devez etre a la banque pour effectuer des transactions !
[/Gui][/spoiler]
L'évènement peut etre ajouté pour chaque joueur ; il suffit de copier l'évènement et de remplacer Joueur 1 (Rouge) par Joueur 2 (Bleu) par exemple
La condition est très importante car elle vérifie si il y a bien le message "-retirer" entre la 1ère et 9ème lettre entrée par le joueur.
Là, on definit la somme voulue par le joueur à la variable "Golds_retirer"[numeros du joueur marquant le message]
Si : La somme à retirer demander par le joueur est Inférieure ou égale à son or actuel sur son compte alors
On donne la somme voulue et on diminue l'argent du compte
Si : La somme à retirer demandé par le joueur est SUPÉRIEURE à l'or de son compte alors:
On lui envoie un message d'erreur et on annule le retrait.

Maintenant on va voir comment indiquer au joueur l'argent de son compte SANS UTILISER LE BOIS !!
Je veux dire par là, sans utiliser l'unité de bois (par défaut) qui pourra être utilisé autre part dans votre map (point d'honneur par exemple)
Voila le déclencheur à faire :
[spoiler][Gui]
Evénement
        Joueur 1 (Rouge)  types a chat message containing -consulter as Résultat équivalent
Condition
Actions
        Set Banque_consul[(Player number of (Triggering player))] = (integer(Banque[(Player number of (Triggering player))]
        Partie - Display to Player_groupe[(Player number of (Triggering player))] the text: (Vous avez  +((String(Banque_consul[(Player number of (Triggering player))]+  pièces sur votre compte.))[/Gui][/spoiler]

Vous pouvez rajouter la condition:[spoiler][Gui]
Condition
      Enterbank[(Player number of (Triggering player))] Egal à TRUE[/Gui][/spoiler]
Pour obliger la personne à être a la banque pour consulter son compte.

Bon. Il ne nous reste plus que 2 déclencheurs à créer ; montrer que l'on est à la banque et l'autre pour l'inverse.
Il faut juste créer une région (Bank enter) pour définir la banque.
Elle doit être placée dans l'endroit que vous considérez comme la banque.

Voila le déclencheur pour entrer dans la banque : [spoiler][Gui]
Evénements
        Unité - A unit enter Bank enter <gen>
Conditions
Actions
        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                Si - Conditions
                        ((Entering unit) is Un héros) Egal à TRUE
                Alors - Actions
                        Set Enterbank[(Player number of (Triggering player))] = TRUE
                Sinon - Actions[/Gui][/spoiler]

Là, dés que l'on entre, la variable nous identifie comme dans la banque.

Voici le contraire:[spoiler][Gui]
Evénements
        Unité - A unit leaves Bank enter <gen>
Conditions
Actions
        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                Si - Conditions
                        ((Leaving unit) is Un héros) Egal à TRUE
                Alors - Actions
                        Set Enterbank[(Player number of (Triggering player))] = FALSE
                Sinon - Actions[/Gui][/spoiler]

Voila je vous ai tout dit.
Si vous voulez des précisions, me signaler des bugs,des ameliorations, ou des erreurs de rédaction merci de me le dire.

[size=20][color=blue]II/ [u]EN CREATION[/u][/color][/size]
--> Un système de gain d'argent par intérêt.
[/spoiler][/Gui]Voilà ma map bien expliqué :
MAP : [url=http://www.epicwar.com/maps/117027/]Télécharger la map[/url]



L'orthographe est très importante. Par exemple, ce qui caractérise un message officiel, c'est qu'il ne contient aucune fautes d'orthographes. Et si il en contient une, on peut la renier.
_________________
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé Envoyer l'e-mail MSN Messenger
 Titiplouf11
Ptit Nouveau


Inscrit le: 12 Nov 2009
Messages: 4
Sujets: 1
Spécialité en worldedit: déclencheur


MessagePosté le: 30/11/09 18:44    Sujet du message: Citer

Bleeded.Heart a écrit:
Tu te fous de ma gueule ?

J'ai corrigé tout ton message.

Le défaut du correcteur orthographique de Firefox c'est qu'il ne connait pas la grammaires et la conjugaison. Il a juste en données des mots, donc si tu écris un mot qui n'existe pas, il te corrige, mais tu peux bien écrire : "je trouvera" il ne me corrige pas le verbe, car il existe, mais dans la phrase, la conjugaison est mauvaise.

Au fait, à l'infinitif c'est "créer" et non pas "crée"
Citation:
va vous permettre de crée

va vous permettre de vendre
Donc le verbe est à l'infinitif. Donc tu dois écrire "créer". Et tu as fait cette erreur une dizaine de fois dans ton message.


Merci dsl je ne suis pas super bon en orthographe.
Jespere que mon tuto aide par contre.[/quote]
_________________
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé
 jk2pach
Invité








MessagePosté le: 19/01/10 19:26    Sujet du message: Citer

Passé en officiel (je corrigerai les dernières fautes plus tard).
_________________
Revenir en haut
Montrer les messages depuis:   
Poster un nouveau sujet   Répondre au sujet    Worldedit Index du Forum -> Tutoriels Toutes les heures sont au format GMT + 1 Heure
Page 1 sur 1

 
Sauter vers:  
Vous ne pouvez pas poster de nouveaux sujets dans ce forum
Vous ne pouvez pas répondre aux sujets dans ce forum
Vous ne pouvez pas éditer vos messages dans ce forum
Vous ne pouvez pas supprimer vos messages dans ce forum
Vous ne pouvez pas voter dans les sondages de ce forum


Powered by phpBB © 2001, 2005 phpBB Group
Traduction par : phpBB-fr.com