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=9e6604c777eaeef41c41ba1d0ec41317Mé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

TriggerRegisterSBWalksOnAInversefoot ?

 
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
 The Shadow of Death
Membre honoraire


Inscrit le: 07 Mar 2008
Messages: 318
Sujets: 38

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

MessagePosté le: 13/06/08 16:50    Sujet du message: TriggerRegisterSBWalksOnAInversefoot ? Citer

Voilà je voudrais savoir si c'est valide comme code de déclencheur :
Jass:
function TriggerRegisterSBWalksOnAInversefoot takes trigger trig, destructable wichLever returns event
    local region whichRegion = CreateRegion()
    local rect whichRect = RectFromCenterSizeBJ(GetDestructableLoc(whichLever), 75.00, 75.00))
   
    RegionAddRect(region whichRegion, whichRect
    return TriggerRegisterEnterRegion(trig, whichRegion, null)
endfunction


Au moment du RegionAddRect, je suis pas sûr du tout que cela marche... Ce serait trop simple :s
Merci d'avance !
_________________

Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé
 Darkfeyt
Floodeur prématuré


Inscrit le: 22 Nov 2007
Messages: 677
Sujets: 27
Spécialité en worldedit: Jamais sortir ses projets ?


MessagePosté le: 13/06/08 16:57    Sujet du message: Citer

Jass:
    RegionAddRect(region whichRegion, whichRect) 


Je pense plutôt que l'ont écrirai sa comme sa:

Jass:
 call RegionAddRect(whichRegion, whichRect)


Me semble pas avoir vu d'autre erreur.

Sinon tu pourai optimisé ton code , pas besoin de passé par une variable local de rect. (sauf pour la détruire pour évité les leaks mais tu ne le fait même pas Razz )

Tu peut faire sa:

Jass:
function TriggerRegisterSBWalksOnAInversefoot takes trigger trig, destructable wichLever returns event
    local region whichRegion = CreateRegion()
    call RegionAddRect(whichRegion, RectFromCenterSizeBJ(GetDestructableLoc(whichLever), 75.00, 75.00)))
    return TriggerRegisterEnterRegion(trig, whichRegion, null)
endfunction


Néanmoins , cela leak , il faudrait donc detruire le rectangle (donc passé par la variable local) mais j'ai pas l'éditeur sous la main. (Je voulais juste te montrer que ta variable local était dans cette état là inutile.)

Edit: Aussi je viens de remarqué , il y a un leaks de point. (Location)
_________________
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé Envoyer l'e-mail MSN Messenger
 The Shadow of Death
Membre honoraire


Inscrit le: 07 Mar 2008
Messages: 318
Sujets: 38

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

MessagePosté le: 13/06/08 17:37    Sujet du message: Citer

Bon, si tu es sûr que je peux utiliser RegionAddRect, OK je vais optimiser mon code et utiliser cette fonction. Merci bien !
_________________

Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé
 Darkfeyt
Floodeur prématuré


Inscrit le: 22 Nov 2007
Messages: 677
Sujets: 27
Spécialité en worldedit: Jamais sortir ses projets ?


MessagePosté le: 13/06/08 18:48    Sujet du message: Citer

Les variable local sont assez longue a déclaré , pour ton cas (vu que ta fonction doit s'exécuter sans attente) j'utiliserai des variables globals.

Sinon c'est vrai que pour un TriggerRegister , si ce n'est utilisé qu'a l'initialisation ou peu souvent , c'est loin d'être un drame.

Edit: J'ai des petits doute sur si la région leaks , car théoriquement seul l'objet retourner ne leaks pas (car les référence sont toujours présente).
Mais la tu utilise une région qui ne sera a priori jamais détruit , alors la solution reste soit un timer ou soit un ExecuteFunction avec un wait dans la fonction exécuté. (Je pense que la seconde est la meilleur)
_________________
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé Envoyer l'e-mail MSN Messenger
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