OVH Cloud OVH Cloud

[DIR 8.5] scriptInstanceList

12 réponses
Avatar
Pozzo
Salut
je me lance dans les parents, enfants, ancetres et autres joyeusetés... ça
marche mais j'ai un problème général : quand je manipule le
"scriptInstanceList" d'une image objet créée avec un puppetSprite, les
comportements que je lui ai ajouté lui restent collés pendant toute la durée
de l'anim. J'ai beau vider la scriptInstanceList, virer le puppetSprite,
rien n'y fait : les comportements suivants ne sont plus pris en compte.
zavez une chtite idée ?

10 réponses

1 2
Avatar
Lionel Morin
Salut

J'avais eu ce genre de problème.
Je l'avais résolu (merci James) en utilisant la commande :
sprite(x).scriptInstanceList.append(me)
au lieu de :
sprite(x).scriptInstanceList.add(me)

hth

A+
Lionel Morin
Avatar
j'patauge webforumsuser
t'a bien longtemps que je n'ai joué avec la généalogie de dir
mais je crois me souvenir de

si cela t'aide tant mieux

on endsprite me
sprite(me.spritenum).scriptInstanceList = []
end
Avatar
Pozzo
> sprite(x).scriptInstanceList.append(me)



beh chez moi ça marche pas... dommage
Avatar
Pozzo
> on endsprite me
sprite(me.spritenum).scriptInstanceList = []
end






j'avais déja essayé beh ça marche pas non plus !
Avatar
padbra
C'est un message de format MIME en plusieurs parties.

------=_NextPart_000_0108_01C37D10.10A392D0
Content-Type: text/plain;
charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable

Salut,
Deux pistes, la premiere se trouve dans l'aide de director concernant la propriete scriptInstanceList :
"Cette propriété peut être testée et définie. Elle ne peut être modifiée que si l'image-objet existe déjà et qu'au moins une instance d'un comportement y est liée. "
or tu utilises du puppetSprite etc...

deuxieme piste :
Ne serait-ce pas parce que (the scriptInstanceList) est une liste de pointeur vers des scripts ?
Ce n'est pas parce que tu vide cette liste que tu as detruit l'instance du script/comportement de la memoire mais détruit seulement un pointeur vers ce script.
question : n'y aurait-il pas un pointeur vers ton script qui traine dans un coin ?

--
--
padbra
--
"Pozzo" a écrit dans le message news: bk96el$2u5$
Salut
je me lance dans les parents, enfants, ancetres et autres joyeusetés... ça
marche mais j'ai un problème général : quand je manipule le
"scriptInstanceList" d'une image objet créée avec un puppetSprite, les
comportements que je lui ai ajouté lui restent collés pendant toute la durée
de l'anim. J'ai beau vider la scriptInstanceList, virer le puppetSprite,
rien n'y fait : les comportements suivants ne sont plus pris en compte.
zavez une chtite idée ?





------=_NextPart_000_0108_01C37D10.10A392D0
Content-Type: text/html;
charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META http-equiv=Content-Type content="text/html; charset=iso-8859-1">
<META content="MSHTML 5.50.4522.1800" name=GENERATOR>
<STYLE></STYLE>
</HEAD>
<BODY>
<DIV><FONT face=Verdana size=2>Salut,</FONT></DIV>
<DIV><FONT face=Verdana size=2>Deux pistes, la premiere se trouve dans l'aide de
director concernant la propriete scriptInstanceList :</FONT></DIV>
<DIV><FONT face=Verdana size=2>"Cette propriété peut être testée et définie.
<STRONG>Elle ne peut être modifiée que si l'image-objet existe déjà et qu'au
moins une instance d'un comportement y est liée</STRONG>. "</FONT></DIV>
<DIV><FONT face=Verdana size=2>or tu utilises du puppetSprite
etc...</FONT></DIV>
<DIV>&nbsp;</DIV>
<DIV><FONT face=Verdana size=2>deuxieme piste :</FONT></DIV>
<DIV><FONT face=Verdana size=2>Ne serait-ce pas parce que (the
scriptInstanceList) est une liste de pointeur vers des scripts ?</FONT></DIV>
<DIV><FONT face=Verdana size=2>Ce n'est pas parce que tu vide cette liste que tu
as detruit l'instance du&nbsp;script/comportement de la memoire mais détruit
seulement un pointeur vers ce script. </FONT></DIV>
<DIV><FONT face=Verdana size=2>question : n'y aurait-il pas un pointeur vers ton
script qui traine dans un coin ?</FONT></DIV>
<DIV><BR><FONT face=Verdana size=2>-- <BR>--<BR>padbra<BR>--</FONT></DIV>
<DIV><FONT face=Verdana size=2>"Pozzo" &lt;</FONT><A
href="mailto:"><FONT face=Verdana
size=2></FONT></A><FONT face=Verdana size=2>&gt; a écrit
dans le message news: </FONT><A
href="mailto:bk96el$2u5$"><FONT face=Verdana
size=2>bk96el$2u5$</FONT></A><FONT face=Verdana
size=2>...</FONT></DIV><FONT face=Verdana size=2>&gt; Salut<BR>&gt; je me lance
dans les parents, enfants, ancetres et autres joyeusetés... ça<BR>&gt; marche
mais j'ai un problème général : quand je manipule le<BR>&gt;
"scriptInstanceList" d'une image objet créée avec un puppetSprite, les<BR>&gt;
comportements que je lui ai ajouté lui restent collés pendant toute la
durée<BR>&gt; de l'anim. J'ai beau vider la scriptInstanceList, virer le
puppetSprite,<BR>&gt; rien n'y fait : les comportements suivants ne sont plus
pris en compte.<BR>&gt; zavez une chtite idée ?<BR>&gt; <BR>&gt;
</FONT></BODY></HTML>

