Worldedit
  Worldedit
Le site sur l'éditeur de warcraft 3 !
 
  FAQFAQ   RechercherRechercher   Liste des MembresListe des Membres    Groupes d'utilisateursGroupes d'utilisateurs   medals.php?sid=74de19295a7069b5bb207534ba76aa7dMé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

Recipes

 
Poster un nouveau sujet   Répondre au sujet    Worldedit Index du Forum -> Tutoriels -> En validation
Voir le sujet précédent :: Voir le sujet suivant  
Auteur Message
 DaKanibal
Membre a fort taux de post


Inscrit le: 12 Sep 2009
Messages: 801
Sujets: 64
Spécialité en worldedit: Ne pas.


MessagePosté le: 02/12/10 14:39    Sujet du message: Recipes Citer

Yop tout le monde Smile
Dans ce tutoriel, je vais vous parler des recipes et comment les faire.

Sommaire


I/ Introduction au recipe
1) Définition du recipe

II/ Recipe objets
1) Recipe avec deux objets différents
1.1) Editeur d'objets
1.2) Déclencheurs

2) Recipe avec deux objets identiques
2.1) Editeur d'objets
2.2) Déclencheurs

III/ Recipe sorts
1) Recipe avec deux sorts différents
1.1) Editeur d'objets
1.2) Déclencheurs

_______

I/ Introduction au recipe
1) Définition du recipe

Un recipe est une combinaison de deux widgets* créant un ou plusieurs nouveau widget étant généralement plus puissant.

Exemple : Une unité a un objet "Gant de force +4", lorsque qu'elle trouve un autre "Gant de force +4", cela lui créera des "Gants de force +8".

Widget : Gadget, tout ce qui est dans wc3 (unité, bâtiment, sort, objet etc) et qui est personnalisable.

II/ Recipe objets
1) Recipe avec deux objets différents
C’est le système le plus basique et le plus simple. Généralement, on prend un objet (voir deux) et un parchemin de recipe. (Qui est aussi un objet).
Il peut tout de même être amélioré de sorte à ce qu’on n’ait pas besoin d’un slot libre pour faire le recipe lorsque l’on a un inventaire complet.
Exemple : Un héros a 6 objets, dans ces 6 objets, il a un Gant de force +4, mais pour faire le recipe, il lui manque le Parchemin de Recipe : Gant de force +4. En temps normal, il aurait eu besoin d’un slot en plus pour accomplir son recipe, avec le deuxième système de recipe, même si son inventaire est plein, son Gant de force +4 se transformera.

1.1) Editeur d'objets
Pour les objets, vous avez besoin de deux ou plus objets acteurs du recipe. Pour mes exemples, je prends un Gant de Force +4, et un Parchemin de Recipe : Gant de Force +4.
Généralement, l’item transformé gagne le double de ses caractéristiques qu’il avait avant la transformation. Donc le prix de l’item transformé doit être doublé. (Ou ajoutez la moitié du prix du Parchemin de Recipe)

1.2) Déclencheurs
Tout d’abord, l’événement. Il suffit juste de savoir quand une unité obtient un objet.
Gui:
Trigger:
Unité - A unit Acquiert un objet

Ensuite, la condition (Je préfère faire avec des If/then/else, on a besoin que d’un déclencheur comme ça.)
Gui:
Trigger:
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
Collapse Si - Conditions
((Triggering unit) has an item of type Gant|cffffcc00s|r de force +4) Egal à  TRUE
((Triggering unit) has an item of type Parchemin de Recipe : Gants de Force +4) Egal à  TRUE


Ensuite, les actions afin de donner le nouvel objet, qui doit donc être fraichement créé

Gui:
Trigger:
Actions
Set Var_Point = (Position of (Triggering unit))
Collapse If (All Conditions are True) then do (Then Actions) else do (Else Actions)
Collapse Si - Conditions
((Triggering unit) has an item of type Gant|cffffcc00s|r de force +4) Egal à  TRUE
((Triggering unit) has an item of type Parchemin de Recipe : Gants de Force +4) Egal à  TRUE
Collapse Alors - Actions
Objet - Remove (Item carried by (Triggering unit) of type Gant|cffffcc00s|r de force +4)
Objet - Remove (Item carried by (Triggering unit) of type Parchemin de Recipe : Gants de Force +4)
Objet - Create Gant|cffffcc00s|r de force +8 at Var_Point
Effet spécial - Create a special effect at Var_Point using AbilitiesSpellsHumanHolyBoltHolyBoltSpecialArt.mdl
Effet spécial - Destroy (Last created special effect)
Unité - Order (Triggering unit) to Clic droit (Last created item)
Sinon - Actions
Custom script:   call RemoveLocation(udg_Var_Point)


