Contents Up Previous Next

Fonctions de Jeu / Globales

AbortGame
CallRoomScript
ClaimEvent
Debug
DeleteSaveSlot
DisableInterface
EnableInterface
EndCutscene
GetGameOption
GetGameParameter
GetGameSpeed
GetGlobalInt
GetGraphicalVariable
GetLocationName
GetLocationType
GetSaveSlotDescription
GetTextHeight
GetTextWidth
GetTranslation
GiveScore
InputBox
InventoryScreen
IsGamePaused
IsInterfaceEnabled
IsInteractionAvailable
IsKeyPressed
IsTimerExpired
IsTranslationAvailable
MoveCharacterToHotspot
MoveCharacterToObject
PauseGame
ProcessClick
QuitGame
Random
RestartGame
RestoreGameDialog
RestoreGameSlot
RunAGSGame
SaveGameDialog
SaveGameSlot
SaveScreenShot
SetAmbientTint
SetGameOption
SetGameSpeed
SetGlobalInt
SetGraphicalVariable
SetMultitaskingMode
SetNormalFont
SetRestartPoint
SetTextWindowGUI
SetTimer
SkipUntilCharacterStops
StartCutscene
UpdateInventory
UnPauseGame
Wait
WaitKey
WaitMouseKey
GlobalMessages propriété
GlobalStrings propriété
TranslationFilename propriété


AbortGame

AbortGame(string message, ...)
Arrête le jeu et retourne au système d'exploitation (OS).

La fenêtre standard d'erreur d'AGS est affichée, contenant les numéros de ligne du script et le code d'appel, ainsi que le message (dans lequel vous pouvez utiliser les codes variables %d et %s).

Vous pouvez utiliser cette fonction plutôt que QuitGame lorsque vous vérifiez que votre script est appelé correctement, de façon à vous assurer que l'utilisateur utilise vos fonctions comme il faut.

Dans l'idéal, cette fonction ne devrait jamais être appelée dans la version finale du jeu.

Exemple :

function Elargir(int nouvelleLargeur) {
  if (nouvelleLargeur < 10)
    AbortGame("nouvelleLargeur doit être au moins de 10 !");
}
arrêtera le jeu si Elargir est appelée avec un paramètre inférieur à 10.

Voir Aussi : QuitGame


CallRoomScript

CallRoomScript (int valeur)
Appelle la fonction on_call de la pièce actuelle. Ceci est utile par exemple pour le parser de texte, lorsque vous voulez vérifier les phrases générales du jeu, et voir si la phrase est significative pour la pièce actuelle.

La fonction on_call sera appelée dans le script de la pièce actuelle, avec le paramètre valant valeur, que vous aurez passée. Ceci vous permet de différencier les différents appels, et vous permettre de ne pas utiliser de GlobalInt pour dire ce qu'il faut faire.

Si la pièce actuelle n'a pas de fonction on_call, il ne se passera rien. Aucun message d'erreur de n'affichera.

Vous devez placer la fonction on_call dans le script de la pièce (bouton "Edit Script" dans le paneau de réglages de la pièce), de la même façon que vous le faîtes pour dialog_request dans le script global :

function on_call (int valeur) {
  if (valeur == 1) {
    // Vérification texte entré
    if (Parser.Said("prendre Pomme"))
      Display("Non, ne touchons pas à l'arbre.");
  }
}
La fonction on_call n'est pas appelée immédiatement, la machine suit plutôt son cours, et exécutera probablement le code à la prochaine séquence d'exécution, donc vous ne pouvez pas vous servir de cette fonction pour définir immédiatement des valeurs.

Une fois que la fonction on_call a été exécutée (ou non s'il n'en existe pas), la variable game.roomscript_finished vaudra 1, vous pourrez donc la tester dans votre script repeatedly_execute si vous devez faire autre chose à la suite.

Voir Aussi : Documentation sur le parser de texte


ClaimEvent

ClaimEvent()
Cette commande s'utilise en dans les fonctions des scripts de pièce ou de modèle on_key_press et on_mouse_click, et prévient AGS de ne pas appeler le script global à la suite.

Par exemple, si le script de votre pièce réagit lorsque le joueur appuie sur la barre espace, et que vous ne voulez pas que le on_key_press du script global réagisse, alors utilisez cette commande.

Ceci est utile si vous faire par exemple un mini-jeu dans la pièce, et que vous voulez utiliser des touches qui ont ordinairement une autre fonction.

L'ordre normal dans lequel les scripts sont appelés pour on_key_press et on_mouse_click est le suivant :

Si l'un de ces scripts appelle ClaimEvent, alors la chaîne rompera à ce point.

Exemple :

if (keycode == ' ') {
  Display("Vous avez appuyé sur la barre espace dans cette pièce !");
  ClaimEvent();
}
empêche le on_key_press du script global d'être exécuté si le joueur appuie sur la barre espace.

Voir Aussi : Script events


Debug

Debug (int command, int data)
Cette fonction gère tous les services de debug du moteur. Exécute différentes tâches, selon la valeur du paramètre COMMAND. Si le debug mode est désactivé, alors cette fonction n'a pas d'effet. Cet aspect vous permet de distribuer votre jeu sans toucher à votre script, il vous suffit juste de désactiver le debug mod dans l'Editeur des Réglages généraux (General Settings).

Le paramètre DATA dépend de command - passez 0 s'il n'est pas utile. Toutes les valeurs possibles pour le paramètre COMMAND sont listées ici, avec leur description :

0   Tout l'inventaire - Donne au personnage joueur un élément de chaque
    objet de l'inventaire. Ceci est pratique pour tester, lorsque vous
    avez besoin de ramasser un objet chaque fois que vous testez une partie
    du jeu où celui-ci est nécessaire.
1   Affiche la version de l'interpréteur - la machine affichera son numéro
    de version et sa date de création.
2   Zones de déplacement - colore les parties de l'écran où le joueur peut
    se rendre depuis sa position actuelle. Ceci est utile si vous pensez que
    le path-finder ne fonctionne pas correctement. Les zones jaunes sont celles
    où le joueur peut marcher. Les bleues sont celles définies comme déplacement
    libre dans l'Editeur de Pièce, mais auxquelles le joueur ne peut pas accéder
    depuis sa position actuelle. Les parties de l'écran qui restent inchangées
    sont les zones dans lesquelles le personnage ne peut pas se déplacer.
