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=a04d781aeaad8d64696b01a218d129baMé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

Escape the Maze
Aller à la page Précédente  1, 2, 3, 4, 5, 6, 7  Suivante
 
Poster un nouveau sujet   Répondre au sujet    Worldedit Index du Forum -> Présentation de vos cartes
Voir le sujet précédent :: Voir le sujet suivant  
Auteur Message
 kungfu-sheep
Anomalie floodiforme


Inscrit le: 14 Avr 2011
Messages: 1846
Sujets: 119
Spécialité en worldedit: fonctions paramétriques, équation de mouvement.


MessagePosté le: 19/04/11 22:57    Sujet du message: Citer

estime toi heureux atchalak moi j'ai même pas droit à ça quand il m'aide :'(
_________________
22:27:43<Seiraw> Bah y a deux genre de personnes
22:27:57<Seiraw> les soumis et les soumises
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé Envoyer l'e-mail
 atchalak
Membre honoraire


Inscrit le: 06 Déc 2010
Messages: 323
Sujets: 16



MessagePosté le: 19/04/11 23:18    Sujet du message: Citer

de toute façon, j'ai trouvé une solution que je préfère à la sienne ^^ (parce que même si j'avais qu'à copier/coller, je serai foutu d'y mettre de fautes...)

Gui:
Trigger:
ceation des heros
Collapse Evénements
Temps - Elapsed game time is 0.10 seconds
Conditions
Collapse Actions
Set random_point = (Random point in Région 001 <gen>)
Collapse For each (Integer A) from 1 to nb_loop, do (Actions)
Collapse Boucle - Actions
Collapse If (All Conditions are True) then do (Then Actions) else do (Else Actions)
Collapse Si - Conditions
(Terrain cliff level at random_point) Egal à  2
Collapse Alors - Actions
Unité - Create 1 Captain Kirk for joueur[nb_joueur] at random_point facing (Random angle) degrees
Unité - Make (Last created unit) Invulnérable
Set nb_joueur = (nb_joueur + 1)
Set random_point = (Random point in Région 001 <gen>)
Collapse Sinon - Actions
Set nb_loop = (nb_loop + 1)
Collapse Groupe unité - Pick every unit in (Units within 1000000000.00 of (Center of (Playable map area)) matching (((Matching unit) is Un héros) Egal à  TRUE)) and do (Actions)
Collapse Boucle - Actions
Caméra - Pan camera for (Owner of (Picked unit)) to (Position of (Picked unit)) over 0.00 seconds


je comprend pas, ça ne crée que le héro du joueur rouge....
_________________
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé MSN Messenger
 Max
Floodeur prématuré


Inscrit le: 13 Jan 2009
Messages: 550
Sujets: 47
Spécialité en worldedit: La partie déclencheurs sauf le GUI.


MessagePosté le: 20/04/11 00:10    Sujet du message: Citer

Ah ben écoute, si tu préfères les solutions compliquées et qui marchent pas aux solutions efficaces et rapides, là j'peux plus rien faire pour toi.

C'est quoi qui te gêne dans ma méthode en fait ? Qu'il n'y ait pas les jolis pictos avec les couleurs ?
Faut pas t'arrêter à ce point de détail xD.
_________________
Maximaxou@northrend

