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

Restaurer un rectangle supprimé?

 
Poster un nouveau sujet   Répondre au sujet    Worldedit Index du Forum -> Aide sur les déclencheurs
Voir le sujet précédent :: Voir le sujet suivant  
Auteur Message
 Mainguet
Membre honoraire


Inscrit le: 16 Juil 2010
Messages: 298
Sujets: 17
Spécialité en worldedit: Faire compliqué quand il peut faire facile.


MessagePosté le: 24/08/11 01:46    Sujet du message: Restaurer un rectangle supprimé? Citer

Bonjour!

Mon petit problême: J'utilise un rectangle pour observer un événement et dois ensuite le supprimer tout en devant obligatoirement le restaurer plus tard, mais je ne sais pas vraiment comment m'y prendre. Merci d'avance (une réponse en jass si possible est la bienvenue).

Je sais cependant qu'une certaine créature appelée Max l'a déjà fait donc ne me prenez pas pour une quiche Surprised

Merci d'avance.
_________________
Le naab? C'est moi!

Jass:
call KillUnit(Mainguet)
// même le KillUnit me semble faux


Naab un jour... naab toujours!!!
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé
 Beubeu
Ptit Nouveau


Inscrit le: 06 Juil 2009
Messages: 43
Sujets: 6



MessagePosté le: 24/08/11 07:44    Sujet du message: Citer

Qu'entends-tu par rectangle? Une region?
_________________
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé
 Mainguet
Membre honoraire


Inscrit le: 16 Juil 2010
Messages: 298
Sujets: 17
Spécialité en worldedit: Faire compliqué quand il peut faire facile.


MessagePosté le: 24/08/11 13:55    Sujet du message: Citer

Eh bien un rectangle... warcraft considère deux types apparents assez ambigus à mon goût, les rectangles (rect) et les regions (region). Dans ce cas là, je pense qu'il doit s'agir d'un rectangle contenu dans une région tel que lors d'un événement où une unité entre dans une région telle que précédemment décrite, le rectangle contenu dans la région soit détruit.

Et évidemment, ça embrouille facilement... car je ne sais pas vraiment comment on peut recréer un rectangle qui a été supprimé via la fonction
Jass:
RemoveRect(rect)


Est-il toujours contenu dans la région à laquelle il appartient?

Et dans ce cas, faire que "region1=udg_region" et ajouter l'évènement pour la région "udg_region" serait suffisant? Voilà ce que je voudrais savoir.
_________________
Le naab? C'est moi!

Jass:
call KillUnit(Mainguet)
// même le KillUnit me semble faux


Naab un jour... naab toujours!!!
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé
 Troll-Brain
Ri1kamoua


Inscrit le: 23 Aoû 2007
Messages: 7146
Sujets: 147
Spécialité en worldedit: le troll, le flood, la vulgarité, mon coeur balance
Médailles: 2 (En savoir plus...)
Grand mage créateur de sort (Quantité : 1) Rédacteur de tuto #3 (Quantité : 1)

MessagePosté le: 24/08/11 14:40    Sujet du message: Citer

Que veux tu faire exactement ?

Sache toute fois que les régions rajoutent les rect et cell "par valeur", et non "par référence", j'entends par là que RegionAddRect ajoute le rect, mais une suppression ou modification du rect n'a pas d'effet sur la région une fois celui ci ajouté à celle ci.
Donc si tu n'as plus besoin du rect ultérieurement autant le supprimer après l'avoir ajouté à la région.

Il est aussi tout à fait possible de modifier une region, l'event associé en prendra compte, en fait c'est logique, par ex avec un event d'unité spécifique, ce n'est pas parce que tu morph l'unité que l'event ne se déclenche plus.
_________________
Le violet, c'est moche.
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé
 Mainguet
Membre honoraire


Inscrit le: 16 Juil 2010
Messages: 298
Sujets: 17
Spécialité en worldedit: Faire compliqué quand il peut faire facile.


MessagePosté le: 26/08/11 03:21    Sujet du message: Citer

Effectivement je commence à comprendre.

