Les scripts sont essentiellement des fonctions que vous écrivez vous-même sous la forme de petits fragments de code capables de résoudre des expressions, de renvoyer des valeurs ou tout ce que le langage permet. Fondamentalement, si vous avez un bloc de code que vous utilisez dans plus d'un endroit ou d'un objet, alors il vaut probablement mieux dans un script, car cela signifie que vous pouvez le changer une fois quand nécessaire et le changement sera "ramassé" par chaque objet qui a un appel au script. Ils peuvent également être très utiles d'un point de vue organisationnel, même si le code qu'ils contiennent n'est appelé qu'une seule fois par un seul objet, car il permet de fractionner des blocs de code plus grands en "morceaux" plus facilement gérés en points logiques.
Lorsque vous créez un script, les valeurs que vous choisissez de transmettre sont appelées arguments et vous voulez accéder à ces arguments - soit en utilisant l'action de script, soit en appelant le script en tant que fonction d'un programme ou d'un autre script. Ces arguments sont stockés dans les variables intégrées:
argument0, argument1, ..., etc... up to argument15
Il peut donc y avoir au plus 16 arguments transmis à un script lorsqu'il est appelé à partir du code en utilisant les variables d'argument, et lors de l'utilisation du argument0...15 Pour les variables d'un script, vous devez vous assurer que le script utilise tous les arguments fournis. Par exemple, si vous avez un script qui prend deux arguments et que vous n'en fournissez qu'un, vous obtiendrez une erreur pour ce script. Il en va de même si vous fournissez plus d'arguments que vous n'en avez besoin.
Cependant, vous pouvez fournir un nombre variable d'arguments à un script en utilisant le tableau d'arguments construit, et vous n'êtes pas limité à un maximum de 16 arguments soit en utilisant ce tableau, mais peut en avoir autant que vous le souhaitez (bien que, encore une fois, vous devez vous assurer que tous les arguments sont référencés dans le script):
argument[0 ... max_num]
Lorsque vous passez un nombre variable d'arguments en tant que tableau de valeurs, vous pouvez utiliser la fonction suivante:
Cela peut être utilisé pour savoir combien d'arguments ont été passés et adapter le script pour utiliser uniquement les arguments fournis.
Les scripts peuvent également renvoyer une valeur afin qu'ils puissent être utilisés dans des expressions. Pour cela, vous utiliserez le return déclaration:
return <expression>
Il convient de noter que l' exécution du script se termine à l'instruction return, ce qui signifie que tout code qui vient après que le retour a été appelé ne sera pas exécuté. Voici un petit exemple de script appelé "scr_sqr" qui calcule le carré de la valeur qui lui est transmise, et qui inclut l'erreur catching au cas où l'argument que ce soit passé n'est pas un nombre réel:
{
if !is_real(argument0)
{
return 0;
}
else
{
return (argument0 * argument0);
}
}
Pour appeler un script à l'intérieur d'un code, agissez de la même manière que lorsque vous appelez des fonctions, c'est-à-dire, écrivez le nom du script avec les valeurs d'argument entre parenthèses. Donc, le script ci-dessus serait appelé comme ceci:
if keyboard_check_pressed(vk_enter)
{
val = scr_sqr(amount);
}
Il est à noter que lors de l'écriture de vos propres scripts, ils peuvent également avoir certains commentaires de style JSDoc ajoutés de sorte que lorsque vous les utilisez dans votre code, ils apparaissent dans auto-complète avec leurs arguments et d'autres détails. vous pouvez en savoir plus à ce sujet dans la section Commentaires sur les scripts JSDoc pour plus d'informations. Notez en outre que lorsque vous tapez vos scripts dans l'éditeur de code, vous pouvez cliquer sur
ou utilisez le bouton du milieu de la souris
sur le nom du script pour l'ouvrir pour l'éditer directement.