Différences entre les versions de « TESCS2 : Begin »
Aller à la navigation
Aller à la recherche
(Création article) |
(Lien vers Alternatives) |
||
(4 versions intermédiaires par le même utilisateur non affichées) | |||
Ligne 1 : | Ligne 1 : | ||
[[Catégorie: TESCS2 : | [[Catégorie: TESCS2 : Scripting|Blocs de script - Begin End]] | ||
[[Catégorie: TESCS2 : | [[Catégorie: TESCS2 : Fonctions de script|Blocs de script - Begin End]] | ||
[[Catégorie: TESCS2 : Blocs de script|*]] | |||
==Blocs de script== | ==Blocs de script== | ||
Toutes les commandes de script, à l'exception de la déclaration des variables doivent être dans des blocs définis par les commandes Begin … End. Toutefois, les [[TESCS2 : Types de script#Scripts de résultat (Result scripts)|Scripts de résultats]] ne sont pas concernés par les blocs. A chaque fois qu'un script s'exécute, chaque bloc est évalué pour voir si l'événement auquel il se rattache s'est réalisé. Dans le cas contraire, le script qu'il contient ne s'exécute pas. | Toutes les commandes de script, à l'exception de la déclaration des variables doivent être dans des blocs définis par les commandes Begin … End. Toutefois, les [[TESCS2 : Types de script#Scripts de résultat (Result scripts)|Scripts de résultats]] ne sont pas concernés par les blocs. A chaque fois qu'un script s'exécute, chaque bloc est évalué pour voir si l'événement auquel il se rattache s'est réalisé. Dans le cas contraire, le script qu'il contient ne s'exécute pas. | ||
Les [[TESCS2 : Types de script#Scripts d'effet magique|Scripts d'effet magique]] ne peuvent contenir que les blocs suivants : | |||
*[[TESCS2 : ScriptEffectStart|ScriptEffectStart]] | |||
*[[TESCS2 : ScriptEffectFinish|ScriptEffectFinish]] | |||
*[[TESCS2 : ScriptEffectUpdate|ScriptEffectUpdate]] | |||
==Exemple de bloc de script== | ==Exemple de bloc de script== | ||
Ligne 16 : | Ligne 23 : | ||
==Blocs multiple du même type== | ==Blocs multiple du même type== | ||
Les blocs comportant des paramètres peuvent apparaître plusieurs fois dans un script, soit sans paramètre soit avec des paramètres différents. Par exemple ce script est valide : | Les blocs comportant des paramètres peuvent apparaître plusieurs fois dans un script, soit sans paramètre, soit avec des paramètres différents. Par exemple ce script est valide : | ||
begin OnAlarm | begin OnAlarm | ||
Ligne 26 : | Ligne 33 : | ||
Set MaQuete.MouchardRef to GetRef | Set MaQuete.MouchardRef to GetRef | ||
; s'exécute à chaque fois que la référence appelante du script est alarmée par un crime commis par le PJ | ; s'exécute à chaque fois que la référence appelante du script est alarmée par un crime commis par le PJ | ||
; '''Attention :''' le bloc OnAlarm sans paramètre s'est | ; '''Attention :''' le bloc OnAlarm sans paramètre s'est exécuté également. | ||
end | end | ||
Ligne 37 : | Ligne 44 : | ||
==Tableau des commandes de bloc== | ==Tableau des commandes de bloc== | ||
Les paramètres entre crochets [ ] sont optionnels, donc non obligatoires. | Les paramètres entre crochets [ ] sont optionnels, donc non obligatoires. | ||
{|border="1" cellpadding="5" cellspacing="0" | {|border="1" cellpadding="5" cellspacing="0" | ||
Ligne 98 : | Ligne 104 : | ||
|- | |- | ||
|[[TESCS2 : OnKnockout|OnKnockout]] | |[[TESCS2 : OnKnockout|OnKnockout]] | ||
|[ActorID] | |[ActorID] | ||
|S'exécute une fois, lorsque l'acteur appelant est mis KO par un acteur | |S'exécute une fois, lorsque l'acteur appelant est mis KO par un acteur, ou cet acteur. | ||
|- | |- | ||
|[[TESCS2 : OnLoad|OnLoad]] | |[[TESCS2 : OnLoad|OnLoad]] | ||
Ligne 151 : | Ligne 157 : | ||
|[[TESCS2 : OnUnequip|OnUnequip]] | |[[TESCS2 : OnUnequip|OnUnequip]] | ||
|[ContainerRefID] | |[ContainerRefID] | ||
|S'exécute une fois lorsque l'objet est déséquipé par l'acteur | |S'exécute une fois lorsque l'objet appelant est déséquipé par l'acteur ou container indiqué. | ||
|- | |- | ||
|[[TESCS2 : ScriptEffectStart|ScriptEffectStart]] | |[[TESCS2 : ScriptEffectStart|ScriptEffectStart]] | ||
Ligne 165 : | Ligne 171 : | ||
|S'exécute en continu pendant un effet magique (scripts d'effet uniquement). | |S'exécute en continu pendant un effet magique (scripts d'effet uniquement). | ||
|} | |} | ||
==Voir également== | |||
*[[TESCS2 : Alternatives|Alternatives - Les blocs If... Else]] |
Version actuelle datée du 4 avril 2007 à 07:15
Blocs de script
Toutes les commandes de script, à l'exception de la déclaration des variables doivent être dans des blocs définis par les commandes Begin … End. Toutefois, les Scripts de résultats ne sont pas concernés par les blocs. A chaque fois qu'un script s'exécute, chaque bloc est évalué pour voir si l'événement auquel il se rattache s'est réalisé. Dans le cas contraire, le script qu'il contient ne s'exécute pas.
Les Scripts d'effet magique ne peuvent contenir que les blocs suivants :
Exemple de bloc de script
Begin GameMode If DejaFait == 0 Set MaQuete.pnj1Ref to GetRef ; transmettre la référence vers le script de quête Set DejaFait to 1 ; pour ne faire qu'une fois EndIf If …/… etc. End
Blocs multiple du même type
Les blocs comportant des paramètres peuvent apparaître plusieurs fois dans un script, soit sans paramètre, soit avec des paramètres différents. Par exemple ce script est valide :
begin OnAlarm Set MaQueteTemoinRef to GetRef ; s'exécute à chaque fois que la référence appelante du script est alarmée par un criminel quelconque end
begin OnAlarm player Set MaQuete.MouchardRef to GetRef ; s'exécute à chaque fois que la référence appelante du script est alarmée par un crime commis par le PJ ; Attention : le bloc OnAlarm sans paramètre s'est exécuté également. end
begin OnAlarm Bandit1Ref Set MaQuete.TemoinCrime1Ref to GetRef ; s'exécute à chaque fois que la référence appelante du script est alarmée par un crime commis par Bandit1Ref ; Attention : le bloc OnAlarm sans paramètre s'est exécuté également . End
Tableau des commandes de bloc
Les paramètres entre crochets [ ] sont optionnels, donc non obligatoires.
Type de bloc | Paramètres | Description |
---|---|---|
GameMode | . | Ce bloc s'exécute à chaque fois, selon la Périodicité d'exécution du script, lorsque le jeu n'est pas en Mode Menu. La plupart des Scripts nommés utilisent ce type de bloc, sauf les Scripts d'effet magique. |
MenuMode | [MenuType] | S'exécute lorsque le jeu est en Mode Menu c'est à dire lorsqu'une fenêtre quelconque (de dialogue, d'inventaire…) est affichée, ou ce type de menu est affiché |
OnActivate | . | S'exécute une seule fois, à chaque fois que l'objet est activé, à la place de l'activation par défaut. |
OnActorEquip | ObjectID | S'exécute une seule fois, à chaque fois que l'acteur appelant équipe l'article (Item) spécifié. |
OnActorUnequip | ObjectID | S'exécute une seule fois, à chaque fois que l'acteur appelant déséquipe l'objet spécifié. |
OnAdd | [ContainerRefID] | S'exécute une seule fois, à chaque fois que l'article (Item) appelant est ajouté à un inventaire, ou cet inventaire. |
OnAlarm | CrimeType, [Criminel] | S'exécute une seule fois, à chaque fois que l'acteur appelant reçoit une alarme pour le crime spécifié, commis par un criminel (acteur), ou par ce criminel |
OnAlarmVictim | CrimeType, [Victime] | S'exécute une seule fois, à chaque fois que l'acteur appelant reçoit une alarme pour le crime spécifié, commis contre une victime (acteur), ou cette victime. |
OnDeath | [ActorID] | S'exécute une fois, lorsque l'acteur appelant est tué par un acteur, ou cet autre acteur. |
OnDrop | [ContainerRefID] | S'exécute une fois, lorsque l'objet (Item) est jeté hors d'un container, ou de ce container. |
OnEquip | [ActorID] | S'exécute une fois, lorsque l'objet (Item) est équipé par un acteur, ou cet acteur. |
OnHit | [ActorID] | S'exécute une fois, lorsque l'acteur appelant est frappé par un acteur, ou cet acteur. |
OnHitWith | [ObjectID] | S'exécute une fois, lorsque l'acteur appelant est frappé par une arme, ou cette arme. |
OnKnockout | [ActorID] | S'exécute une fois, lorsque l'acteur appelant est mis KO par un acteur, ou cet acteur. |
OnLoad | . | S'exécute une fois, lorsque l'objet 3D associé à l'objet appelant est chargé. |
OnMagicEffectHit | EffectID | S'exécute une fois, lorsque l'acteur cible est frappé par l'effet magique spécifié. |
OnMurder | [ActorID] | S'exécute une fois, lorsque l'acteur appelant est assassiné par un acteur, ou cet acteur. |
OnPackageChange | PackageID | S'exécute une fois, lorsque l'acteur appelant remplace ce package par un autre. |
OnPackageDone | PackageID | S'exécute une fois, lorsque l'acteur appelant termine ce package. |
OnPackageStart | PackageID | S'exécute une fois, lorsque l'acteur appelant démarre ce package. |
OnReset | . | S'exécute une fois, lorsque la cellule (cell) de l'objet appelant est réinitialisée (reset). |
OnSell | [SellerRefID] | S'exécute une fois, lorsque l'objet appelant (Item) est vendu par quelqu'un, ou par ce vendeur. |
OnStartCombat | [TargetActorID] | S'exécute une fois, lorsque l'acteur appelant commence un combat avec un acteur, ou cet acteur. |
OnTrigger | [TriggeringRefID] | S'exécute une fois, lorsque l'objet appelant entre en collision avec un objet, ou cet objet. |
OnTriggerActor | [TriggeringRefID] | S'exécute une fois, lorsque l'objet appelant entre en collision avec un acteur, ou cet acteur. |
OnTriggerMob | [TriggeringRefID] | S'exécute une fois, lorsque l'objet appelant entre en collision avec un objet mobile, ou cet objet mobile (acteur, flèche, projectile magique) |
OnUnequip | [ContainerRefID] | S'exécute une fois lorsque l'objet appelant est déséquipé par l'acteur ou container indiqué. |
ScriptEffectStart | . | S'exécute une fois lors du lancement d'un effet magique (scripts d'effet uniquement). |
ScriptEffectFinish | . | S'exécute une fois lors de la fin d'un effet magique (scripts d'effet uniquement). |
ScriptEffectUpdate | . | S'exécute en continu pendant un effet magique (scripts d'effet uniquement). |