J’explique, car je sais que certains vont me sauter dessus en hurlant tel des forcenés, pour ça :
Gui:
Trigger:
Unité - Order (Triggering unit) to Clic droit (Last created item)

Je mets cette action tout simplement car si par hasard vous mettiez un autre déclencheur impliquant l’objet fraichement créé avec comme événement
Gui:
Trigger:
Unité - A unit Acquiert un objet
celui-ci ne se déclenchera pas.

Voilà pour la première partie du tutoriel !

2) Recipe avec deux objets identiques

C’est le système le plus dur (mais pas trop, hein). Ce système-là, « augmente » de niveau l’objet ayant subi la transformation.

Exemple : Un héros a 4 objets, dans ces 4 objets, il possède deux Gants de Force +8, le système de recipe transformera donc automatiquement ces Gants de Force +8 en Gants de Force +16
2.1) Editeur d'objets
Pour les objets, vous avez besoin de deux objets acteurs du recipe. Pour mes exemples, je prends deux Gants de Force +8.
Généralement, les items transformés accumulent leurs bonus qu’ils avaient avant la transformation. Donc le prix de l’item transformé doit être doublé.

2.2) Déclencheurs
Comme lorsque l’on a deux objets différents, il faut cet événement :
Gui:
Trigger:
Unité - A unit Acquiert un objet


Mais cette fois, il faut une autre structure pour le déclencheur, une simple condition demandant deux objets identiques ne marcheraient pas.
Voici donc le déclencheur complet, puis les explications :
Gui:
Trigger:
Actions
Set Var_Point = (Position of (Triggering unit))
Collapse If (All Conditions are True) then do (Then Actions) else do (Else Actions)
Collapse Si - Conditions
(Item-type of (Item being manipulated)) Egal à  Gant|cffffcc00s|r de force +8
Collapse Alors - Actions
Collapse For each (Integer A) from 1 to 6, do (Actions)
Collapse Boucle - Actions
Collapse If (All Conditions are True) then do (Then Actions) else do (Else Actions)
Collapse Si - Conditions
(Item-type of (Item carried by (Triggering unit) in slot (Integer A))) Egal à  Gant|cffffcc00s|r de force +8
Collapse Alors - Actions
Set Int_Item = (Int_Item + 1)
Sinon - Actions
Collapse If (All Conditions are True) then do (Then Actions) else do (Else Actions)
Collapse Si - Conditions
Int_Item Egal à  2
Collapse Alors - Actions
Collapse For each (Integer A) from 1 to 2, do (Actions)
Collapse Boucle - Actions
Objet - Remove (Item carried by (Triggering unit) of type Gant|cffffcc00s|r de force +8)
Objet - Create Gant|cffffcc00s|r de force +16 at Var_Point
Unité - Order (Triggering unit) to Clic droit (Last created item)
Effet spécial - Create a special effect at Var_Point using AbilitiesSpellsHumanHolyBoltHolyBoltSpecialArt.mdl
Effet spécial - Destroy (Last created special effect)
Set Int_Item = 0
Collapse Sinon - Actions
Set Int_Item = 0
Sinon - Actions
Custom script:   call RemoveLocation(udg_Var_Point)


Gui:
Trigger:
Collapse Si - Conditions
(Item-type of (Item being manipulated)) Egal à  Gant|cffffcc00s|r de force +8

Là on vérifie tout simplement si l’objet venant d’être pris est bien l’objet acteur de la transformation.
Gui:
Trigger:
Collapse For each (Integer A) from 1 to 6, do (Actions)
Collapse Boucle - Actions
Collapse If (All Conditions are True) then do (Then Actions) else do (Else Actions)
Collapse Si - Conditions
(Item-type of (Item carried by (Triggering unit) in slot (Integer A))) Egal à  Gant|cffffcc00s|r de force +8
Collapse Alors - Actions
Set Int_Item = (Int_Item + 1)

Là, on vérifie si il possède plus d’un objet acteur de la transformation.