Si je supprime le rectangle contenu dans la région x, je ne pourrais plus l'utiliser avec l'évènement de la région x mais devrais redéfinir la région x tel que région y =région x et l'utiliser avec la région y et redéfinir de la même manière à chaque fois qu'il y a un cycle (tout en ajoutant l'évènement, évidemment)?

Si j'ai bon, merci. Sinon... Je ne sais pas Smile


(En fait je veux pouvoir réutiliser un évènement pour un certain rectangle après avoir supprimé ce dernier)
_________________
Le naab? C'est moi!

Jass:
call KillUnit(Mainguet)
// même le KillUnit me semble faux


Naab un jour... naab toujours!!!
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé
 Troll-Brain
Ri1kamoua


Inscrit le: 23 Aoû 2007
Messages: 7146
Sujets: 147
Spécialité en worldedit: le troll, le flood, la vulgarité, mon coeur balance
Médailles: 2 (En savoir plus...)
Rédacteur de tuto #3 (Quantité : 1) Grand mage créateur de sort (Quantité : 1)

MessagePosté le: 26/08/11 15:06    Sujet du message: Citer

Mainguet a écrit:
Si je supprime le rectangle contenu dans la région x, je ne pourrais plus l'utiliser avec l'évènement de la région x mais devrais redéfinir la région x tel que région y =région x et l'utiliser avec la région y et redéfinir de la même manière à chaque fois qu'il y a un cycle (tout en ajoutant l'évènement, évidemment)?


Non.

objet -> structure plus ou moins complexe de données (par ex integer, unit, ...)

pointeur -> adresse d'un objet

passer une variable par référence -> on recopie son pointeur, son adresse.
On ne créé pas un nouveau objet.

Exemple :

set objet2 = objet1, objet2 va récupérer le pointeur de objet1, objet2 n'est pas un nouvel objet créé, il correspond à objet1.
Autrement dit les variables objet1 ou objet2 correspondront au même objet.
Pense aux variables unités comme référence.

passer une variable par valeur -> on copie le contenu de la variable, on créé un nouvel objet indépendant de la source.

Exemple :

set entier2 = entier1, entier2 copie la valeur de entier1, les 2 variables restent indépendantes, changer la valeur de entier1 ne modifiera pas la valeur de entier 2 et vis versa.

Le jass ne permet pas de choisir le mode de transfert (par référence/valeur), il est dépendant du type de la variable et/ou de la fonction native les utilisant.
Il existe toutefois des mécanismes de copie en utilisant des fonctions.

Petite paranthèse : l'anglais ne fait pas la différence entre le pointeur d'un objet et l'objet en lui même (handle dans les 2 cas)

Sauf cas particuliers (comme avec les rect et Region...Add/Remove/Clear...Rect), les seuls types de variables qui se passent par valeur sont :

integer = entier
boolean = booléen
real = réél

Le reste étant passé "par référence" sauf cas particulier.

Le cas des string et boolexpr est un peu plus complexe, mais tu peux pour simplifier admettre, (même si c'est faux) que les strings se passent par valeur et les boolexpr et autres dérivés par référence.

Quand aux events ils sont passés par référence avec TriggerRegister..., mais il n'est pas possible de changer le pointeur une fois enregistré, par contre il est tout à fait possible de modifier l'objet ansi enregistré.

Citation:
(En fait je veux pouvoir réutiliser un évènement pour un certain rectangle après avoir supprimé ce dernier)


Tu n'est pas obligé de détruire le rect en lui même dans ce cas, tu l'ajoutes ou le retires à ta région (variable globale), selon que tu veuilles que cette zone soit pris en compte ou non par l'event.
En effet les fonctions Region... prennent les rect "par valeur"

Par contre je n'ai jamais testé comment réagissent les event enter/leave d'une région au moment du retrait/ajout de rects et que des unités se trouvent dans cette zone, à tester.
_________________
Le violet, c'est moche.
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé
 Troll-Brain
Ri1kamoua


Inscrit le: 23 Aoû 2007
Messages: 7146
Sujets: 147
Spécialité en worldedit: le troll, le flood, la vulgarité, mon coeur balance
Médailles: 2 (En savoir plus...)
Grand mage créateur de sort (Quantité : 1) Rédacteur de tuto #3 (Quantité : 1)

MessagePosté le: 27/08/11 16:53    Sujet du message: Citer

capiche ?
_________________
Le violet, c'est moche.
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé
 Mainguet
Membre honoraire


Inscrit le: 16 Juil 2010
Messages: 298
Sujets: 17
Spécialité en worldedit: Faire compliqué quand il peut faire facile.


MessagePosté le: 27/08/11 17:27    Sujet du message: Citer

Oui.
_________________
Le naab? C'est moi!

Jass:
call KillUnit(Mainguet)
// même le KillUnit me semble faux


Naab un jour... naab toujours!!!
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: 18/12/11 22:07    Sujet du message: Citer

bonjour, je suis intéressé aujourd'hui par les rectangles du monsieur.
comment j'en fais un ? je fais une variable de type rect et je lui met comme valeur 2 points ?
_________________
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
 Troll-Brain
Ri1kamoua


Inscrit le: 23 Aoû 2007
Messages: 7146
Sujets: 147
Spécialité en worldedit: le troll, le flood, la vulgarité, mon coeur balance
Médailles: 2 (En savoir plus...)
Grand mage créateur de sort (Quantité : 1) Rédacteur de tuto #3 (Quantité : 1)

MessagePosté le: 20/12/11 10:51    Sujet du message: Citer

spour fer koi ?

Puis, le recyclage de topic c'est bien mais faut pas en abuser, ça me semble inapproprié ici.
_________________
Le violet, c'est moche.
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 -> Aide sur les déclencheurs 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