3   Téléportation - affiche une boîte de dialogue vous demandant dans quelle
    pièce vous voulez vous rendre, et appelle ensuite ChangeRoom pour vous y
    emmener. Utile pour passer des parties du jeu ou aller à un point spécifique
    pour tester quelque chose.
4   Afficher FPS - active/désactive l'affichage du nombre d' images par seconde
    à l'écran. Donnez la valeur 1 à DATA pour l'afficher, 0 pour l'effacer.
Voir Aussi : Debugging features


DeleteSaveSlot

DeleteSaveSlot (int slot)
Supprime la sauvegarde contenue dans l'emplacement numéro SLOT.

NOTE : Si vous spécifiez un des emplacements standards (1 à 20), alors AGS réarrangera les autres sauvegardes de façon à former une suite d'emplacements complète. Vous devrez rafraîchir toute liste de sauvegardes après avoir appelé cette fonction.

Exemple :

DeleteSaveSlot (130);
supprime l'emplacement de sauvegarde 130 (qui aura été sauvé au préalable).

Voir Aussi : RestoreGameSlot, SaveGameSlot


DisableInterface

DisableInterface ()
Désactive l'interface du joueur. Ceci fonctionne de la même façon que lorsqu'une animation la désactive : le mode du curseur est celui d'attente, et les clics de la souris ne seront pas envoyés à la fonction "on_mouse_click". Les boutons de GUI seront également désactivés.

NOTE : AGS retient le nombre de fois que DisableInterface est appelée. Chaque appel de DisableInterface doit être suivi d'un EnableInterface plus loin dans le jeu, sinon le joueur ne pourra plus accéder à l'interface.

Exemple :

DisableInterface();
désactivera l'interface du joueur.

Voir Aussi : EnableInterface, IsInterfaceEnabled


EnableInterface

EnableInterface ()
Réactive l'interface du joueur, qui avait été au préalable désactivée par la fonction DisableInterface. Chaque élément désactivé par cette fonction retourne à la normale.

Exemple :

EnableInterface();
réactivera l'interface du joueur.

Voir Aussi : DisableInterface, IsInterfaceEnabled


EndCutscene

EndCutscene()
Marque la fin d'une cutscene (cinématique). Si le joueur passe la cutscene, le jeu reprendra à partir de ce point. Cette fonction retourne 0 si le joueur a regardé la cutscene et 1 s'il l'a passée.

Voir Aussi : StartCutscene


GetGameOption

GetGameOption (option)
Retourne le réglage actuel d'une option du jeu, initialement définie dans le paneau de régalages généraux (Game Settings) de l'éditeur AGS.

OPTION détermine quelle option doit être considérée, et sa valeur est retournée.

Les valeurs possibles pour OPTION sont listées à SetGameOption.

Exemple :

if (GetGameOption (OPT_ANTIGLIDE) == 1) {
  Display("Le mode anti-glide est activé !");
}
vérifiera si l'option angi-glide est activée (retourne 1), auquel cas le message sera affiché, ou non (retourne 0). Voir Aussi : SetGameOption


GetGameParameter

GetGameParameter (paramerte, int data1, int data2, int data3)
Retourne la valeur des différentes propriétés assez rarement testées pour ne pas avoir leur propre commande de script.

Les valeurs possibles pour PARAMETRE sont listées ci-dessous. Les valeurs de data dépendent de paramètre voulu - si elles ne sont pas nécessaires, donnez leur simplement la valeur 0.

Paramètre Description
GP_SPRITEWIDTH Retourne la largeur de la sprite dans l'emplacement DATA1
GP_SPRITEHEIGHT Retourne la hauteur de la sprite dans l'emplacement DATA1
GP_NUMLOOPS Retourne le nombre de séquences dans la vue DATA1
GP_NUMFRAMES Retourne le nombre d'images dans la séquence DATA2 de la vue DATA1
GP_ISRUNNEXTLOOP Retourne 1 si la séquence DATA2 de la vue DATA1 a l'option "Run next loop after this" activée
GP_FRAMESPEED Retourne le délai propre à l'image DATA3 dans la séquence DATA2 de la vue DATA1
GP_FRAMEIMAGE Retourne le numéro de la sprite de l'image DATA3 dans la séquence DATA2 de la vue DATA1
GP_FRAMESOUND Retourne le son associé à l'image DATA3 dans la séquence DATA2 de la vue DATA1
GP_ISFRAMEFLIPPED Retourne 1 si l'image DATA3 dans la séquence DATA2 de la vue DATA1 est retournée, sinon 0
GP_NUMGUIS Retourne le nombre de GUI dans le jeu
GP_NUMOBJECTS Retourne le nombre d'objets dans la pièce actuelle
GP_NUMCHARACTERS Retourne le nombre de personnages dans le jeu
GP_NUMINVITEMS Retourne le nombre d'objets d'inventaire dans le jeu

Exemple :

if (GetGameParameter(GP_SPRITEWIDTH, 10, 0, 0) > 20) {
  Display("La sprite 10 a une largeur supérieure à 20 pixels!");
}

GetGameSpeed

GetGameSpeed ()
Retourne la vitesse actuelle du jeu (nombre de cycles par seconde).

Exemple :

if (GetGameSpeed() > 40) {
  SetGameSpeed(40);
}
gardera toujours la vitesse du jeu à 40 cycles par seconde (au cas où l'utilisateur l'a augmentée).

Voir Aussi : SetGameSpeed


GetGlobalInt

GetGlobalInt (int index)
Retourne la valeur de la variable globale INDEX, de type entier.

Exemple :

if (GetGlobalInt(20) == 1) {
  // votre code
}
exécutera votre code seulement si la variable globale de type entier numéro 20 vaut 1.

Voir Aussi : SetGlobalInt, Game.GlobalStrings


GetGraphicalVariable

GetGraphicalVariable (string nom_variable);
Retourne la valeur de la variable NOM_VARIABLE de l'éditeur d'interaction. Ceci vous permet d'accéder aux valeurs que vous avez données aux variables propres à l'éditeur d'interaction. (Games - Set variable value)

Exemple :

if (GetGraphicalVariable("rocher enlevé")==1)
   { code ici }
n'exécutera le code que si la variable d'interaction "rocher enlevé" vaut 1.

Voir Aussi : GetGlobalInt, SetGraphicalVariable


GetLocationName

(Anciennement fonction globale GetLocationName, désormais obsolète)