Et enfin, à chaque fois que l’on trouve un nouvel objet remplissant les conditions, on ajoute 1 à Int_Item, qui permettra de savoir si le héros possède bien 2 objets identiques.
Gui:
Trigger:
Collapse If (All Conditions are True) then do (Then Actions) else do (Else Actions)
Collapse Si - Conditions
Int_Item Egal à  2
Collapse Alors - Actions
Collapse For each (Integer A) from 1 to 2, do (Actions)
Collapse Boucle - Actions
Objet - Remove (Item carried by (Triggering unit) of type Gant|cffffcc00s|r de force +8)
Objet - Create Gant|cffffcc00s|r de force +16 at Var_Point
Unité - Order (Triggering unit) to Clic droit (Last created item)
Effet spécial - Create a special effect at Var_Point using AbilitiesSpellsHumanHolyBoltHolyBoltSpecialArt.mdl
Effet spécial - Destroy (Last created special effect)
Set Int_Item = 0
Collapse Sinon - Actions
Set Int_Item = 0
Sinon - Actions
Custom script:   call RemoveLocation(udg_Var_Point)


Et là, on vérifie s’il possède bien 2 Gants de Force +8 via la variable entire Int_Item. Si il en possède 2, on fait une boucle enlevant 2 (et pas plus, pas moins) Gants de Force +8. Puis on créer des Gants de Force +16 et ordonne au héros de les prendre.

Voilà pour la deuxième partie du tutoriel !
_________________
||**||


Dernière édition par DaKanibal le 04/12/10 14:37; édité 10 fois
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé MSN Messenger
 Crowolf
Animateur


Inscrit le: 21 Avr 2008
Messages: 1603
Sujets: 81
Spécialité en worldedit: Utiliser le travail des autres
Médailles: 3 (En savoir plus...)
Rédacteur de tuto #3 (Quantité : 1) Grand décorateur (Quantité : 2)

MessagePosté le: 02/12/10 18:30    Sujet du message: Citer

Pourquoi tu mets
Create Tome d'exprience at Var_point?

Tu peux directement donner un item à un héros je crois...
_________________
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé
 DaKanibal
Membre a fort taux de post


Inscrit le: 12 Sep 2009
Messages: 801
Sujets: 64
Spécialité en worldedit: Ne pas.


MessagePosté le: 02/12/10 19:00    Sujet du message: Citer

(D'ailleurs j'avais pas vu que j'avais mis Tome d'expérience a la place de Gants de Force +8 )

Oui en effet, je viens de voir ça !
J'édite mon code GUI et édite le tuto.
_________________
||**||


Dernière édition par DaKanibal le 03/12/10 21:53; édité 1 fois
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé MSN Messenger
 Farentir
Membre actif


Inscrit le: 05 Nov 2009
Messages: 186
Sujets: 10



MessagePosté le: 03/12/10 07:59    Sujet du message: Citer

Et pourquoi Var_point ?
Ce serait pas plutôt TutoPoint, que t'as défini au début du déclo ?
_________________
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé MSN Messenger
 DaKanibal
Membre a fort taux de post


Inscrit le: 12 Sep 2009
Messages: 801
Sujets: 64
Spécialité en worldedit: Ne pas.


MessagePosté le: 03/12/10 15:04    Sujet du message: Citer

Ouais j'ai changé les noms directement. Je refais tous les déclos et finis le tuto.
_________________
||**||
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé MSN Messenger
 MeTeOr_StArs
Membre honoraire


Inscrit le: 08 Mar 2010
Messages: 243
Sujets: 54
Spécialité en worldedit: Sort sans déclencheurs


MessagePosté le: 03/12/10 20:04    Sujet du message: Citer

Moiu j'ai envie de dire merci pour avoir pigeon mon tutos Wink
_________________
.


Alpha vs Xantgjia nouveau projet serieux en cour :

http://worldedit.free.fr/forum/viewtopic.php?t=6113

Recrute... Mp moi.
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé
 DaKanibal
Membre a fort taux de post


Inscrit le: 12 Sep 2009
Messages: 801
Sujets: 64
Spécialité en worldedit: Ne pas.


MessagePosté le: 03/12/10 21:29    Sujet du message: Citer

Hein?
_________________
||**||
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé MSN Messenger
 ptitcool
Membre actif


Inscrit le: 06 Nov 2007
Messages: 184
Sujets: 17
Spécialité en worldedit: Faire lagger


MessagePosté le: 03/12/10 21:36    Sujet du message: Citer

Je pense qu'il veut parler de ça.
_________________
La théorie, c'est quand on sait tout et que rien ne fonctionne.
La pratique, c'est quand tout fonctionne et que personne ne sait pourquoi.
Ici, nous avons réuni théorie et pratique : Rien ne fonctionne... et personne ne sait pourquoi !


Ma petite arena
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé
 DaKanibal
Membre a fort taux de post


Inscrit le: 12 Sep 2009
Messages: 801
Sujets: 64
Spécialité en worldedit: Ne pas.


MessagePosté le: 03/12/10 21:54    Sujet du message: Citer