Projet Max Escape Creation (éditeur d'escapes : mazes/slides) : http://max.slid.free.fr/maxEscapeCreation/


Dernière édition par Max le 20/04/11 00:13; édité 1 fois
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé
 Max
Floodeur prématuré


Inscrit le: 13 Jan 2009
Messages: 550
Sujets: 47
Spécialité en worldedit: La partie déclencheurs sauf le GUI.


MessagePosté le: 20/04/11 00:28    Sujet du message: Citer

Code:
for each (num_joueur) from 1 to 12 {   //for each integer variable
    set random_point = Random point in region_depart <gen>
    si ( (terrain cliff level at random point) == 2 ) {
        Unité - Créer 1 Captain Kirk for Player(num_joueur) at random_point facing (Random angle) degrees    //fonction : Conversion - Convert Player Index To Player
    }
    sinon {
        set num_joueur = num_joueur - 1  //petite ligne astucieuse permettant de reboucler sur le même joueur : num_joueur - 1 + 1 -> num_joueur
    }
    Custom script : call RemoveLocation(udg_random_point)  //indispensable pour éviter les fuites de mémoire
}

Gui:
Trigger:
For each (Integer num_joueur) from 1 to 12, do (Actions)
Collapse Boucle - Actions
Set random_point = (Random point in region depart <gen>)
Collapse If (All Conditions are True) then do (Then Actions) else do (Else Actions)
Collapse Si - Conditions
(Terrain cliff level at random_point) Egal à  2
Collapse Alors - Actions
Unité - Create 1 Captain Kirk for (Player(num_joueur)) at random_point facing (Random angle) degrees
Collapse Sinon - Actions
Set num_joueur = (num_joueur - 1)
Custom script:   call RemoveLocation( udg_random_point )


Est-ce que ceci vous conviendrait mieux mister ?
_________________
Maximaxou@northrend

Projet Max Escape Creation (éditeur d'escapes : mazes/slides) : http://max.slid.free.fr/maxEscapeCreation/
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé
 kungfu-sheep
Anomalie floodiforme


Inscrit le: 14 Avr 2011
Messages: 1846
Sujets: 119
Spécialité en worldedit: fonctions paramétriques, équation de mouvement.


MessagePosté le: 20/04/11 00:31    Sujet du message: Citer

Citation:
de toute façon, j'ai trouvé une solution que je préfère à la sienne ^^


une solution qui marche pas n'en est pas une ! et tu préfères un truc qui marche pas à son trigger qui marcherait ?

Citation:
(parce que même si j'avais qu'à copier/coller, je serai foutu d'y mettre de fautes...)



parce que ton trigger acutel n'a pas de faute ? Surprised
_________________
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé Envoyer l'e-mail
 atchalak
Membre honoraire


Inscrit le: 06 Déc 2010
Messages: 323
Sujets: 16



MessagePosté le: 20/04/11 00:33    Sujet du message: Citer

le problème c'est pas l'interface, c'est juste que je capte pas du tout le JASS ou le Java, le seul language de programmation que je connaisse c'est le html (et encore, je sais même pas si on peut appeler ça de la programmation tellement c'est simple...)

full dragon : peut être que dans le mien ya des fautes mais avec un peu de temps je pourrai rectifier tout seul... le truc c'est qu'avec son système si je me plante je sais pas où est le problème et si je veux modifier un truc j'en serai pas capable...

max : dasn ta solution, je ne vois pas à quoi sert ça : "Set num_joueur = (num_joueur - 1)" parce que ça ferai que revenir au joueur précédent, en gros certains joueurs auraient plusieurs héros....
le truc que j'essayais de faire avec ma boucle c'est de définir autant de loop que nécessaire pour être sûr que aucun héro ne popera au milieu d'un falaise (ces cons passent leur temps à faire ça..)...

edit : je viens de tester la solution de max et comme je m'y attendais, je me suis retrouvé avec un nombre énorme de héros...
_________________


Dernière édition par atchalak le 20/04/11 00:41; édité 1 fois
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé MSN Messenger
 Max
Floodeur prématuré


Inscrit le: 13 Jan 2009
Messages: 550
Sujets: 47
Spécialité en worldedit: La partie déclencheurs sauf le GUI.


MessagePosté le: 20/04/11 00:40    Sujet du message: Citer

Les commentaires sont là pour t'expliquer. D'ailleurs tu essaies des choses sans vraiment savoir ce que tu fais (ça se voit). Le mieux pour toi serait d'essayer de comprendre ce que j'ai fait, et de poser toutes les questions dont tu as besoin.
(d'ailleurs ça serait con pour moi d'avoir passé chépa combien de temps à te faire ça en GUI)
_________________
Maximaxou@northrend

Projet Max Escape Creation (éditeur d'escapes : mazes/slides) : http://max.slid.free.fr/maxEscapeCreation/
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé
 Max
Floodeur prématuré


Inscrit le: 13 Jan 2009
Messages: 550
Sujets: 47
Spécialité en worldedit: La partie déclencheurs sauf le GUI.


MessagePosté le: 20/04/11 00:45    Sujet du message: Citer

atchalak a écrit:
le problème c'est pas l'interface, c'est juste que je capte pas du tout le JASS ou le Java, le seul language de programmation que je connaisse c'est le html (et encore, je sais même pas si on peut appeler ça de la programmation tellement c'est simple...)

Là tu l'as en GUI, mais le truc est que le GUI est fondamentalement du JASS...
Le html n'est pas un langage de programmation, tu ne peux pas créer de variables, de fonctions, de boucles, ni d'instructions conditionnelles...
_________________
Maximaxou@northrend

Projet Max Escape Creation (éditeur d'escapes : mazes/slides) : http://max.slid.free.fr/maxEscapeCreation/
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé
 atchalak
Membre honoraire


Inscrit le: 06 Déc 2010
Messages: 323
Sujets: 16



MessagePosté le: 20/04/11 00:45    Sujet du message: Citer

j'essaye de comprendre ce que u fais, mais ou bien tu n'as pas compris ce que j'essayais de faire ou bien je suis un gros blaireau parce ni moi ni mon world edit n'arrivons à faire fonctionner ta solution de manière adéquate....
_________________
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé MSN Messenger
 kungfu-sheep
Anomalie floodiforme


Inscrit le: 14 Avr 2011
Messages: 1846
Sujets: 119
Spécialité en worldedit: fonctions paramétriques, équation de mouvement.


MessagePosté le: 20/04/11 00:49    Sujet du message: Citer

Code:
for each (num_joueur) from 1 to 12 {   //for each integer variable
    set random_point = Random point in region_depart <gen>
    si ( (terrain cliff level at random point) == 2 ) {
        Unité - Créer 1 Captain Kirk for Player(num_joueur) at random_point facing (Random angle) degrees    //fonction : Conversion - Convert Player Index To Player
    }
    sinon {
        set num_joueur = num_joueur - 1  //petite ligne astucieuse permettant de reboucler sur le même joueur : num_joueur - 1 + 1 -> num_joueur
    }
    Custom script : call RemoveLocation(udg_random_point)  //indispensable pour éviter les fuites de mémoire
}


analysons ça, sachant que moi j'ai un niveau pire que toi en code (je n'ai jamais vu de html de ma vie, je ne comprends rien non plus à ton trigger) :
Code:

]for each (num_joueur) from 1 to 12 {   //for each integer variable
    set random_point = Random point in region_depart <gen>


j'ignore ce qu'il y a écrit après le // comme il a dit et pour moi, c'est exactement ce que tu as mi toi :
Gui:
Trigger:
For each (Integer A) from 1 to nb_loop, do (Actions)


Code:
si ( (terrain cliff level at random point) == 2 ) {


c'est tout simplement ce que tu as écris encore :
Gui:
Trigger:
(Terrain cliff level at random_point) Egal à  2


Code:
        Unité - Créer 1 Captain Kirk for Player(num_joueur) at random_point facing (Random angle) degrees    //fonction : Conversion - Convert Player Index To Player
    }


quoi de plus ressemblant à :
Gui:
Trigger:
Unité - Create 1 Captain Kirk for joueur[nb_joueur] at random_point facing (Random angle) degrees


Code:
    sinon {
        set num_joueur = num_joueur - 1  //petite ligne astucieuse permettant de reboucler sur le même joueur : num_joueur - 1 + 1 -> num_joueur
    }


c'est la que pour moi ça se complique, car j'n'ai pas du totu compris le principe, mais je peux faire l'amalgame avec ça :
Gui:
Trigger:
Set nb_joueur = (nb_joueur + 1)

d'après le commentaire, ça va te permettre de faire un pseudo loop. je ne sais pas c'que ça veut dire exactement dans ton trigger, mais j'pense que toi tu dois savoir ?

Code:
    Custom script : call RemoveLocation(udg_random_point)  //indispensable pour éviter les fuites de mémoire
}


le commentaire dit tout... même si cela ne correspond à rien dans ton trigger, car il l'a rajouté afin que ton trigger ne leak pas.


avec ça moi je ne sais pas vraiment ce que ça fait, car je ne sais pas ce que tu veux faire puisque je ne comprend pas ton trigger de base, mais toi tu sais à quoi tu veux aboutir et il t'a dit que ça faisait ce que tu voulais. en rassemblant les morceaux tu peux enfin comprendre son code Smile
_________________
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé Envoyer l'e-mail
 Max
Floodeur prématuré


Inscrit le: 13 Jan 2009
Messages: 550
Sujets: 47
Spécialité en worldedit: La partie déclencheurs sauf le GUI.


MessagePosté le: 20/04/11 00:50    Sujet du message: Citer

sholva a écrit:
max : dasn ta solution, je ne vois pas à quoi sert ça : "Set num_joueur = (num_joueur - 1)" parce que ça ferai que revenir au joueur précédent, en gros certains joueurs auraient plusieurs héros....
le truc que j'essayais de faire avec ma boucle c'est de définir autant de loop que nécessaire pour être sûr que aucun héro ne popera au milieu d'un falaise (ces cons passent leur temps à faire ça..)...

edit : je viens de tester la solution de max et comme je m'y attendais, je me suis retrouvé avec un nombre énorme de héros...

J'aimerais bien voir le trigger que tu as créé...

J'ai bien compris ce que tu voulais faire.
Mon trigger :
pour un certain joueur (un certain numéro de joueur), on crée un point de façon aléatoire. Si le point convient, on crée le héros. Sinon on ne crée pas de héros, et on fait un nouveau point. Et là rebolote, s'il convient on crée un héros, sinon on reste avec la même valeur de num_joueur (à une boucle on a num_joueur, à la boucle suivante num_joueur - 1 + 1 = num_joueur). Pour un héros, on boucle tant que l'on n'a pas trouvé de point qui nous convient, et une fois qu'on a ce point, on crée le héros, et on passe au joueur suivant.
_________________
Maximaxou@northrend

Projet Max Escape Creation (éditeur d'escapes : mazes/slides) : http://max.slid.free.fr/maxEscapeCreation/
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé
 atchalak
Membre honoraire


Inscrit le: 06 Déc 2010
Messages: 323
Sujets: 16



MessagePosté le: 20/04/11 01:12    Sujet du message: Citer

oui, c'est bien ça, mais avec ta solution ça ne marche pas (étant donné le "set num_joueur = num_joueur - 1"on revient au joueur d'avant ce qui fait que si un héro est alors créé avec la bonne location, il est créé pour le joueur d'avant et certains se retrouvent donc avec beaucoup de héros...), avec la mienne ça marche à moitié disons...
_________________
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé MSN Messenger
 Max
Floodeur prématuré


Inscrit le: 13 Jan 2009
Messages: 550
Sujets: 47
Spécialité en worldedit: La partie déclencheurs sauf le GUI.


MessagePosté le: 20/04/11 01:15    Sujet du message: Citer

Poste comme je t'ai demandé, le déclo que tu as fait en copiant le mien stp. (bouton droit, copier comme texte, dans une balise GUI)
_________________
Maximaxou@northrend

Projet Max Escape Creation (éditeur d'escapes : mazes/slides) : http://max.slid.free.fr/maxEscapeCreation/
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé
 atchalak
Membre honoraire


Inscrit le: 06 Déc 2010
Messages: 323
Sujets: 16



MessagePosté le: 20/04/11 01:21    Sujet du message: Citer

(je sais comment poster un truc en gui)

Gui:
Trigger:
ceation des heros Copier
Collapse Evénements
Temps - Elapsed game time is 0.10 seconds
Conditions
Collapse Actions
Collapse For each (Integer nb_loop) from 1 to 12, do (Actions)
Collapse Boucle - Actions
Set random_point = (Random point in Région 001 <gen>)
Collapse If (All Conditions are True) then do (Then Actions) else do (Else Actions)
Collapse Si - Conditions
(Terrain cliff level at random_point) Egal à  2
Collapse Alors - Actions
Unité - Create 1 Captain Kirk for joueur[nb_joueur] at random_point facing (Random angle) degrees
Unité - Make (Last created unit) Invulnérable
Set nb_joueur = (nb_joueur + 1)
Collapse Sinon - Actions
Set nb_loop = (nb_loop + 1)
Collapse Groupe unité - Pick every unit in (Units within 1000000000.00 of (Center of (Playable map area)) matching (((Matching unit) is Un héros) Egal à  TRUE)) and do (Actions)
Collapse Boucle - Actions
Caméra - Pan camera for (Owner of (Picked unit)) to (Position of (Picked unit)) over 0.00 seconds


avec ce mix entre ton trigger et le meien je passe de 1/2 héros créés pas pour la même personne (mon trigger) ou de 7 héros pour le même joueur (ton trigger) à 5/7 héros chacun pour des joueurs différents
_________________
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé MSN Messenger
 Max
Floodeur prématuré


Inscrit le: 13 Jan 2009
Messages: 550
Sujets: 47
Spécialité en worldedit: La partie déclencheurs sauf le GUI.


MessagePosté le: 20/04/11 01:27    Sujet du message: Citer

Aaaaaah je viens de comprendre ce que vous ne comprenez pas. Je connais la boucle for depuis 8 ans, du coup c'est devenu naturel pour moi.

Code:
for(num_joueur allant de 1 à 10)
    créer un héros

Voila ce qu'il se passe :
_initialisation de num_joueur à 1
_création d'un héros
_num_joueur passe à 2
_création d'un héros
_num_joueur passe à 3
...........
_num_joueur passe à 9
_création d'un héros
_num_joueur passe à 10
_création d'un héros
_num_joueur passe à 11
_sortie de la boucle


============================
Maintenant :
for(num_joueur allant de 1 à 10)
    création d'un héros
    set num_joueur = num_joueur - 1

Voilà ce qu'il se passe :
_initialisation de num_joueur à 1
_création d'un héros
_num_joueur passe à 0
_num_joueur passe à 1
_création d'un héros
_num_joueur passe à 0
_num_joueur passe à 1
_création d'un héros
_num_joueur passe à 0
_num_joueur passe à 1
_création d'un héros
_num_joueur passe à 0
_num_joueur passe à 1
_création d'un héros
......

Et ceci indéfiniment.

_________________
Maximaxou@northrend

Projet Max Escape Creation (éditeur d'escapes : mazes/slides) : http://max.slid.free.fr/maxEscapeCreation/
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé
Montrer les messages depuis:   
Poster un nouveau sujet   Répondre au sujet    Worldedit Index du Forum -> Présentation de vos cartes Toutes les heures sont au format GMT + 1 Heure
Aller à la page Précédente  1, 2, 3, 4, 5, 6, 7  Suivante
Page 2 sur 7
La question posée dans ce topic a été résolue !

 
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