static String Game.GetLocationName(int x, int y)
Retourne le nom de ce qui se trouve à l'écran aux coordonnées (X,Y). Ceci vous permet de créer une ligne de statut "Regarder xxx" à la Lucasarts lorsque le joueur déplace le curseur sur un élément.

NOTE : Contrairement à ProcessClick, cette fonction considère ce que le joueur voit à l'écran - ainsi, si les cooronnées correspondent à un GUI, une ligne vide est retournée.

NOTE : Les coordonnées sont celles de l'ECRAN, et PAS de la PIECE. Cela signifie que dans une pièce plus large que l'écran, les coordonnées que vous passez sont relatives à la position actuelle de l'écran, et NON sur les coordonnées de la pièce. Cette fonction serait donc à utiliser avec les variables de la position du curseur de la souris.

Exemple :

String alecran = Game.GetLocationName(mouse.x, mouse.y);
retournera le nom de tout ce que la souris survole dans une variable string.

Voir Aussi : Hotspot.Name, InventoryItem.Name, GetLocationType, Object.Name


GetLocationType

GetLocationType(int x, int y)
Retourne le type de l'élément qui se trouve aux coordonnées (X,Y) ; si c'est un personnage, un objet, un hotspot ou rien de tout cela. Ceci peut être utile si vous voulez gérer différemment les clics en fonction de ce sur quoi le joueur clique.

NOTE : Les coordonnées sont celles de l'écran, PAS de la pièce. Voyez la description de GetLocationName pour plus d'informations.

La valeur retournée peut être :

eLocationNothing    rien, un GUI ou l'inventaire
eLocationHotspot    un hotspot
eLocationCharacter  un personnage
eLocationObject     un objet
Exemple :
if (GetLocationType(mouse.x,mouse.y) == eLocationCharacter)
    mouse.Mode = eModeTalk;
utilisera le mode dialogue pour le curseur si celui-ci est sur un personnage.

Voir Aussi : Hotspot.GetAtScreenXY, Game.GetLocationName, Object.GetAtScreenXY


GetSaveSlotDescription

(Anciennement fonction globale GetSaveSlotDescription, désormais obsolète)

static String Game.GetSaveSlotDescription(int slot)
Retourne le texte de description de l'emplacement de sauvegarde numéro SLOT.

Si l'emplacement correspondant à ce numéro n'existe pas, retourne null.

Exemple :

String description = Game.GetSaveSlotDescription(10);
stockera la description de l'emplacement de sauvegarde 10 dans la variable.

Voir Aussi : DynamicSprite.CreateFromSaveGame, RestoreGameSlot, SaveGameSlot


GetTextHeight

GetTextHeight(string texte, int font, int largeur)
Calcule la hauteur à l'écran que prendra l'affichage de TEXTE en utilisant la police FONT dans une largeur de LARGEUR pixels.

Ceci vous permet de savoir la taille qu'un message affiché avec une commande comme RawPrintMessageWrapped occupera. LARGEUR est la largeur de la zone dans laquelle le texte sera affiché.

La hauteur est retournée dans la résolution normale de 320 pixels, donc elle peut être utilisée avec des commandes d'affichage à l'écran.

Exemple :

int height = GetTextHeight("Le message sur le GUI !", 0, 100);
gLigneDuBas.SetPosition(0, 200 - height);
déplacera le GUI LIGNEDUBAS de façon à ce qu'il puisse afficher le texte à l'écran.

Voir Aussi : GetTextWidth, RawPrint


GetTextWidth

GetTextWidth(string texte, int font)
Retourne la largeur qu'occupera l'affichage à l'écran de TEXTE dans la police FONT sur une seule ligne.

Ceci peut être utile si vous avez besoin de centrer ou d'aligner à droite du texte, par exemple lorsque vous utilisez des commandes d'affichage "Raw".

La largeur est retournée dans la résolution normale de 320 pixels, donc elle peut être utilisée avec des commandes d'affichage à l'écran.

Exemple :

int largeur = GetTextWidth("Salut !", 0);
RawPrint(160 - (largeur / 2), 100, "Salut !");
affichera "Salut !" au milieu de l'arrière-plan de la scène.

Voir Aussi : GetTextHeight, RawPrint


GetTranslation

GetTranslation (string original)
Retourne la traduction du texte contenu dans la string. Normalement, vous n'aurez pas besoin de cette fonction puisque le jeu traduit la plupart des choses pour vous. Cependant, si vous utilisez une InputBox ou une autre forme d'input, et que vous voulez comparer ce que l'utilisateur a entré à une string particulière, la traduction ne sera pas automatique. Donc, vous devriez procéder ainsi :

Exemple :

String buffer = Game.InputBox("Entrez le mot de passe :");
if (buffer.CompareTo(GetTranslation("secret")) == 0) {
  // correspond à la traduction actuelle de "secret"
}
S'il n'y a pas de traduction pour la string spécifiée, elle se trouvera inchangée, cette fonction est donc sans danger.

Voir Aussi : IsTranslationAvailable


GiveScore

GiveScore (int score)
Ajoute SCORE au score du joueur. Préférez cette méthode à une modification directe du paramètre, puisqu'elle jouera le son associé à un changement de score, mettra à jour toute ligne de statut l'affichant et appellera la fonction on_event en passant le paramètre GOT_SCORE.

SCORE peut être une valeur négative, auquel cas le son associé au changement de score N'est PAS joué.

Exemple :

GiveScore(5);
ajoutera 5 points au joueur.


InputBox

(Anciennement fonction globale InputBox, désormais obsolète)

static String Game.InputBox(string prompt)
Affiche une fenêtre demandant à l'utilisateur de taper du texte, utilisant PROMPT comme texte pour la fenêtre. Tout ce que l'utilisateur entrera sera retourné par cette fonction.

Cette commande affiche une fenêtre input très basique, utile principalement pour débuguer. La fenêtre étant assez petite, seules de courts textes d'environ 20 caractères pourront être entrés.

La façon recommandée pour récupérer ce que l'utilisateur entre est de créer votre propre GUI avec une boîte de texte, ce qui vous permet de personnaliser entièrement l'aspet de la fenêtre.

TIP : Si vous ajoutez un caractère '!' au début de PROMPT, alors un bouton Annuler (Cancel) sera disponible dans la fenêtre d'input. Si le joueur appuie sur ce bouton Annuler (ou sur la touche Echap), une ligne vide sera retournée.

Exemple :

String nom = Game.InputBox("!Quel est votre nom ?");
demandera son nom à l'utilisateur et le stockera dans la string NOM. S'il appuie sur Annuler, la string NOM sera vide.

