LlTakeControls/fr

From Second Life Wiki

Jump to: navigation, search

Fonction: llTakeControls( integer contrôles à intercepter, integer accept, integer transf );

Permet a un script d'intercepter des actions sur le clavier et la souris de l'avatar qui en a donné la permission.

• integer contrôles à intercepter Combinaison des constantes CONTROL_* (ou logique entre les différentes constantes)
• integer accept Booléen : TRUE : Activation de l'interception - FALSE : désactivation
• integer transf Booléen : TRUE : Les actions interceptees sont aussi transmises au controle de l'avatar - FALSE : Les actions ne sont pas transmises.


Nécessite le droit PERMISSION_TAKE_CONTROLS pour s'exécuter
Si l'interception est activée les événements control seront déclenchés.

Constantes Valeurs Descriptions
CONTROL_FWD 0x00000001 Déplacement vers l'avant
CONTROL_BACK 0x00000002 Déplacement vers l'arrière
CONTROL_LEFT 0x00000004 Déplacement vers la gauche
CONTROL_RIGHT 0x00000008 Déplacement vers la droite
CONTROL_ROT_LEFT 0x00000100 Rotation vers la gauche
CONTROL_ROT_RIGHT 0x00000200 Rotation vers la droite
CONTROL_UP 0x00000010 Déplacement vers le haut
CONTROL_DOWN 0x00000020 Déplacement vers le bas
CONTROL_LBUTTON 0x10000000 Bouton gauche de la souris
CONTROL_ML_LBUTTON 0x40000000 Bouton gauche de la souris en vue subjective

Inconvénients

  • Ne vous reposez pas sur les droits accordés automatiquement à soi-même. Utilisez toujours l'évènement run_time_permissions.
  • Si le script n'a pas le droit PERMISSION_TAKE_CONTROLS, il renverra (en criant) une erreur sur le canal DEBUG_CHANNEL et l'opération échouera (mais le script continuera à s'exécuter).
  • Une fois que le droit PERMISSION_TAKE_CONTROLS est accordé, il n'y a pas moyen de le révoquer. Le script ne perdra le droit que s'il est réinitialisé ou si l'objet est retiré du monde (supprimé, détaché ou pris).

Exemples

Notes

Une fois que le script a acquis le droit de "prise de controle", il ne pourra pas être stoppé dans une zone no-script. Cette option est utile pour que les véhicules et les AO fonctionnent dans ces zones (l'utilisation de certaines fonctions (sur liste noire) peut quand même conduire à l'arrêt du script).

Voir également

Evènement

•  run_time_permissions Évènement de réception des droits
•  control Evènement déclenché par une action de l'agent.

Fonctions

•  llGetPermissions Renvoie les droits accordés
•  llGetPermissionsKey Renvoie l'agent qui a accordé les droits
•  llRequestPermissions Demande des droits
•  lReleaseControls Désactive la détection des actions de l'agent

Articles

•  Droit des scripts Article sur les droits
Personal tools