------=_NextPart_000_0108_01C37D10.10A392D0--
Avatar
padbra
Ben ca confirme ce la piste1 de mon post precedent
;o)

--
--
padbra
--
"Pozzo" a écrit dans le message news:
bk9a51$8ug$
ah ben je pense que c'est un bug de Dir : en collant des sprites
physiquement sur les pistes qui seront contrllées par puppetSprite, ça
marche... j'ai trouvé ça sur un obscure forum lingo.

c'est pas très clair tout ça, et ça m'ennuie bien de devoir faire ça à
chaque fois...




"Pozzo" a écrit dans le message de news:
bk96el$2u5$
> Salut
> je me lance dans les parents, enfants, ancetres et autres joyeusetés...


ça
> marche mais j'ai un problème général : quand je manipule le
> "scriptInstanceList" d'une image objet créée avec un puppetSprite, les
> comportements que je lui ai ajouté lui restent collés pendant toute la
durée
> de l'anim. J'ai beau vider la scriptInstanceList, virer le puppetSprite,
> rien n'y fait : les comportements suivants ne sont plus pris en compte.
> zavez une chtite idée ?
>
>




Avatar
Pozzo
ah ben je pense que c'est un bug de Dir : en collant des sprites
physiquement sur les pistes qui seront contrllées par puppetSprite, ça
marche... j'ai trouvé ça sur un obscure forum lingo.

c'est pas très clair tout ça, et ça m'ennuie bien de devoir faire ça à
chaque fois...




"Pozzo" a écrit dans le message de news:
bk96el$2u5$
Salut
je me lance dans les parents, enfants, ancetres et autres joyeusetés... ça
marche mais j'ai un problème général : quand je manipule le
"scriptInstanceList" d'une image objet créée avec un puppetSprite, les
comportements que je lui ai ajouté lui restent collés pendant toute la


durée
de l'anim. J'ai beau vider la scriptInstanceList, virer le puppetSprite,
rien n'y fait : les comportements suivants ne sont plus pris en compte.
zavez une chtite idée ?




Avatar
padbra
Ah, et c'est pas un bug puisque explicite dans l'aide dir.
;o)

--
--
padbra
--
"Pozzo" a écrit dans le message news:
bk9a51$8ug$
ah ben je pense que c'est un bug de Dir : en collant des sprites
physiquement sur les pistes qui seront contrllées par puppetSprite, ça
marche... j'ai trouvé ça sur un obscure forum lingo.

c'est pas très clair tout ça, et ça m'ennuie bien de devoir faire ça à
chaque fois...




"Pozzo" a écrit dans le message de news:
bk96el$2u5$
> Salut
> je me lance dans les parents, enfants, ancetres et autres joyeusetés...


ça
> marche mais j'ai un problème général : quand je manipule le
> "scriptInstanceList" d'une image objet créée avec un puppetSprite, les
> comportements que je lui ai ajouté lui restent collés pendant toute la
durée
> de l'anim. J'ai beau vider la scriptInstanceList, virer le puppetSprite,
> rien n'y fait : les comportements suivants ne sont plus pris en compte.
> zavez une chtite idée ?
>
>




Avatar
Lionel Morin
As-tu fais un Kill dans ton objet, où tu détruis toutes les instances
créées, tous les puppet, toutes les affectations de scripts...
Comme l'a dit padbra, c'est peut-être un pointeur résiduel vers une instance
de script qui fout la zone.
En tout cas même si c'est pas ça, quand on débute avec les objets, c'est
toujours plus propre de mettre un Kill.

hth
Avatar
Pozzo
> Ah, et c'est pas un bug puisque explicite dans l'aide dir.
;o)



oui c'est ce que j'appellerais un bug officiel... et encore... : "Elle ne
peut être modifiée que si l'image-objet existe déja" ... Ils auraient pu
ajouter "physiquement sur une piste".

Bon.

après quelques recherches supplémentaires, il apparait qu'il ne faut tout
simplement pas manipuler le scriptInstanceList d'une piste vide, y compris
(et surtout) après un puppetSprite... Il n'y a pas moyen d'accéder à autre
chose qu'aux pointeurs et de vider de la mémoire les scripts ajoutés
dynamiquement. Dommage pour moi...
1 2