Voir Aussi : String.AsInt


InventoryScreen

InventoryScreen ()
Affiche la fenêtre d'inventaire de style Sierra qui permet au joueur de sélectionner et de manipuler des objets d'inventaire. Si le joueur en sélectionne un, le mode du curseur deviendra inventory-use (mode 4), et player.ActiveInventory correspondra à l'objet d'inventaire sélectionné.

NOTE : Cette fonction n'affiche pas immédiatement la fenêtre ; la fenêtre s'affichera en fait une fois que le script courant a fini son exécution.

NOTE : Si le joueur n'a pas d'objet d'inventaire, le message global 996 sera affiché.


IsGamePaused

IsGamePaused ()
Retourne 1 si le jeu est actuellement en pause, sinon 0. Le jeu est en pause lorsque la barre d'icônes est affiché, ou qu'une interface "script-only" a été affichée à l'aide de GUI.Visible=true. Lorsque le jeu est en pause, aucune animation ou autre changement ne peut intervenir.

Exemple :

if (IsGamePaused() == 1) UnPauseGame();
reprendra le jeu s'il était en pause.

Voir Aussi : GUI.Visible


IsInterfaceEnabled

IsInterfaceEnabled()
Retourne 1 si l'interface du joueur est actuellement disponible, sinon 0. L'interface de l'utilisateur est désactivée lorsque le curseur est en mode d'attente - c'est-à-dire lorsque le personnage est en déplacement bloquant, ou autre action bloquante. (Blocking)

Exemple :

if (IsInterfaceEnabled())
    DisableInterface();
désactivera l'interface d'utilisateur si elle était activée.

Voir Aussi : DisableInterface, EnableInterface


IsInteractionAvailable

IsInteractionAvailable (int x, int y, int mode)
Vérifie si une interaction serait déclenchée lors d'un clic à l'écran aux coordonnées (X,Y) avec un mode de curseur MODE.

Cette fonction est très similaire à ProcessClick, excepté qu'au lieu de traiter des interactions elles-mêmes, elle retourne simplement 1 si quelque chose se produisait, ou 0 si unhandled_event était appelée.

Ceci est utile pour activer des options dans un GUI basé sur des verbes, par exemple.

Exemple :

if (IsInteractionAvailable(mouse.x,mouse.y, eModeLook) == 0)
  Display("Regarder ici n'aurait aucun effet.");
Voir Aussi : InventoryItem.IsInteractionAvailable, ProcessClick


IsKeyPressed

IsKeyPressed (int numerotouche)
Vérifie si la touche du clavier spécifiée est actuellement pressée ou non. Vous pouvez utiliser ceci pour déplacer un objet lorsque le joueur appuie sur la flèche de bas, par exemple.

NUMERCOTOUCHE est une des valeurs ASCII, respectant certaines limites : puisque la fonction vérifie la pression ou non de la touche, vous NE POUVEZ PAS passer des valeurs correspondant à Ctrl+(A-Z) ou Alt+(A-Z) (puisque ce sont des combinaisons de touches). Vous pouvez, cependant, utiliser des valeurs particulières listées au bas de la page dédiée.

Retourne 1 si la touche est actuellement pressée, sinon 0

NOTE : Le clavier numérique a des valeurs variables entre IsKeyPressed et on_key_press. Avec IsKeyPressed, le clavier numérique utilise toujours des valeurs entre 370 et 381. on_key_press, cependant, considère des valeurs différentes si Verr Num (Num Lock) est activé puisque les touches pressées sont interprétées comme les touches de chiffres plutôt que comme les touches de flèches.

Exemple :

if (IsKeyPressed(372) == 1)
  character[EGO].Walk(character[EGO].x, character[EGO].y+3);
déplacera le personnage EGO de 3 pixels vers le haut lorsque la touche haut sera pressée.

Voir Aussi : Mouse.IsButtonDown


IsTimerExpired

IsTimerExpired (int id_timer)
Vérifie si le timer ID_TIMER est dépassé. Si le délai défini par SetTimer est expiré, retourne 1. Sinon, retourne 0.

Notez que cette fonction ne retournera 1 qu'une seule fois - après cela, le statut du timer passe à OFF ce qui fait qu'il retournera toujours 0 jusqu'à ce qu'il soit redémarré.

Exemple :

if (IsTimerExpired(1) == 1) {
  Display("Timer 1 expiré");
}
affichera un message lorsque le timer 1 aura expiré.

Voir Aussi : SetTimer


IsTranslationAvailable

IsTranslationAvailable ()
Informe si le joueur utilise une traduction du jeu ou non.

Retourne 1 si une traduction est utilisée, sinon 0.

Voir Aussi : GetTranslation, Game.TranslationFilename


MoveCharacterToHotspot

Cette fonction est désormais obsolète. Utilisez Character.Walk à la place.

MoveCharacterToHotspot (CHARID, int hotspot)
Déplace le personnage CHARID depuis sa position actuelle jusqu'à l'endroit "walk-to" du hotspot spécifié. Si le hotspot n'a pas d'endroit "walk-to", rien n'arrivera.

Ceci est un appel bloquant (blocking) - le contrôle n'est rendu au script qu'une fois que le personnage a atteint sa destination.

Exemple :

MoveCharacterToHotspot(EGO,6);
déplacera le personnage EGO jusqu'au point "walk-to" du hotspot numéro 6.

Voir Aussi : Hotspot.WalkToX, Hotspot.WalkToY, Character.Walk, MoveCharacterToObject


MoveCharacterToObject

Cette fonction est désormais obsolète. Utilisez Character.Walk à la place.

MoveCharacterToObject (CHARID, int objet)
Déplace le personnage CHARID depuis sa position actuelle jusqu'à l'objet OBJET. Ceci est utile si par exemple vous voulez que le personnage ramasse un objet. Ceci est un appel bloquant (blocking) - le contrôle n'est rendu au script qu'une fois que le personnage a atteint sa destination.

Exemple :

MoveCharacterToObject (EGO, 0);
object[0].Visible = false;
Déplacera le personnage EGO jusqu'à l'objet numéro 0, puis effacera l'objet 0.

Voir Aussi : Character.Walk, MoveCharacterToHotspot


PauseGame

PauseGame ()
Stoppe le processus de la machine, les animations et déplacements du personnage, et tout autre aspect. Ceci a le même effet sur le jeu que lorsqu'une interface script-only s'affiche. Le processus ne reprendra que lorsque la fonction UnPauseGame sera appelée.