Ah, ouais. J'avais pas vu.
Le mien sera plus complet t'façon ! De plus, j'vois pas en quoi je "pigeon" ton tuto, vu que je le rédige seul grâce à mes trouvailles du we.
_________________
||**||
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé MSN Messenger
 Farentir
Membre actif


Inscrit le: 05 Nov 2009
Messages: 186
Sujets: 10



MessagePosté le: 04/12/10 13:26    Sujet du message: Citer

Tu pourrais ptet aussi parler de si on a un gants de force +16, et encore un +8 qui arrive après, pour faire un +24 ?
_________________
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé MSN Messenger
 DaKanibal
Membre a fort taux de post


Inscrit le: 12 Sep 2009
Messages: 801
Sujets: 64
Spécialité en worldedit: Ne pas.


MessagePosté le: 04/12/10 14:36    Sujet du message: Citer

Bein, c'est le premier point.
=> II/ Recipe objets
1) Recipe avec deux objets différents

Tu changes juste les conditions et l'objet créé.
_________________
||**||
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé MSN Messenger
 Farentir
Membre actif


Inscrit le: 05 Nov 2009
Messages: 186
Sujets: 10



MessagePosté le: 06/12/10 17:30    Sujet du message: Citer

Ouep, je saurais comment faire, mais ça peut en aider, je pensais juste d'expliquer comment le faire sans multiplier les déclos dans tous les sens.
_________________
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé MSN Messenger
 Crowolf
Animateur


Inscrit le: 21 Avr 2008
Messages: 1603
Sujets: 81
Spécialité en worldedit: Utiliser le travail des autres
Médailles: 3 (En savoir plus...)
Rédacteur de tuto #3 (Quantité : 1) Grand décorateur (Quantité : 2)

MessagePosté le: 06/12/10 19:39    Sujet du message: Citer

@ MeTeOr : Ton tuto n'avait pas été validé parce que tu n'avais pas tenu compte des suggestions.

Pour le tuto, il te faut encore expliquer un objet améliorable plusieurs fois en achetant le même recipe peut-être?
Ensuite, pour l'histoire des slots pleins, il y a l'astuce d'utiliser des tomes comme objets achetés.

Sinon, j'ai vu quelques fautes d'orthographes mais ça a l'air bon pour l'instant.
_________________
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé
 DaKanibal
Membre a fort taux de post


Inscrit le: 12 Sep 2009
Messages: 801
Sujets: 64
Spécialité en worldedit: Ne pas.


MessagePosté le: 06/12/10 22:21    Sujet du message: Citer

Je finirais la deuxième partie du tutoriel plus tard. (Dans pas trop longtemps, vous inquiétez pas !)

Et aussi, j'ai cherché un moyen de faire un système de Recipe semi-automatique.

Secret:

Gui:
Trigger:
For each (Integer A) from 1 to Int_LastIndexGemmes[1], do (Actions)
Collapse Boucle - Actions
Collapse If (All Conditions are True) then do (Then Actions) else do (Else Actions)
Collapse Si - Conditions
((Triggering unit) has an item of type TypObj_TypeObjetRecipe[(Integer A)]) Egal à  TRUE
((Triggering unit) has an item of type TypObj_TypeObjetRecipe[((Integer A) + 12)]) Egal à  TRUE
Collapse Alors - Actions
Objet - Remove (Item carried by (Triggering unit) of type TypObj_TypeObjetRecipe[(Integer A)])
Objet - Remove (Item carried by (Triggering unit) of type TypObj_TypeObjetRecipe[((Integer A) + 12)])
Objet - Create TypObj_TypeObjetRecipe[((Integer A) + 13)] at Point_PosReciper
Unité - Order (Triggering unit) to Clic droit (Last created item)
Effet spécial - Create a special effect at (Position of (Triggering unit)) using AbilitiesSpellsHumanHolyBoltHolyBoltSpecialArt.mdl
Effet spécial - Destroy (Last created special effect)
Collapse Sinon - Actions
Do nothing



Qui créer automatiquement les recipes lorsqu'il y a plusieurs niveaux de l'objet.
Exemple :

Gant +4 + Gemme niveau 1 = Gant +5
Gant +5 + Gemme niveau 2 = Gant +6
Etc.

Il suffit juste d'assigner les items à des variables dans un déclencheur et de changer l'index des variables de ce déclencheur pour chaque type objet.
_________________
||**||
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé MSN Messenger
Montrer les messages depuis:   
Poster un nouveau sujet   Répondre au sujet    Worldedit Index du Forum -> Tutoriels -> En validation 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