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

objet supprimé mais pas handle, que reste-t-il ?

 
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
 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: 21/07/09 19:49    Sujet du message: objet supprimé mais pas handle, que reste-t-il ? Citer

Je viens de découvrir un bug bizarre. Voici mon déclo de test :

Jass:
function Trig_recreer_heros_Actions takes nothing returns nothing
    local real x = GetUnitX(udg_hero_j[0])
    local real y = GetUnitY(udg_hero_j[0])
    call RemoveUnit(udg_hero_j[0])
    //set udg_hero_j[0] = null
    set udg_hero_j[0] = CreateUnit(Player(0), GetUnitTypeId(udg_hero_j[0]), x, y, 0.)
endfunction

//===========================================================================
function InitTrig_recreer_heros takes nothing returns nothing
    set gg_trg_recreer_heros = CreateTrigger(  )
    call TriggerRegisterPlayerEventEndCinematic( gg_trg_recreer_heros, Player(0) )
    call TriggerAddAction( gg_trg_recreer_heros, function Trig_recreer_heros_Actions )
endfunction


Avec la ligne "set udg_hero_j[0] = null", le héros n'est pas recréé.
Sans, le héros est recréé, ce qui veut dire que malgré que l'unité soit détruite, on peut toujours récupérer son type. Etonnant ^^.

edit : faux -> Je pense que c'est le même bug que pour les structs, les données non objets sont toujours accessibles. Ici le type de l'unité serait un entier faisant partie de l'objet de type unité, et ayant une place bien précise, ce qui permettrait d'y accéder encore après sa suppression (tant qu'on a un pointeur sur son handle).

Enfin bref, c'est un bug. Je me demande si on peut l'exploiter pour ne pas avoir à stocker le type de l'unité dans une variable intermédiaire. Autrement dit, ce bug ne risque-t-il pas d'être corrigé par blizzard dans le futur ?
_________________
Maximaxou@northrend

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


Dernière édition par Max le 21/07/09 20:05; édité 1 fois
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé
 Troll-Brain
Ri1kamoua


Inscrit le: 23 Aoû 2007
Messages: 7143
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: 21/07/09 20:01    Sujet du message: Citer

Navré de te décevoir mais je crois simplement que cela fonctionne car l'unité n'est pas encore removed du jeu, essaye avec un TriggerSleepAction(0.) ou mieux un Timer(0.), et tu constateras par toi même.

Sinon utiliser un bug du jass n'est pas une riche idée dans la période actuelle Razz
_________________
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: 21/07/09 20:04    Sujet du message: Citer

Ah ouais j'avais pas pensé du tout à ça lol.

Pourquoi "dans la période actuelle" ?
_________________
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é
 Troll-Brain
Ri1kamoua


Inscrit le: 23 Aoû 2007
Messages: 7143
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: 21/07/09 20:41    Sujet du message: Citer

Max a écrit:
Pourquoi "dans la période actuelle" ?

Parce qu'ils sortent un nouveau patch et fixent le return bug ?
De là à faire semblant de croire qu'ils en profiteront pour résoudre les bugs connus, il n'y a qu'un pas.

Et puis de manière générale s'appuyer sur un bug peut rendre la map défaillante par la suite si le bug est corrigé ultérieurement, le return bug est vraiment à part, sans lui bien des choses seraient impossibles, et le mapping sur war3 serait bien limité.
Blizzard a bien compris son utilité et propose une fonction native H2I.

Las autres bugs ont des exploitations bien mineures et ne sont pas indispensables, voir tout simplement inutiles. (comme un vrai bug quoi :p).
_________________
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: 21/07/09 20:45    Sujet du message: Citer

OK d'accord Smile
_________________
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 -> Aide sur les déclencheurs Toutes les heures sont au format GMT + 1 Heure
Page 1 sur 1
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