Exemple :

if (IsKeyPressed(32)==1) PauseGame();
mettra le jeu en pause si le joueur appuie sur la barre d'espace.

Voir Aussi : UnPauseGame


ProcessClick

ProcessClick (int x, int y, CursorMode)
Simule un clic de la souris aux coordonnées (X,Y) de l'écran, dans le mode de curseur spécifié. Toute conséquence prévue sera exécutée. Par exemple,
ProcessClick (100, 50, eModeLook);
simulera un clic de la souris aux coordonnées (100,50) dans le mode Regarder.

NOTE : Cette fonction ignore les interfaces qui se trouvent au point spécifié. C'est-à-dire qu si aux coordonnées que vous avez passées se trouve un bouton d'interface, le jeu se comportera comme si on avait cliqué sous l'interace, à l'écran.

Les modes de curseur disponibles sont ceux définis dans la partie Curseurs de l'éditeur (précédés de eMode). En général, ce sont eModeWalkto, eModeLook, etc.

Exemple :

ProcessClick(mouse.x,mouse.y, eModeLook);
simulera un clic dans mode de curseur "Regarder" à l'endroit où le curseur se trouve.

Voir Aussi : IsInteractionAvailable, Hotspot.RunInteraction


QuitGame

QuitGame(int prevenir)
Quitte le jeu et retourne au système d'exploitation (OS).

Si PREVENIR vaut 0, cela quittera immédiatement. Si PREVENIR ne vaut pas 0, cela affichera une fenêtre de message demandant à l'utilisateur s'il est sûr de vouloir quitter.

Exemple :

QuitGame(0);
quittera le jeu sans demander au joueur de confirmer.

Voir Aussi : AbortGame


Random

Random (int max)
Retourne un nombre aléatoire entre 0 et MAX. Ceci peut être utile pour divers effets dans votre jeu.

NOTE : L'intervalle de retour est inclusif - c'est-à-dire que si vous appelez Random(3); alors la valeur de retour peut être 0, 1, 2 ou 3.

Exemple :

int alea=Random(2);
if (alea==0) character[EGO].ChangeRoom(1);
else if (alea==1) character[EGO].ChangeRoom(2);
else character[EGO].ChangeRoom(3);
Changera la pièce actuelle pour la pièce 1, 2 ou 3 selon le résultat aléatoire.


RestartGame

RestartGame ()
Redémarre le jeu depuis le début.

Exemple :

if (IsKeyPressed(365) == 1) RestartGame(); 
redémarrera le jeu si le joueur appuie sur la touche F7.


RestoreGameDialog

RestoreGameDialog ()
Affiche le dialogue de chargement de jeu, où le joueur peut sélectionner une partie précédemment sauvegardée pour la restaurer.

Le dialogue n'est pas affiché immédiatement, il s'affichera en fait une fois que le script a fini son exécution.

Exemple :

