Pages traduites Pages à traduire Pages en cours de traduction
A propos
 

Différences

Cette page vous donne les différences entre la révision choisie et la version actuelle de la page.

ags38 17/12/2008 23:22 ags38 30/01/2012 11:29 version actuelle
Ligne 2: Ligne 2:
---- ----
-====Comprendre les bloquages de scripts====+====Comprendre les blocages de scripts====
Vous verrez certaines commandes listées comme "bloquant l'exécution", où l'exécution du script est Vous verrez certaines commandes listées comme "bloquant l'exécution", où l'exécution du script est
Ligne 34: Ligne 34:
Regardons la situation la plus commune dans laquelle se pose un problème. Regardons la situation la plus commune dans laquelle se pose un problème.
-Supposons que se déclenche l'interaction // Look at inventory item // (//Regarder l'objet d'inventaire//)+Supposons que se déclenche l'événement //Look at inventory item// (//Regarder l'objet d'inventaire//)
qui exécute un code pour afficher un message.\\ qui exécute un code pour afficher un message.\\
- 
Supposons aussi que vous ayez du code à la fin de votre fonction on_mouse_click pour Supposons aussi que vous ayez du code à la fin de votre fonction on_mouse_click pour
-que le personnage reste sur place après avoir exécuté les interactions de la fonction on_mouse_click.\\ \\  +que le personnage reste sur place après avoir exécuté les événements de la fonction on_mouse_click.\\ 
-Vous allez découvrir que le code à la fin de on_mouse_click est en fait appelé // avant // l'interaction avec +Vous allez découvrir que le code à la fin de on_mouse_click est en fait appelé //avant// l'événement correspondant à
l'inventaire. Regardons pourquoi : \\ \\ l'inventaire. Regardons pourquoi : \\ \\
{{:threads4.gif}}  \\ \\ {{:threads4.gif}}  \\ \\
-Rappelez vous qu'AGS n'exécute pas les interactions automatiquement. Plutôt, la fonction+Rappelez vous qu'AGS n'exécute pas les événements automatiquement. Plutôt, la fonction
on_mouse_click gére le clic de la souris et appelle ProcessClick pour exécuter on_mouse_click gére le clic de la souris et appelle ProcessClick pour exécuter
-les interactions appropriées.\\ \\ +les événements appropriées. Ce faisant, AGS remarque que l'événement Look At Item (//Regarder l'Objet d'Inventaire//) 
 +de la clé est associé à une fonction.\\
Mais, oh non ! les scripts des objets d'inventaire sont dans le script global et le fil global Mais, oh non ! les scripts des objets d'inventaire sont dans le script global et le fil global
-est bloqué à cause de l'appel de on_mouse_click. Donc, le script appelé lors de l'interaction avec+est bloqué à cause de l'appel de on_mouse_click. Donc, le script appelé lors de l'événement avec
l'objet d'inventaire est ajouté à la pile du fil et on_mouse_click finit de s'exécuter. Le l'objet d'inventaire est ajouté à la pile du fil et on_mouse_click finit de s'exécuter. Le
-script d'interaction avec l'inventaire suivra après.\\ \\  +script d'événement avec l'inventaire suivra après.\\ \\  
-Vous pourriez penser que cela signifie que les interactions avec les objets et les zones interactives (//hotspots//)+Vous pourriez penser que cela signifie que les événements avec les objets et les zones interactives (//hotspots//)
peuvent s'exécuter à l'intérieur de on_mouse_click, vu qu'ils utilisent le fil de la pièce, peuvent s'exécuter à l'intérieur de on_mouse_click, vu qu'ils utilisent le fil de la pièce,
comme ceci :\\ \\ comme ceci :\\ \\
{{:threads5.gif}}  \\ \\ {{:threads5.gif}}  \\ \\
 +
Cependant, ce n'est pas le cas. C'est toujours le fil global qui apelle ProcessClick, Cependant, ce n'est pas le cas. C'est toujours le fil global qui apelle ProcessClick,
donc le script de la pièce va en fait être exécuté sur le fil global quand celui-ci donc le script de la pièce va en fait être exécuté sur le fil global quand celui-ci
Ligne 62: Ligne 63:
toujours, même si les autres fils sont bloqués.\\ \\ toujours, même si les autres fils sont bloqués.\\ \\
{{:threads6.gif}}  \\ \\ {{:threads6.gif}}  \\ \\
-J'espère que cela aide à expliquer les bloquages de scripts dans AGS.+ 
 +J'espère que cela aide à expliquer les blocages de scripts dans AGS.
Si ce n'est pas clair, parlez-en sur le forum technique. Si ce n'est pas clair, parlez-en sur le forum technique.
{{tag>français révision}} {{tag>français révision}}
 
ags38.1229552568.txt.gz · Dernière modification: 17/12/2008 23:22 par kitai
 
Recent changes RSS feed Creative Commons License Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki