Voir le sujet précédent :: Voir le sujet suivant |
Auteur |
Message |
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...)
|
Posté le: 19/02/12 21:55 Sujet du message: |
|
|
Je jetterais un oeil là dessus la semaine prochaine (là ce soir je n'ai pas envie et je serais indisponible la semaine prochaine), dans ton intérêt je te conseille d'attendre avant de poster ta ressource sur hiveworkshop, mais bon fais comme tu le sens. _________________
|
|
Revenir en haut |
|
|
Wareditor The Master of Nothing
Inscrit le: 22 Déc 2008 Messages: 1638 Sujets: 88 Spécialité en worldedit: Effacer
|
Posté le: 19/02/12 21:58 Sujet du message: |
|
|
Je ne compte pas poster avant ton acceptation final ( le Deindex est correcte ? ). _________________
|
|
Revenir en haut |
|
|
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...)
|
Posté le: 19/02/12 22:04 Sujet du message: |
|
|
Bah cette méthode est inutile il faudrait utiliser ma nouvelle méthode onDeindex.
Mais bon j'ai la flemme on verra cela la semaine prochaine. _________________
|
|
Revenir en haut |
|
|
Wareditor The Master of Nothing
Inscrit le: 22 Déc 2008 Messages: 1638 Sujets: 88 Spécialité en worldedit: Effacer
|
Posté le: 19/02/12 22:17 Sujet du message: |
|
|
Je l'utilise ( dans le code que j'ai mis en ligne ), mais la je reçoit une erreur lors du remove d'une unit :
UnitLL.removeThis() : it is for remove a UnitLL instance for a UnitLL head, don't use it on a head.
If you want to clear a whole UnitLL, use the method clear() on a UnitLL head.
Mais bon on verra ca plus tard. _________________
|
|
Revenir en haut |
|
|
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...)
|
Posté le: 04/03/12 19:03 Sujet du message: |
|
|
Autant pour moi j'avais mal lu.
Pas le temps et l'envie de regarder plus mais à priori là ca serait plus une mauvaise utilisation de la method onDeindex de ta part.
Après, je ne sais pas trop si je suis suffisamment clair dans mes exemples :s
J'ai mis à jour UnitLL.
Même chose, je ne serais pas dispo dans la semaine qui vient.
Si le problème reste d'actualité avec la nouvelle version de UnitLL, alors je me pencherais dessus le week end prochain.
Le lien de la map que tu donnes dans ce post n'est pas valide.
Ton problème vient de ta method deIndex, tu tentes d'utiliser destroy sur une instance d'une UnitLL head et non pas sur une UnitLL head.
Tu devrais plutôt utiliser removeThis et aussi la method getDeindexing.
Mais bon en fait c'est inutile, quand une unité est "desindéxée" (supprimée de la partie), elle sera forcément supprimé de chaque UnitLL où elle était présente.
L'intérêt de la method onDeindex est si tu as besoin d’exécuter du code avant qu'elle soit remove, imaginons par ex que tu lui avait attaché un effet special.
Ici c'est inutile. _________________
Dernière édition par Troll-Brain le 28/07/12 18:55; édité 1 fois |
|
Revenir en haut |
|
|
Wareditor The Master of Nothing
Inscrit le: 22 Déc 2008 Messages: 1638 Sujets: 88 Spécialité en worldedit: Effacer
|
Posté le: 04/03/12 21:08 Sujet du message: |
|
|
Voici un lien qui devrais marcher.
Télécharger la map _________________
|
|
Revenir en haut |
|
|
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...)
|
Posté le: 04/03/12 23:05 Sujet du message: |
|
|
Ça me met directement au stage 5, et une fois les 5 "boutons" enclenchés les "murs" de lumière ne s'effacent pas.
Tout ce que je voudrais c'est pouvoir visualiser le mouvement "irrationnel" que tu as décris plus haut.
Sache toutefois que le mouvement d'une unité (bonus compris) ne peut jamais dépasser 522 (c'est codé en dur), mais que grâce à ce code on peut simuler une plus grande vitesse. _________________
|
|
Revenir en haut |
|
|
Wareditor The Master of Nothing
Inscrit le: 22 Déc 2008 Messages: 1638 Sujets: 88 Spécialité en worldedit: Effacer
|
Posté le: 04/03/12 23:19 Sujet du message: |
|
|
C'est une erreur de ma part.
Voila la Map. Sinon si tu lances normalement elle ne montrera aucun cas d’irrégularité. Il faudra que tu fasse ce que j'indique plus haut.
Et donc sa gène le fait qu'on puisse dépasser 522 ? _________________
|
|
Revenir en haut |
|
|
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...)
|
Posté le: 04/03/12 23:31 Sujet du message: |
|
|
Citation: | Et donc sa gène le fait qu'on puisse dépasser 522 ? |
Ce que je veux dire c'est que le déplacement d'une unité ne dépassera jamais 522, même si tu donnes une valeur supérieure dans l'éditeur d'objet, et lui ajoute des bonus de vitesse.
Evidemment tu peux émuler des vitesses plus grandes en déplaçant l'unité par trigger, comme le fait ce code.
Il est donc évident que si tu tentes de donner une vitesse supérieure à 522, le mouvement ne sera pas "cohérent", hormis si tu le corriges périodiquement, comme avec ce code par exemple.
PS : D'ailleurs ca me fait penser qu’actuellement la vitesse de l'unité sera "corrigée" à celle qui a été demandée même si elle subit un bonus/malus de vitesse.
Mais bon je suppose que changer la vitesse de cette façon ne devrait pas être autorisé avec un tel système, sinon on perdrait la notion de synchronisation (m'enfin je te laisse réfléchir à ce propos, c'est toi l'utilisateur) _________________
Dernière édition par Troll-Brain le 04/03/12 23:36; édité 1 fois |
|
Revenir en haut |
|
|
Wareditor The Master of Nothing
Inscrit le: 22 Déc 2008 Messages: 1638 Sujets: 88 Spécialité en worldedit: Effacer
|
Posté le: 04/03/12 23:35 Sujet du message: |
|
|
Je donne pas de vitesse supérieur a 522, déjà parce que je connaissais la limite et surtout que j en pas ( encore ) besoin. Donc l’irrégularité ne vient pas de la. _________________
|
|
Revenir en haut |
|
|
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...)
|
Posté le: 04/03/12 23:39 Sujet du message: |
|
|
Check mon PS (edit), je précise que je n'ai pas testé la map, ni visualisé le code. _________________
|
|
Revenir en haut |
|
|
Wareditor The Master of Nothing
Inscrit le: 22 Déc 2008 Messages: 1638 Sujets: 88 Spécialité en worldedit: Effacer
|
Posté le: 04/03/12 23:51 Sujet du message: |
|
|
C'est pas ça qui est important dans immédiate... bas il faudrait check la vitesse de l'unit a chaque loop ( GetUnitMoveSpeed() prend en compte les bonus ? ) mais cela rendrai le tout plus long a calculer pour quelque-chose de pas directement lié avec le but du systeme. Je pourrais comme même faire deux boucle : une plus "rapide" et un qui prendrai en compte les changement de vitesse. Ou bien mettre le tout dans une boucle. _________________
|
|
Revenir en haut |
|
|
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...)
|
Posté le: 09/03/12 22:03 Sujet du message: |
|
|
Oh moi je dis cela c'est pour toi, je m'en fous hein, c'était juste une constatation.
Comme tu ne sembles pas avoir compris une de mes remarques précédentes :
Jass: | static method DeIndex takes nothing returns nothing
local integer id = GetUnitId(GetIndexedUnit())
local thistype this = CustomData[id]
call this.destroy()
endmethod |
->>
Jass: | static method DeIndex takes nothing returns nothing
local integer id = GetUnitId(GetIndexedUnit())
local thistype this = CustomData[id]
call this.removeThis()
endmethod |
C'était peut être une erreur de ma part, je veux dire je n'aurais peut être pas du rendre disponible la method removeThis et laisser simplement destroy disponible, qui gérerait automatiquement la fonction nécessaire à appeler, selon que ca soit une UnitLL head, ou bien une instance de UnitLL.
Mais je trouvais nécessaire de les différencier explicitement, une UnitLL head étant un "group", et une instance d'une UnitLL head : un espace où est stockée une unité.
Je peux encore changer ce comportement cela dit, de toute façon personne hormis toi ne semble utiliser cette library, je peux même préserver en quelque sorte la "backward compatibility" comme je lai fait avec enum et getUnit().
Cela dit, l'utilisation de la method onDeindex reste inutile ici, car une unité remove du jeu le sera automatiquement d'une UnitLL, et donc elle ne sera plus gérée dans la loop.
Comme je l'ai déjà dit, cette méthode s'avère nécessaire quand on a besoin d’exécuter du code lorsqu'une unité est supprimée du jeu, tel que par exemple supprimer ses effets spéciaux attachés.
Sinon sans changer ton code, avec la nouvelle version de UnitLL, quel message s'affiche quand tu remove une unité ? _________________
Dernière édition par Troll-Brain le 09/03/12 22:28; édité 1 fois |
|
Revenir en haut |
|
|
Wareditor The Master of Nothing
Inscrit le: 22 Déc 2008 Messages: 1638 Sujets: 88 Spécialité en worldedit: Effacer
|
Posté le: 09/03/12 22:27 Sujet du message: |
|
|
Je veux pas remove l'unit de la UnitLL mais de LinearPatrol. En plus j'ai pris en compte ta remarque, j'ai juste pas update le code.
J'ai test avec la new version et j'ai toujours le même message.
Tu as regarde les mouvements sans mon LP ? _________________
|
|
Revenir en haut |
|
|
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...)
|
Posté le: 09/03/12 22:32 Sujet du message: |
|
|
Wareditor a écrit: | Je veux pas remove l'unit de la UnitLL mais de LinearPatrol. |
Ok, j'avais pas fait gaffe.
Citation: | En plus j'ai pris en compte ta remarque, j'ai juste pas update le code. |
Je ne suis pas devin.
Citation: | J'ai test avec la new version et j'ai toujours le même message. |
Impossible, étant donné que j'ai changé le texte des messages de debug.
T'as du retesté avec la précédente version.
Citation: | Tu as regarde les mouvements sans mon LP ? |
Non.
EDIT : J'ai édité mon précédent message pour plus de clarté. _________________
|
|
Revenir en haut |
|
|
|