if (IsKeyPressed(363)=1 RestoreGameDialog();
affichera le dialogue de chargement si le joueur appuie sur la touche F5.

Voir Aussi : RestoreGameSlot, SaveGameDialog


RestoreGameSlot

RestoreGameSlot (int slot)
Charge la position de la partie sauvegardée dans l'emplacement numéro SLOT. Vous voudrez utiliser ces fonctions si par exemple vous voulez que le joueur n'utilise qu'une seule partie sauvegardée plutôt que les 20 habituelles. Si l'emplacement correspondant au numéro est vide, un message d'erreur avertira le joueur mais le jeu continuera. Pour éviter toute erreur, utilisez la fonction GetSlaveSlotDescription pour voir si l'emplacement contient une partie avant de la charger.

NOTE : La partie ne sera pas chargée immédiatement mais seulement lorsque le script aura terminé exécution.

Exemple :

RestoreGameSlot(30);
chargera la partie de l'emplacement 30 si celui-ci n'est pas vide.

Voir Aussi : Game.GetSaveSlotDescription, RestoreGameDialog, SaveGameSlot


RunAGSGame

RunAGSGame (string nomfichier, int mode, int data)
Quitte la partie actuelle, et lance NOMFICHIER à la place. NOMFICHIER doit être un jeu AGS exécutable ou un fichier AC2GAME.AGS, et doit se trouver dans le répertoire courant.

MODE définit la façon dont vous voulez lancer le jeu. Pour le moment les valeurs peuvent être :

0   La partie actuelle est totalement quittée, et le nouveau jeu est exécuté comme s'il avait
    été lancé séparemment.
1   Les valeurs GlobalInt sont conservées, ne sont pas remises à 0 pour le nouveau jeu.
DATA vous permet de passer un entier au nouveau jeu. La valeur que vous passez ici sera accessible par le jeu chargé à l'aide de la variable game.previous_game_data .

Les emplacements de sauvegarde seront partagés par les deux jeux, et si vous chargez une partie sauvegardée dans l'autre jeu, elle sera automatiquement chargée.

Gardez à l'esprit que puisque les jeux doivent être dans le même dossier, il partageront aussi les fichiers music.vox, speech.vox et autres. C'est une limite d'utilisation pour cette commande.

NOTE : Le jeu que vous exécutez sera lancé dans la même résolution et profondeur des couleurs que le jeu actuel ; si vous ne considérez pas la profondeur des couleurs, de mauvaises surprises pourraient se présenter.

NOTE: Assurez-vous que le jeu que vous voulez lancer a un nom de fichier de 8 caractères ou moins, ou cette commande échouera dans la machine DOS.

NOTE: Le jeu que vous voulez lancer doit avoir été créé avec la même version d'AGS que celui à partir duquel il est lancé. (version 2.xy - X doit être le même pour les deux jeux).

Exemple :

RunAGSGame ("MonJeu.exe", 0, 51);
lancera le jeu MonJeu, en lui passant la valeur 51.


SaveGameDialog

SaveGameDialog ()
Affiche le dialogue de sauvegarde, où le joueur peut sauvegarder sa progression dans la partie actuelle. S'il choisissent de sauvegarder, alors la position dans le jeu sera sauvée.

NOTE: Le dialogue ne s'affichera pas directement ; il ne sera montré que lorsque le script aura terminé son exécution.

Exemple :

if (keycode == 361) SaveGameDialog();
affichera le dialogue de sauvegarde si le joueur appuie sur la touche F3.

Voir Aussi : RestoreGameDialog, SaveGameSlot


SaveGameSlot

SaveGameSlot (int slot, string description)
Sauvegarde la progression de la partie actuelle dans l'emplacement spécifié par SLOT, en utilisant DESCRIPTION comme texte de description pour la sauvegarde. Soyez prudent en utilisant cette fonction, car vous pourriez écraser une des parties sauvées par le joueur par mégarde.

La fonction SaveGameDialog utilise les emplacements numérotés de 1 à 20, donc si vous ne voulez pas pas interférer avec les sauvegardes du joueur, vous devriez utiliser des emplacements supérieurs à 100.

NOTE : La partie ne sera pas sauvegardée immédiatement ; la fonction attendra que le script ait fini son exécution avant de sauvegarder.

Exemple :

SaveGameSlot(30, "Sauver partie");
sauvera la progression de la partie actuelle dans l'emplacement 30 avec la description "Sauver partie".

Voir Aussi : DeleteSaveSlot, RestoreGameSlot, SaveGameDialog


SaveScreenShot

SaveScreenShot (string nomfichier)
Prend une capture d'écran et la sauve sur le disque. Le NOMFICHIER doit se terminer par ".BMP" ou ".PCX", qui sont les types de fichiers qui peuvent être sauvés. Retourne 1 si la capture a été correctement sauvée, ou 0 si une extension de fichier invalide a été spécifiée.

Exemple :

String input = Game.InputBox("Entrez le nom du fichier :");
input = input.Append(".pcx");
SaveScreenShot(input);
demandera au joueur un nom de fichier et sauvera la capture d'écran dans le fichier entré par le joueur.

Voir Aussi : DynamicSprite.SaveToFile


SetAmbientTint

SetAmbientTint(int rouge, int vert, int bleu, int saturation, int luminosite)
Teinte tous les objets et personnages à l'écran en (ROUGE, VERT, BLEU) à une saturation de SATURATION pour-cent.

Ceci vous permet d'appliquer une teinte globale à tous les éléments à l'écran. Les paramètres ROUGE, VERT et BLEU vont de 0 à 255, et définissent la couleur de teinte.

Le paramètre SATURATION définit le taux d'application de la teinte, et va de 0 à 100. Une saturation de 100 recolorisera entièrement les sprites dans la couleur spécifiée, et une saturation de 1 leur donnera une teinte très faible dans la couleur spécifiée.

Le paramètre LUMONISITE vous permet d'ajuster la brillante des sprites du même coup. Il va de 0 à 100. Passer 100 dessinera les sprites à une brillance normale. Des nombres inférieurs assombrira les images en conséquence, jusqu'à 0 qui les dessinera entièrement noires.

La teinte appliquée par cette fonction est globale. Pour l'annuler, appeler cette commande une nouvelle fois mais en spécifiant une saturation de 0.

NOTE : Cette fonction marche uniquement avec des jeux hautes-couleurs et des sprites hautes-couleurs.

NOTE : Cette fonction remplace tout niveau de luminosité ou de teinte propre à une région à l'écran.

Exemple :

SetAmbientTint(0, 0, 250, 30, 100);
teintera tout ce qui se trouve à l'écran dans une nuance de bleu.

Voir Aussi : RawDrawFrameTransparent, Character.Tint, Object.Tint


SetGameOption

SetGameOption (option, int valeur)
Change une des options du jeu, initialement définie dans le paneau des Réglages du Jeu de l'éditeur AGS (Game Settings).

OPTION spécifie quelle option doit être changée, et VALEUR est sa nouvelle valeur. Les valeurs pour OPTIONS peuvent être :

Option Valeurs
OPT_WALKONLOOK Marcher jusqu'au hotspot en mode Regarder (0 ou 1)
OPT_DIALOGOPTIONSGUI Options de dialogue pour GUI (0 = aucune, sinon nom/numéro du GUI)
OPT_ANTIGLIDE Mode Anti-glide (0 ou 1)
OPT_DIALOGOPTIONSGAP Pixels entre les choix des dialogues (0 = aucun, sinon nombre de pixels)
OPT_WHENGUIDISABLED Lorsque le GUI est désactivé, 0 = grisé, 1 = noir, 2 = inchangé, 3 = non-affiché
OPT_ALWAYSSPEECH Toujours affiché le texte comme du discours (0 ou 1)
OPT_PIXELPERFECT Détection des clics au pixel près (0 ou 1)
OPT_NOWALKMODE Ne pas déplacer automatiquement le personnage en mode Marche (0 ou 1)
OPT_FIXEDINVCURSOR Ne pas utiliser les icônes d'inventaire comme curseurs (0 ou 1)
OPT_DONTLOSEINV Ne pas perdre automatiquement les objets de l'inventaire (0 ou 1)
OPT_TURNBEFOREWALK Les personnages tournent avant de commencer à marcher (0 ou 1)
OPT_HANDLEINVCLICKS Gérer les clics sur l'inventaire dans le script (0 ou 1)
OPT_MOUSEWHEEL Activer la gestion de la molette de la souris (0 ou 1)
OPT_DIALOGNUMBERED Numéroter les choix des dialogues (0 ou 1)
OPT_DIALOGUPWARDS Les choix des dialogues surlignent le GUI (0 ou 1)
OPT_CROSSFADEMUSIC Fondre les musiques (0 = non, 1 = lent, 2 = moins lent, 3 = moyen, 4 = rapide)
OPT_ANTIALIASFONTS Rendu anti-alias pour les polices TTF (0 ou 1)
OPT_THOUGHTGUI Penser utilise des bulles GUI (nom/numéro du GUI) Thought uses bubble GUI (GUI name/number)
OPT_TURNWHENFACING Les personnages se tournent en direction (0 ou 1)
OPT_LIPSYNCTEXT Synchronisation des lèvres activée ou non (1 ou 0)
OPT_RIGHTTOLEFT Ecriture du texte de droite à gauche (0 ou 1)
OPT_MULTIPLEINV Possibilité d'afficher plusieurs inventaires (0 ou 1)
OPT_SAVEGAMESCREENSHOTS Sauver les captures d'écran dans les parties sauvegardées (0 ou 1)
OPT_PORTRAITPOSITION Côté du portrait dans les dialogues (0 = gauche, 1 = droite, 2 = alterné, 3 = xpos)

Les réglages du jeu qui ne sont pas listés ici ont soit une commande séparée pour les changer (comme SetSpeechStyle), ou ne peuvent simplement pas être changés lorsque le jeu est lancé (comme Letterbox Mode).

Cette commande retourne l'ancienne valeur du réglage.

Exemple :

SetGameOption (OPT_PIXELPERFECT, 0);
désactivera la détection précise des clics.

Voir Aussi : GetGameOption, SetSpeechStyle, SetTextWindowGUI


SetGameSpeed

SetGameSpeed (int nouvelle_vitesse)
Définit la fréquence maximum d'images par seconde à NOUVELLE_VITESSE images par seconde, ou aussi près que possible de cette vitesse. La fréquence par défaut est de 40 fps, mais vous pouvez accélérer ou ralentir le jeu en utilisant cette fonction. Notez que cette vitesse est aussi la fréquence à laquelle les fonctions Repeatedly_Execute seront déclenchées.

La NOUVELLE_VITESSE doit valoir entre 10 et 1000. Si ce n'est pas le cas, la vitesse sera ajustée à 10 ou 1000. Notez que si vous définissez une vitesse que l'ordinateur de l'utilisateur ne supporte pas (par exemple, un 486 ne pourra pas supporter un fps de 80), alors le jeu ira aussi vite que possible.

NOTE : Puisque le curseur de la souris est rafraîchi à la fréquence du jeu, à de très basses vitesses, comme un fps de 10 à 20, la souris ne semblera pas répondre correctement.

NOTE : Si vous donnez la valeur 1 à la variable system.vsync, la vitesse du jeu sera limitée selon le taux de rafraîchissement de l'écran, et vous ne pourrez alors pas la définir à plus de 60-85 (en fonction du taux de rafraîchissemment de l'écran du joueur).

