Fichiers et Répertoires

file_exists(filename);
Retourne si le fichier indiqué existe.
file_delete(filename);
Supprime le fichier filename.
file_rename(oldname, newname);
Renomme le fichier oldname en newname.
file_copy(filename, newname);
Copie le fichier filename dans un nouveau fichier de nom newname.
directory_exists(path);
Retourne si le répertoire indiqué existe.
directory_create(path);
Créé le répertoire path (avec le chemin complet) si ce dernier n'existe pas déjà.
get_directory(path);
Demande le nom d'un répertoire. path est le nom par défaut. Si l'utilisateur presse Cancel, une chaîne vide est retournée.
get_directory_alt(caption, root);
Une autre façon de renseigner le nom d'un répertoire. Caption est le titre à afficher. Root est la racine de l'arborescence du répertoire à afficher. Utilisez une chaîne vide pour afficher toute l'arborescence. Si l'utilisateur presse Cancel, une chaîne vide sera retournée.
open_file(file, soft);
Ouvre le fichier file avec le logiciel soft. L'argument soft est facultatif. Par défaut, le logiciel Notepad++ est utilisé pour ouvrir les fichiers .script (si le logiciel est installé), et le logiciel bloc note est utilisé pour tout autre type de fichier.
save_screenshot(name);
Enregistre en format .png un screenshot de l'écran portant le nom name_i.png. La fonction retourne 1 si le fichier a bien été généré.
file_move(file1, file2);
Déplace ou renomme le fichier file1 en file2.
directory_delete(directory);
Supprime le dossier directory.
find_files(directory);
Retourne une liste contenant tout les noms de fichiers présents dans le dossier directory.
find_directories(directory);
Retourne une liste contenant tout les noms de dossiers présents dans le dossier directory.
find_files_recursive(directory);
Retourne une liste contenant tout les noms de fichiers présents dans le dossier directory et ses sous-dossiers.
filename_name(filename);
Retourne le nom du fichier indiqué, avec l'extension mais sans le chemin.
filename_path(filename);
Retourne le chemin du nom de fichier indiqué, y compri le caractère backslash de fin de chemin.
filename_dir(filename);
Retourne le nom de répertoire du nom de fichier indiqué, ce qui normalement est identique au chemin sans le caractère backslash de fin de chemin.
filename_drive(filename);
Retourne des informations sur le lecteur où est enregistré le fichier de nom filename.
filename_ext(filename);
Retourne l'extension du nom de fichier indiqué, y compris le point séparateur.
filename_change_ext(filename, newext);
Retourne le nom de fichier indiqué, avec l'extension (incluant le point) avec ajout de la nouvelle extension newext. En utilisant une chaîne vide comme nouvelle extension, il vous est ainsi possible de supprimer l'extension.
dragfile_getname();
Retourne le nom complet du fichier venant d'être glissé sur la fenêtre du programe. La fonction retourne une chaîne vide si aucun fichier n'a été glissé. Cette fonction requiert la DLL DraggerDLL.

Texte

file_text_open_read(filename);
Ouvre en lecture le fichier de nom filename. La fonction retourne l'identifiant du fichier qui devra être ensuite utilisé dans les autres fonctions. Il est possible d'ouvrir jusqu'à 32 fichiers simultanément. N'oubliez pas de fermer les fichiers dès que vous n'en avez plus besoin.
file_text_open_write(filename);
Ouvre en écriture le fichier de nom filename, créant ce dernier s'il n'existe pas déjà. La fonction retourne l'identifiant du fichier qui devra ensuite être utilisé dans les autres fonctions.
file_text_open_append(filename);
Ouvre en mode ajout le fichier de nom filename, créant ce dernier s'il n'existe pas déjà. La fonction retourne d'identifiant du fichier qui devra ensuite être utilisé dans les autres fonctions.
file_text_close(id);
Ferme le fichier d'identifiant id.
file_text_write_string(id, str);
Ecrit la chaîne str dans le fichier d'identifiant id.
file_text_write_real(id, x);
Ecrit le nombre réel x dans le fichier d'identifiant id.
file_text_writeln(id);
Ecrit un caractère newline (passage à la ligne suivante) dans le fichier d'identifiant id.
file_text_read_string(id);
Lit une ligne dans le fichier d'identifiant id. La fonction retourne la chaîne lue.
file_text_read_real(id);
Lit un nombre réel dans le fichier d'identifiant id. La fonction retourne le nombre lu.
file_text_readln(id);
Saute le reste de la ligne courante du fichier d'identifiant id puis se place au début de la ligne suivante.
file_text_eof(id);
Indique si l'on a atteint la fin du fichier. La fonction retourne une valeur booléenne.

Les deux dernières fonctions remplacent toutes les autres, mais ne sont pas forcément utiles dans tout les contextes.

file_text_write(filename, str);
Ecrit la chaîne str dans le fichier de nom filename. Cette fonction est un équivalent simplifié des fonctions précédentes.
file_text_read(filename);
Retourne tout le contenu du fichier de nom filename sous forme de chaîne de caractères. Cette fonction est un équivalent simplifié des fonctions précédentes.

INI

La finalité des fichiers INI est de fournir aux programmes un mécanisme standard leur permettant de connaître les réglages les concernant.
Les fichiers INI comprennent des sections et chacune de ces sections comportent un certain nombre de couples de valeurs préfixées par un nom ou variable.
Par exemple, voici un fichier INI typique:

[Form]

Top=100

Left=100

Caption=The best game ever

[Game]

MaxScore=12324

Ce fichier comprend deux sections, la première nommée Form et la deuxième Game. La première section contient trois paires de valeurs. Les deux premières paires possèdent une valeur réelle alors que la troisième contient une valeur chaîne de caractères.
De tels fichiers INI sont faciles à créer et à modifier. Vous trouverez les fonction suivantes dans Script pour lire et modifier les fichiers INI.

ini_open(filename);
Ouvre le fichier INI de nom filename. le fichier INI doit être enregistré dans le même répertoire que le jeu.
ini_close();
Ferme le fichier INI actuellement ouvert.
ini_read_string(section, key, default);
Lit la chaîne de la clef key de la section section. Si la clef et/ou la section n'existent pas, la valeur default sera retournée.
ini_read_real(section, key, default);
Lit le nombre réel de la clef key de la section section. Si la clef et/ou la section n'existent pas, la valeur default sera retournée.
ini_write_string(section, key, value);
Ecrit la chaîne value dans la clef key de la section section.
ini_write_real(section, key, value);
Ecrit le nombre réel value dans la clef key de la section section.
ini_key_exists(section, key);
Indique si la clef key existe dans la section section.
ini_section_exists(section);
Indique si la section section existe.
ini_key_delete(section, key);
Supprime la clef key de la section section.
ini_section_delete(section);
Supprime la section section.

Save

Les fonctions save gèrent la sauvegarde de toutes les variables et autres informations de l'exécution du programme.
Elles ne sauvegardent cependant pas les surfaces, la position de lecture d'une musique, les ressources modifiées, le contenu des structures de données et les particules.
Ces sauvegardes sont assez lourdes et sauvegardent un surplus d'informations non nécessaire dans tout les contextes. Preférez l'utilisation des fonctions INI.

game_save(filename);
Sauvegarde le jeu dans un fichier avec le nom filename.
game_load(filename);
Charge le jeu dans un fichier avec le nom filename.

Binaire