Exemple :

SetGameSpeed(80);
définira la vitesse du jeu à 80.

Voir Aussi : GetGameSpeed


SetGlobalInt

SetGlobalInt (int index, int valeur)
Définit la variable globale INDEX à VALEUR. Vous pouvez récupérer cette valeur depuis d'autres scripts en utilisant GetGlobalInt.

Il y a 500 variables globales disponibles, indexées de 0 à 499.

NOTE : Il est possible qu'il y ait des confusions à propos des global ints. Vous n'êtes absolument PAS obligés d'utiliser les global ints -- déclarer de simples variables "int" est bien plus pratique. Les variables globales sont ici dans le seul but de vous faciliter des échanges de valeurs entre les scripts sans avoir à utiliser les expressions d'importation et d'exportation.

Exemple :

SetGlobalInt(10,1);
définira la valeur de la variable globale entière 10 à 1.

Voir Aussi : GetGlobalInt


SetGraphicalVariable

SetGraphicalVariable(string nom_variable, int valeur);
Donnera la valeur VALEUR à la variable d'interaction NOM_VARIABLE. Ceci vous permet de changer les valeurs des variables définies dans la fenêtre d'interaction de l'éditeur.

Exemple :

SetGraphicalVariable("rocher enlevé", 1);
donnera la valeur 1 à la variable de l'éditeur d'interaction "rocher enlevé".

Voir Aussi : GetGraphicalVariable


SetMultitaskingMode

SetMultitaskingMode (int mode)
Vous permet de définir ce qui se passera quand l'utilisateur réduira votre jeu.

Si MODE vaut 0 (par défaut), alors si l'utilisateur utilise Alt+Tab sous votre jeu, ou clique sur une autre fenêtre, le jeu sera mis en pause et ne reprendra pas jusqu'à ce qu'il remette le jeu au premier plan.

Si MODE vaut 1, alors le jeu continuera de tourner en arrière-plan si l'utilisateur le réduit (utile si, par exemple, vous créez juste une sorte de lecteur de musiques avec AGS).

Notez que le mode 1 ne fonctionne pas avec certaines cartes graphiques en mode plein écran, vous ne devriez donc considérer que ceci ne fonctionne que lorsque votre jeu tourne en mode fenêtre.

Plateformes qui supportent le multitâche

Windows: Oui
MS-DOS: Non
Linux: Oui
MacOS: Oui

Exemple :

SetMultitaskingMode (1);
signifiera que le jeu devra continuer à tourner en arrière-plan.


SetNormalFont

SetNormalFont (int numero_font)
Change la police utilisée dans le jeu, excepté pour le discours. NUMERO_FONT doit être compris entre 0 et le nombre de polices que vous avez. Par défaut les seules options sont 0 et 1.

Exemple :

SetNormalFont(4);
changera la police normale pour la police numéro 4.

Voir Aussi : SetSpeechFont


SetRestartPoint

SetRestartPoint ()
Change le point de départ du jeu pour la position actuelle. Cela signifie qu'à partir de ce moment-là, si le joueur choisit de redémarrer le jeu, il recommencera à partir d'ici.

Cette fonction est utile si le point de départ par défaut ne fonctionne pas correctement dans votre jeu - utilisez cette fonction seulement pour le déplacer.


SetTextWindowGUI

SetTextWindowGUI (int gui)
Change le GUI utilisé comme fenêtre de texte pour le GUI spécifié. Ceci change le réglage "Fenêtres de texte utilisent GUI" dans l'éditeur.

Vous pouvez passer -1 en numéro de GUI pour réutiliser la fenêtre par défaut.

Exemple :

SetTextWindowGUI (4);
utilisera le GUI 4 pour afficher les fenêtres de texte à l'avenir.


SetTimer

SetTimer (int id_timer_id, int delai)
Lance le timer ID_TIMER - sera déclenché à chaque cycle du jeu (normalement 40 fois par seconde), jusqu'à la fin du DELAI, après quoi il sera arrêté. Vous pouvez vérifié si le timer est expiré en appelant la fonction IsTimerExpired.

Donnez la valeur 0 à DELAI pour désactiver le timer qui tourne actuellement.

Il y a 20 timers disponibles, ID_TIMER allant de 1 à 20.

Exemple :

SetTimer(1,1000); 
dira au timer 1 d'expirer après 1000 cycles de jeu.

Voir Aussi : IsTimerExpired


SkipUntilCharacterStops

SkipUntilCharacterStops(CHARID)
En jeu, saute la séquence de déplacement du personnage spécifié, et un script bloquant est alors exécuté, ou une boîte de message affichée.

Cette commande permet de reproduire la fonctionnalité dans les jeux comme The Longest Journey, où le joueur peut appuyer sur Echap pour que le personnage arrive directement à destination. Cela sert comme option manuelle, pour vous permettre de donner une vitesse de déplacement relativement lente au personnage principal, sans que le joueur s'impatiente pour autant en attendant que le personnage aille d'un point A à un point B.

Si le personnage spécifié n'est pas en déplacement lorsque cette fonction est appelée, rien ne se passe.

Exemple : (dans on_key_press)

if (keycode == 27) SkipUntilCharacterStops(EGO);
Ceci signifie que si le joueur appuie sur Echap, le jeu sautera le déplacement du personnage EGO pour reprendre ensuite, ou sera interrompu par une commande Display ou encore par une cutscene (cinématique) bloquante.

Voir Aussi : StartCutscene


StartCutscene

StartCutscene(CutsceneSkipType)
Marque le début d'une cutscene (cinématique). Une fois que le script a passé ce point, le joueur peut choisir de passer cette partie en appuyant sur une touche ou sur le bouton de la souris. Ceci est utile pour des choses comme des séquences d'introductions, que vous voulez que le joueur puisse passer puisqu'il les aura déjà vues.

CutsceneSkipType détermine comment la cutscene peut être passée :

eSkipESCOnly
  seulement en appuyant sur Echap
eSkipAnyKey
  en appuyant sur n'importe quelle touche
eSkipMouseClick
  en cliquant sur le bouton de la souris
eSkipAnyKeyOrMouseClick
  en appuyant soit sur une touche, soit sur le bouton de la souris
eSkipESCOrRightButton
  en appuyant sur Echap ou en faisant un clic droit
Vous devez également marqué la fin de la cutscene avec la commande EndCutscene.

Faîtes très attention à l'endroit où vous placez la command EndCutscene correspondante. Le script doit arriver à EndCutscene dans son ordre d'exécution normal pour que le saut puisse fonctionner - sinon, lorsque le joueur appuyera sur Echap, le jeu pourra planter.

Voir Aussi : EndCutscene, SkipUntilCharacterStops


UpdateInventory

UpdateInventory ()
Met à jour l'affichage de l'inventaire à l'écran. Si vous ajoutez ou enlevez un objet d'inventaire manuellement (c'est-à-dire en utilisant le tableau InventoryQuantity plutôt que les fonction AddInventory/LoseInventory), l'affichage ne sera pas automatiquement mis à jour. Dans ce cas appelez cette fonction après avoir opéré vos changements, pour mettre à jour ce qui sera affiché au joueur.

Notez qu'utiliser cette fonction redéfinira l'odre dans lequel les objets sont affichés dans l'inventaire, en celui qui a été créé dans l'éditeur.

Voir Aussi : Character.AddInventory, Character.LoseInventory, Character.InventoryQuantity


UnPauseGame

UnPauseGame ()
Reprend le jeu.

Exemple :

if (IsGamePaused() == 1)
    UnPauseGame();
reprendra le jeu s'il était en pause.

Voir Aussi : PauseGame


Wait

Wait (int temps)
Marque une pause dans l'exécution du script et laisse le jeu continuer durant TEMPS cycles de jeu. La norme est de 40 cycles/seconde (à moins que vous ne changiez ce paramètre avec SetGameSpeed), donc utiliser une valeur de 80 aura pour effet dattendre 2 secondes. Notez qu'aucun autre script ne peut être exécuté tant que la fonction Wait agit en fond.

Exemple :

character[EGO].Walk(120, 140, eBlock, eWalkableAreas);
Wait(80);
character[EGO].FaceLocation(1000,100);
déplacera le personnage EGO aux coordonnées (120,140), attendra qu'il y soit rendu puis attendra 2 secondes (80 cycles) pour enfin le tourner vers la droite.

Voir Aussi : WaitKey, WaitMouseKey


WaitKey

WaitKey (int temps)
Marque une pause dans l'exécution du script et laisse le jeu continuer jusqu'à ce que soit :

(a) TEMPS cycles de jeu se sont écoulés, soit

(b) le joueur appuie sur une touche

Retourne 0 si le temps s'est écoulé, ou 1 si le joueur a interrompu la pause.

Exemple :

WaitKey(200);
marquera une pause dans le script et attendra que 5 secondes soient passées ou bien que le joueur ait pressé une touche pour reprendre.

Voir Aussi : Wait, WaitMouseKey


WaitMouseKey

WaitMouseKey (int temps)
Marque une pause dans l'exécution du script et laisse le jeu continuer jusqu'à ce que soit :

(a) TEMPS cycles de jeu se sont écoulés, soit

(b) le joueur appuie sur une touche, soit

(c) le joueur clique avec la souris

Retourne 0 si le temps s'est écoulé, ou 1 si le joueur a interrompu la pause.

Exemple :

WaitMouseKey(200);
marquera une pause dans le script et attendra que 5 secondes soient passées ou bien que le joueur ait pressé une touche ou cliqué avec la souris pour reprendre.

Voir Aussi : Wait, WaitKey


GlobalMessages propriété

(Anciennement fonction globale GetMessageText, désormais obsolète)

readonly static String Game.GlobalMessages[int message]
Retourne le texte du message global spécifié. Le numéro du message est un des numéros de message global, allant de 500 à 999.

Si un numéro de message invalide est entré, null sera retourné. Sinon, le contenu du message sera retourné.

Exemple :

String message = Game.GlobalMessages[997];
Display("Le message global 997 dit : %s", message);
affichera le message global 997.


GlobalStrings propriété

(Anciennement GetGlobalString, désormais obsolète)
(Anciennement SetGlobalString, désormais obsolète)

static String Game.GlobalStrings[index]
Retourne/Définit la string globale index. Les strings globales vous permettent de partager aisément des variables strings entre les scripts. Il y a 50 strings globales disponibles, les valeurs de index allant de 0 à 49.

Exemple :

Game.GlobalStrings[15] = "Joe";
Display("La string globale 15 vaut maintenant : %s", Game.GlobalStrings[15]);
donnera la valeur "Joe" à la string globale 15.

Voir Aussi : GetGlobalInt, SetGlobalInt


TranslationFilename propriété

(Anciennement GetTranslationName, désormais obsolète)

readonly static String Game.TranslationFilename;
Retourne le nom du fichier de traduction actuel (sans l'extension ".tra"). Ceci peut être utile si vous voulez utiliser un graphisme différent à un endroit selon la traduction qui a cours.

Si aucune traduction n'est utilisée, une ligne vide est retournée.

Exemple :

if (Game.TranslationFilename == "Allemand") {
  Display("Vous utilisez une traduction allemande.");
}
Voir Aussi : IsTranslationAvailable